X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/f91192c77eec33a27dea7fcd0d451823ef478529..75dfb67fd068cc291e22f4f813b407812ebd09d2:/projects/rlm_stg/modules.h diff --git a/projects/rlm_stg/modules.h b/projects/rlm_stg/modules.h deleted file mode 100644 index cb49f478..00000000 --- a/projects/rlm_stg/modules.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - * module.h Interface to the RADIUS module system. - * - * Version: $Id: modules.h,v 1.1 2010/08/14 04:13:52 faust Exp $ - * - */ - -#ifndef RADIUS_MODULES_H -#define RADIUS_MODULES_H - -//#include -//RCSIDH(modules_h, "$Id: modules.h,v 1.1 2010/08/14 04:13:52 faust Exp $") - -//#include "conffile.h" -#include "radiusd.h" - -typedef int (*packetmethod)(void *instance, REQUEST *request); - -enum { - RLM_COMPONENT_AUTH = 0, - RLM_COMPONENT_AUTZ, /* 1 */ - RLM_COMPONENT_PREACCT, /* 2 */ - RLM_COMPONENT_ACCT, /* 3 */ - RLM_COMPONENT_SESS, /* 4 */ - RLM_COMPONENT_PRE_PROXY, /* 5 */ - RLM_COMPONENT_POST_PROXY, /* 6 */ - RLM_COMPONENT_POST_AUTH, /* 7 */ -#ifdef WITH_COA - RLM_COMPONENT_RECV_COA, /* 8 */ - RLM_COMPONENT_SEND_COA, /* 9 */ -#endif - RLM_COMPONENT_COUNT /* 8 / 10: How many components are there */ -}; - -#define RLM_TYPE_THREAD_SAFE (0 << 0) -#define RLM_TYPE_THREAD_UNSAFE (1 << 0) -#define RLM_TYPE_CHECK_CONFIG_SAFE (1 << 1) -#define RLM_TYPE_HUP_SAFE (1 << 2) - -#define RLM_MODULE_MAGIC_NUMBER ((uint32_t) (0xf4ee4ad2)) -#define RLM_MODULE_INIT RLM_MODULE_MAGIC_NUMBER - -typedef struct module_t { - uint32_t magic; /* may later be opaque struct */ - const char *name; - int type; - int (*instantiate)(CONF_SECTION *mod_cs, void **instance); - int (*detach)(void *instance); - packetmethod methods[RLM_COMPONENT_COUNT]; -} module_t; - -enum { - RLM_MODULE_REJECT, /* immediately reject the request */ - RLM_MODULE_FAIL, /* module failed, don't reply */ - RLM_MODULE_OK, /* the module is OK, continue */ - RLM_MODULE_HANDLED, /* the module handled the request, so stop. */ - RLM_MODULE_INVALID, /* the module considers the request invalid. */ - RLM_MODULE_USERLOCK, /* reject the request (user is locked out) */ - RLM_MODULE_NOTFOUND, /* user not found */ - RLM_MODULE_NOOP, /* module succeeded without doing anything */ - RLM_MODULE_UPDATED, /* OK (pairs modified) */ - RLM_MODULE_NUMCODES /* How many return codes there are */ -}; - -int setup_modules(int, CONF_SECTION *); -int detach_modules(void); -int module_hup(CONF_SECTION *modules); -int module_authorize(int type, REQUEST *request); -int module_authenticate(int type, REQUEST *request); -int module_preacct(REQUEST *request); -int module_accounting(int type, REQUEST *request); -int module_checksimul(int type, REQUEST *request, int maxsimul); -int module_pre_proxy(int type, REQUEST *request); -int module_post_proxy(int type, REQUEST *request); -int module_post_auth(int type, REQUEST *request); -#ifdef WITH_COA -int module_recv_coa(int type, REQUEST *request); -int module_send_coa(int type, REQUEST *request); -#define MODULE_NULL_COA_FUNCS ,NULL,NULL -#else -#define MODULE_NULL_COA_FUNCS -#endif -int indexed_modcall(int comp, int idx, REQUEST *request); - -/* - * For now, these are strongly tied together. - */ -int virtual_servers_load(CONF_SECTION *config); -void virtual_servers_free(time_t when); - - -#endif /* RADIUS_MODULES_H */