|
static void | add_child (modgroup *g, modcallable *c) |
|
void | add_to_modcallable (modcallable *parent, modcallable *this) |
|
static int | all_children_are_modules (CONF_SECTION *cs, char const *name) |
|
static rlm_rcode_t | CC_HINT (nonnull) |
|
static int | compile_action (modcallable *c, CONF_PAIR *cp) |
|
modcallable * | compile_modgroup (modcallable *parent, rlm_components_t component, CONF_SECTION *cs) |
|
modcallable * | compile_modsingle (TALLOC_CTX *ctx, modcallable **parent, rlm_components_t component, CONF_ITEM *ci, char const **modname) |
|
static modcallable * | do_compile_modbreak (modcallable *parent, rlm_components_t component, CONF_ITEM const *ci) |
|
static modcallable * | do_compile_modcase (modcallable *parent, rlm_components_t component, CONF_SECTION *cs) |
|
static modcallable * | do_compile_modforeach (modcallable *parent, rlm_components_t component, CONF_SECTION *cs) |
|
static modcallable * | do_compile_modgroup (modcallable *, rlm_components_t, CONF_SECTION *, int, int, int) |
|
static modcallable * | do_compile_modmap (modcallable *parent, rlm_components_t component, CONF_SECTION *cs, char const *name2, int grouptype) |
|
static modcallable * | do_compile_modserver (modcallable *parent, rlm_components_t component, CONF_ITEM *ci, char const *name, CONF_SECTION *cs, char const *server) |
|
static modcallable * | do_compile_modsingle (modcallable *parent, rlm_components_t component, CONF_ITEM *ci, int grouptype, char const **modname) |
|
static modcallable * | do_compile_modswitch (modcallable *parent, rlm_components_t component, CONF_SECTION *cs) |
|
static modcallable * | do_compile_modupdate (modcallable *parent, rlm_components_t component, CONF_SECTION *cs, char const *name2) |
|
static modcallable * | do_compile_modxlat (modcallable *parent, rlm_components_t component, char const *fmt) |
|
static modgroup * | mod_callabletogroup (modcallable *p) |
|
static modref * | mod_callabletoref (modcallable *p) |
|
static modsingle * | mod_callabletosingle (modcallable *p) |
|
static modxlat * | mod_callabletoxlat (modcallable *p) |
|
static modcallable * | mod_grouptocallable (modgroup *p) |
|
static modcallable * | mod_reftocallable (modref *p) |
|
static modcallable * | mod_singletocallable (modsingle *p) |
|
static modcallable * | mod_xlattocallable (modxlat *p) |
|
int | modcall (rlm_components_t component, modcallable *c, REQUEST *request) |
| Call a module, iteratively, with a local stack, rather than recursively. More...
|
|
static void | modcall_child (REQUEST *request, rlm_components_t component, int depth, modcall_stack_entry_t *entry, modcallable *c, rlm_rcode_t *result, bool do_next_sibling) |
|
void | modcall_debug (modcallable *mc, int depth) |
|
static int | modcall_fixup_map (vp_map_t *map, UNUSED void *ctx) |
| Validate and fixup a map that's part of an map section. More...
|
|
int | modcall_fixup_update (vp_map_t *map, UNUSED void *ctx) |
| Validate and fixup a map that's part of an update section. More...
|
|
bool | modcall_pass2 (modcallable *mc) |
|
static bool | modcall_recurse (REQUEST *request, rlm_components_t component, int depth, modcall_stack_entry_t *entry, bool do_next_sibling) |
|
static bool | pass2_callback (void *ctx, fr_cond_t *c) |
|
static bool | pass2_fixup_undefined (CONF_ITEM const *ci, vp_tmpl_t *vpt) |
|
static bool | pass2_map_compile (modgroup *g) |
|
static bool | pass2_update_compile (modgroup *g) |
|
static bool | pass2_xlat_compile (CONF_ITEM const *ci, vp_tmpl_t **pvpt, bool convert, fr_dict_attr_t const *da) |
|
static CONF_SECTION * | virtual_module_find_cs (rlm_components_t *pcomponent, char const *real_name, char const *virtual_name, char const *method_name) |
| Load a named module from "instantiate" or "policy". More...
|
|
static CONF_SECTION* virtual_module_find_cs |
( |
rlm_components_t * |
pcomponent, |
|
|
char const * |
real_name, |
|
|
char const * |
virtual_name, |
|
|
char const * |
method_name |
|
) |
| |
|
static |
Load a named module from "instantiate" or "policy".
If it's "foo.method", look for "foo", and return "method" as the method we wish to use, instead of the input component.
- Parameters
-
[out] | pcomponent | Where to write the method we found, if any. If no method is specified will be set to MOD_COUNT. |
[in] | real_name | Complete name string e.g. foo.authorize. |
[in] | virtual_name | Virtual module name e.g. foo. |
[in] | method_name | Method override (may be NULL) or the method name e.g. authorize. |
- Returns
- the CONF_SECTION specifying the virtual module.
Definition at line 2407 of file modcall.c.