All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Typedefs | Functions
modpriv.h File Reference

Stuff needed by both modules.c and modcall.c, but should not be accessed from anywhere else. More...

#include <freeradius-devel/radiusd.h>
#include <freeradius-devel/modules.h>
+ Include dependency graph for modpriv.h:

Go to the source code of this file.

Data Structures

struct  module_entry_t
 
struct  module_instance_t
 

Typedefs

typedef struct fr_module_hup_t fr_module_hup_t
 
typedef void * lt_dlhandle
 
typedef struct module_entry_t module_entry_t
 
typedef struct module_instance_t module_instance_t
 

Functions

int lt_dlclose (lt_dlhandle handle)
 
char const * lt_dlerror (void)
 
lt_dlhandle lt_dlopenext (char const *name)
 
void * lt_dlsym (lt_dlhandle handle, char const *symbol)
 
module_instance_tmodule_find (CONF_SECTION *modules, char const *askedname)
 Find an existing module instance. More...
 
int module_hup_module (CONF_SECTION *cs, module_instance_t *node, time_t when)
 
module_instance_tmodule_instantiate (CONF_SECTION *modules, char const *askedname)
 Load a module, and instantiate it. More...
 
module_instance_tmodule_instantiate_method (CONF_SECTION *modules, char const *askedname, rlm_components_t *method)
 
int module_sibling_section_find (CONF_SECTION **out, CONF_SECTION *module, char const *name)
 Resolve polymorphic item's from a module's CONF_SECTION to a subsection in another module. More...
 

Detailed Description

Stuff needed by both modules.c and modcall.c, but should not be accessed from anywhere else.

Id:
f038780c36f1977aa541c9898c06449a192ff1d1

Definition in file modpriv.h.


Data Structure Documentation

struct module_entry_t

Definition at line 52 of file modpriv.h.

+ Collaboration diagram for module_entry_t:
Data Fields
lt_dlhandle handle
module_t const * module
char const * name
struct module_instance_t

Definition at line 65 of file modpriv.h.

+ Collaboration diagram for module_instance_t:
Data Fields
rlm_rcode_t code
CONF_SECTION * cs
module_entry_t * entry
bool force
bool instantiated
void * insthandle
time_t last_hup
fr_module_hup_t * mh
char const * name

Typedef Documentation

Definition at line 58 of file modpriv.h.

typedef void* lt_dlhandle

Definition at line 42 of file modpriv.h.

Function Documentation

int lt_dlclose ( lt_dlhandle  handle)

Definition at line 274 of file modules.c.

+ Here is the caller graph for this function:

char const* lt_dlerror ( void  )

Definition at line 281 of file modules.c.

lt_dlhandle lt_dlopenext ( char const *  name)

Definition at line 151 of file modules.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void* lt_dlsym ( lt_dlhandle  handle,
char const *  symbol 
)

Definition at line 269 of file modules.c.

module_instance_t* module_find ( CONF_SECTION modules,
char const *  askedname 
)

Find an existing module instance.

Definition at line 623 of file modules.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int module_hup_module ( CONF_SECTION cs,
module_instance_t node,
time_t  when 
)

Definition at line 1624 of file modules.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

module_instance_t* module_instantiate ( CONF_SECTION modules,
char const *  askedname 
)

Load a module, and instantiate it.

Definition at line 644 of file modules.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

module_instance_t* module_instantiate_method ( CONF_SECTION modules,
char const *  askedname,
rlm_components_t method 
)

Definition at line 712 of file modules.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int module_sibling_section_find ( CONF_SECTION **  out,
CONF_SECTION module,
char const *  name 
)

Resolve polymorphic item's from a module's CONF_SECTION to a subsection in another module.

This allows certain module sections to reference module sections in other instances of the same module and share CONF_DATA associated with them.

example {
        data {
                ...
        }
}

example inst {
        data = example
}
 * 
Parameters
outwhere to write the pointer to a module's config section. May be NULL on success, indicating the config item was not found within the module CONF_SECTION or the chain of module references was followed and the module at the end of the chain did not a subsection.
moduleCONF_SECTION.
nameof the polymorphic sub-section.
Returns
  • 0 on success with referenced section.
  • 1 on success with local section.
  • -1 on failure.

Definition at line 788 of file modules.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function: