Ming-Ching Tiew wrote:
I am trying to get the 'update disconnect' to work putting this into the preacct section :-
--------------------------------------------------------- if ( "%{sql:SELECT value from radcheck WHERE UserName = '%{User-Name}' and attribute = 'Acct-Logout-Now'}" ) { update disconnect { Reply-Message = "You have been disconnected by the administrator!" } #%{exec:/usr/local/dialup_admin/bin/disconnect.sh %{User-Name} %{Acct-Session-Id} %{NAS-IP-Address} %{Packet-Src-Port} } "%{sql:DELETE FROM radcheck WHERE UserName = '%{User-Name}' and attribute = 'Acct-Logout-Now'}" } --------------------------cut----------------------------
The update disconnect did not work but the (commented) exec using a script based on radclient works, What's wrong ?
See the FAQ for "it doesn't work".
Though the exec method works but I have to open up the port, which means the firewall thinks that's a separate connection, which is lousy.
Well... it *is* a separate connection. The Disconnect-Request packet is sent from a *new* source port to the disconnect port of the client.
Secondly, the sql DELETE, seems to be executed twice, here is the log :-
No, it's not executed twice.
If I understand the log correctly, the second sql access is displayed first,
And why do you think that something happening *second* is logged before something happening *first*?
that's why there is a failure, whereas the first sql access is displayed later, but it's a noop.
That's not what the log shows. Alan DeKok.