FreeRADIUS Version 0.7.1, for host i686-pc-linux-gnu. Using MySQL for authentication and accounting.
I got the counter module set up and the proper entry in the radcheck table of the database, and started sending accounting packets to my RADIUS server. I noticed the following message from the log when I ran it with the -X option: modcall[accounting]: module "counter" returns noop Upon investigation, I determined that the NOOP was being returned from rlm_counter.c, lines 406 and 407. Lines 402-411 are included for context: /* * Check if we need to watch out for a specific service-type. If yes then check it */ if (data->service_type != NULL) { if ((proto_vp = pairfind(request->packet->vps, PW_SERVICE_TYPE)) == NULL) return RLM_MODULE_NOOP; if (proto_vp->lvalue != data->service_val) return RLM_MODULE_NOOP; } The second if (if proto_vp = pairfind ...) was returning true and RLM_MODULE_NOOP was being returned by the module. I printed out the value of data->service_type, and it was 'Framed-User'. When I commented out all of the above lines, the counter module began working and continues to work like a charm. My questions: 1. What does the section that I commented out do? 2. Will this adversely affect anything? 3. I assume there should be a better way to make this work - can anyone tell me why it wouldn't work before? Below are the relevant bits of the conf file and the row from radcheck. Thanks! Aaron Row I added to radcheck in the MySQL database: | 7 | awebb | Max-Daily-Session | 110 | := | raduisd.conf important bits (I think this should suffice): counter { filename = ${raddbdir}/db.counter key = User-Name count-attribute = Acct-Session-Time reset = daily counter-name = Daily-Session-Time check-name = Max-Daily-Session allowed-servicetype = Framed-User cache-size = 5000 } authorize { suffix files sql counter } authenticate {} accounting { detail counter radutmp sql } session { radutmp } - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html