25 RCSID(
"$Id: 0cceba3d9a53e401b3df5f5246dfcb2d7892d30e $")
27 #include <freeradius-devel/radiusd.h>
28 #include <freeradius-devel/modules.h>
29 #include <freeradius-devel/rad_assert.h>
61 RINFO(
"test-Paircmp called with \"%s\"", check->vp_strvalue);
63 if (strcmp(check->vp_strvalue,
"yes") == 0)
return 0;
87 INFO(
"rlm_test: Informational message");
88 WARN(
"rlm_test: Warning message");
89 ERROR(
"rlm_test: Error message");
90 DEBUG(
"rlm_test: Debug message");
91 DEBUG2(
"rlm_test: Debug2 message");
92 DEBUG3(
"rlm_test: Debug3 message");
93 DEBUG4(
"rlm_test: Debug4 message");
94 AUTH(
"rlm_test: Auth message");
95 ACCT(
"rlm_test: Acct message");
96 PROXY(
"rlm_test: Proxy message");
109 RINFO(
"RINFO message");
113 RWARN(
"RWARN message");
117 RAUTH(
"RAUTH message");
118 RACCT(
"RACCT message");
124 RERROR(
"RERROR error message");
126 REDEBUG(
"RDEBUG error message");
145 #ifdef WITH_ACCOUNTING
174 request->simul_count=0;
206 .config = module_config,
212 #ifdef WITH_ACCOUNTING
#define REDEBUG4(fmt,...)
#define RINDENT()
Indent R* messages by one level.
static rlm_rcode_t mod_accounting(void *instance, REQUEST *request)
Write accounting data to Couchbase documents.
static int rlm_test_cmp(UNUSED void *instance, REQUEST *request, UNUSED VALUE_PAIR *thing, VALUE_PAIR *check, UNUSED VALUE_PAIR *check_pairs, UNUSED VALUE_PAIR **reply_pairs)
The module is OK, continue.
Metadata exported by the module.
static const CONF_PARSER module_config[]
static rlm_rcode_t CC_HINT(nonnull)
static rlm_rcode_t mod_authorize(void *instance, REQUEST *request)
Handle authorization requests using Couchbase document data.
#define RLM_TYPE_THREAD_SAFE
Module is threadsafe.
#define REDEBUG2(fmt,...)
#define CONF_PARSER_TERMINATOR
static rlm_rcode_t mod_authenticate(void *instance, REQUEST *request) CC_HINT(nonnull)
Defines a CONF_PAIR to C data type mapping.
4 methods index for checksimul section.
3 methods index for accounting section.
Stores an attribute, a value and various bits of other data.
static rlm_rcode_t mod_checksimul(void *instance, REQUEST *request)
Check if a given user is already logged in.
0 methods index for authenticate section.
#define REXDENT()
Exdent (unindent) R* messages by one level.
enum rlm_rcodes rlm_rcode_t
Return codes indicating the result of the module call.
uint64_t magic
Used to validate module struct.
#define REDEBUG3(fmt,...)
#define FR_CONF_OFFSET(_n, _t, _s, _f)
int paircompare_register_byname(char const *name, fr_dict_attr_t const *from, bool first_only, RAD_COMPARE_FUNC func, void *instance)
Register a function as compare function.
2 methods index for preacct section.
fr_dict_attr_t const * da
Dictionary attribute defines the attribute.
struct rlm_test_t rlm_test_t
fr_dict_attr_t const * fr_dict_attr_by_num(fr_dict_t *dict, unsigned int vendor, unsigned int attr)
Lookup a fr_dict_attr_t by its vendor and attribute numbers.
String of printable characters.
1 methods index for authorize section.
static int mod_detach(UNUSED void *instance)
static int mod_instantiate(UNUSED CONF_SECTION *conf, void *instance)