Hi ,
 
I am trying to use the mod exec command to pass the request list parameters to an external program when there is a accounting request start is recived.
 
The below steps  i have followed.
 
1) in the Acct_users files below statement are given.
 
DEFAULT Acct-Status-Type == Start
        Exec-Program = "/usr/bin/exec-program-wait"
 
2) In the radiusd.conf file
 
exec exec-program-wait {
                 wait = yes
                program = "exec-program-wait %{WaterCove-Bearer-Type}"
                input_pairs = request
                output_pairs = reply
 
        }
3) in the instantiate section  called the below module
 
        instantiate {

        exec exec-program-wait
4) Ensured the script is available in /usr/bin/exec-program-wait
 
5) Below is the script definition
 
#  For 'acct_users':
#
DEFAULT Acct-Status-Type == Start
        Exec-Program="/home/shankarganesh/freeradius-1.1.2/scripts/exec-program-wait"
DEFAULT Acct-Status-Type == Stop
        Exec-Program="/home/shankarganesh/freeradius-1.1.2/scripts/exec-program-wait"

printenv > /tmp/exec-program-wait
echo "Reply-Message += \"Hello, %u\","
echo "Reply-Message += \"PATH=$PATH\","
echo Framed-IP-Address = 255.255.255.255
echo "The prameter list of $* "
WaterCove-Bearer-Type = WATERCOVE_BEARER_TYPE
exit 0
 
6) When i try to run the server  below error message is logged in the server , which could not find the environment variables .
 
Ready to process requests.
rad_recv: Accounting-Request packet from host 10.45.2.42:1230, id=0, length=223
        User-Name = "steve"
        Acct-Status-Type = Start
        Acct-Session-Id = "0"
        NAS-IP-Address = 10.45.2.34
        Framed-IP-Address = 10.45.2.33
        Called-Station-Id = "1234"
        Calling-Station-Id = "4546"
        3GPP-IMSI = "12345"
        3GPP-NSAPI = "asdfgh"
        3GPP-Charging-ID = 123
        3GPP-GPRS-Negotiated-QoS-profile = ""
        3GPP-GGSN-Address = 255.255.255.255
        3GPP-SGSN-Address = 255.255.255.255
        WaterCove-Bearer-Type = WLAN
        WaterCove-HTTP-URL = ""
        WaterCove-FlowTemplate-Name = "23453255"
        WaterCove-ServiceClass-Name = "sgdfsfgd"
        WaterCove-FlowTemplate-ID = 325454
        WaterCove-ServiceClass-ID = 32534254
  Processing the preacct section of radiusd.conf
modcall: entering group preacct for request 0
  modcall[preacct]: module "preprocess" returns noop for request 0
rlm_acct_unique: WARNING: Attribute NAS-Port was not found in request, unique ID MAY be inconsistent
rlm_acct_unique: Hashing ',Client-IP-Address = 10.45.2.42,NAS-IP-Address = 10.45.2.34,Acct-Session-Id = "0",User-Name = "steve"'
rlm_acct_unique: Acct-Unique-Session-ID = "a488c9e5208ecdb9".
  modcall[preacct]: module "acct_unique" returns ok for request 0
    rlm_realm: No '@' in User-Name = "steve", looking up realm NULL
    rlm_realm: No such realm "NULL"
  modcall[preacct]: module "suffix" returns noop for request 0
    acct_users: Matched entry DEFAULT at line 7
  modcall[preacct]: module "files" returns ok for request 0
modcall: leaving group preacct (returns ok) for request 0
  Processing the accounting section of radiusd.conf
modcall: entering group accounting for request 0
radius_xlat:  '/usr/local/radius/var/log/radius/radacct/10.45.2.42/detail-20060823'
rlm_detail: /usr/local/radius/var/log/radius/radacct/%{Client-IP-Address}/detail-%Y%m%d expands to /usr/local/radius/var/log/radius/radacct/10.45.2.42/detail-20060823
  modcall[accounting]: module "detail" returns ok for request 0
  modcall[accounting]: module "unix" returns noop for request 0
radius_xlat:  '/usr/local/radius/var/log/radius/radutmp'
radius_xlat:  'steve'
  rlm_radutmp: No NAS-Port seen.  Cannot do anything.
  rlm_radumtp: WARNING: checkrad will probably not work!
  modcall[accounting]: module "radutmp" returns noop for request 0
modcall: leaving group accounting (returns ok) for request 0
radius_xlat:  '/usr/bin/exec-program-wait'
Exec-Program: /usr/bin/exec-program-wait
/usr/bin/exec-program-wait: printenv: not found
Sending Accounting-Response of id 0 to 10.45.2.42 port 1230
Finished request 0
Going to the next request
Pls let me know where i am doing wrong.
 
Thanks and rgds
Shankar ganesh
 
 
 

- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to