modules instantiation
Alan DeKok
aland at deployingradius.com
Sat Feb 20 03:07:15 CET 2010
Latha Krishnamurthi wrote:
> I see that a new instance is getting created when the first one is busy
> handling a request. (I do this this by adding a sleep in the module and
> printing the threadid) I am expecting the xxx_instantiate function to
> get called each time a new instance is created (reading in the
> documentation).
No. The module is NOT having "a new instance created".
A module "instance" is defined by a module configuration. One
configuration: one instance.
The "instance" data is *constant*. The module gets called multiple
times simultaneously from multiple threads when multiple requests are
received.
> This does not happen. I am actually connecting to a
> server in the instantiate function and storing the socket id in the
> *instance, so that I can use it later in the authenticate etc.
Why?
Is that connection changing the way the module behaves?
> But it seems that the socket id is the same for all the instances.
> *instance seems to be shared by all the instances ??
>
> Am I missing something/configuration, your help is grately appreciated.
If you need to store data that is associated with a particulare
*request*, and is valid only for the lifetime of a request, see
request_data_add(), and request_data_get().
Alan DeKok.
More information about the Freeradius-Users
mailing list