Greetings, I have freeradius 1.3.0 running on GNU/Linux 3.1 using rlm_perl with ithreads without problem (and it works nicely, well done!). The authenticate() sub returns a "Framed-Ip-Address" and a "Framed-Ip-Netmask" through the %RAD_REPLY hash, and, sometimes (when the NAS is adecuate, and depending on user, group and so on), a "Class" attribute as well. I have observed that once I have returned a Class attribute, though, it keeps getting sent by FreeRadius even when my authenticate() sub is not assigning to it. The behavior is like if it was cached somewhere... If I restart FreeRadius, though, the attribute is not sent, until I send one, and then it starts being sent again, even if I modify the data so it's not sent (my own traces and the rlm_perl traces: "adding AV pair..." confirm that Class is not being assigned). I have tried to delete() the %RAD_REPLY hash keys when the function gets called, so I always start with a fresh one, but it's not working either. Before doing further testing, though, undefining the keys values, and so on, I'd like to ask if anyone is having this behavior, if it's the expected one, and how can I correct it (because connections are rejected by the NAS when Class is assigned when it shouldn't). Thanks for you help, david PS- aditionally, is there an updated rlm_perl manual specifying what section it loads is for, and how to use the shared memory to set up db pools and cached results for making things easier before each forking? thanks! ___________________________________________________________________________ Este mensaje se dirige exclusivamente a su destinatario y puede contener información privilegiada o confidencial. Si no es vd. el destinatario indicado, queda notificado de que la lectura, utilización, divulgación y/o copia sin autorización está prohibida en virtud de la legislación vigente. Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma vía y proceda a su destrucción. El correo electrónico vía Internet no permite asegurar la confidencialidad de los mensajes que se transmiten ni su integridad o correcta recepción. Telefónica no asume ninguna responsabilidad por estas circunstancias. This message is intended exclusively for its addressee and may contain information that is CONFIDENTIAL and protected by a professional privilege or whose disclosure is prohibited by law.If you are not the intended recipient you are hereby notified that any read, dissemination, copy or disclosure of this communication is strictly prohibited by law. If this message has been received in error, please immediately notify us via e-mail and delete it. Internet e-mail neither guarantees the confidentiality nor the integrity or proper receipt of the messages sent. Telefónica does not assume any liability for those circumstances. ___________________________________________________________________________
david.suarezdelis@telefonica.es wrote:
I have observed that once I have returned a Class attribute, though, it keeps getting sent by FreeRadius even when my authenticate() sub is not assigning to it.
I'd be a little surprised if that happens. There's no cache in the server like that. Can you explain in more detail, like using the output of radiusd -X, and two packets?
PS- aditionally, is there an updated rlm_perl manual specifying what section it loads is for, and how to use the shared memory to set up db pools and cached results for making things easier before each forking? thanks!
Nope, sorry. Alan DeKok. -- http://deployingradius.com - The web site of the book http://deployingradius.com/blog/ - The blog
participants (2)
-
Alan DeKok -
david.suarezdelis@telefonica.es