int radius_exec_program(TALLOC_CTX *ctx, char *out, size_t outlen, VALUE_PAIR **output_pairs,
REQUEST *request, char const *cmd, VALUE_PAIR *input_pairs,
bool exec_wait, bool shell_escape, int timeout) CC_HINT(nonnull (5, 6));
-void trigger_exec_init(CONF_SECTION *cs);
-int trigger_exec(REQUEST *request, CONF_SECTION *cs, char const *name, bool quench, VALUE_PAIR *args)
+void trigger_exec_init(CONF_SECTION const *cs);
+int trigger_exec(REQUEST *request, CONF_SECTION const *cs, char const *name, bool quench, VALUE_PAIR *args)
CC_HINT(nonnull (3));
void trigger_exec_free(void);
VALUE_PAIR *trigger_args_afrom_server(TALLOC_CTX *ctx, char const *server, uint16_t port);
#include <freeradius-devel/radiusd.h>
#include <freeradius-devel/rad_assert.h>
-static CONF_SECTION *trigger_exec_main, *trigger_exec_subcs;
-static rbtree_t *trigger_last_fired_tree;
-static pthread_mutex_t *trigger_mutex;
+static CONF_SECTION const *trigger_exec_main, *trigger_exec_subcs;
+static rbtree_t *trigger_last_fired_tree;
+static pthread_mutex_t *trigger_mutex;
#define REQUEST_INDEX_TRIGGER_NAME 1
#define REQUEST_INDEX_TRIGGER_ARGS 2
*
* @param cs to use as global trigger section.
*/
-void trigger_exec_init(CONF_SECTION *cs)
+void trigger_exec_init(CONF_SECTION const *cs)
{
trigger_exec_main = cs;
trigger_exec_subcs = cf_section_sub_find(cs, "trigger");
* @return - 0 on success.
* - -1 on failure.
*/
-int trigger_exec(REQUEST *request, CONF_SECTION *cs, char const *name, bool rate_limit, VALUE_PAIR *args)
+int trigger_exec(REQUEST *request, CONF_SECTION const *cs, char const *name, bool rate_limit, VALUE_PAIR *args)
{
- CONF_SECTION *subcs;
+ CONF_SECTION const *subcs;
- CONF_ITEM *ci;
- CONF_PAIR *cp;
+ CONF_ITEM *ci;
+ CONF_PAIR *cp;
- char const *attr;
- char const *value;
+ char const *attr;
+ char const *value;
- VALUE_PAIR *vp;
+ VALUE_PAIR *vp;
- REQUEST *fake = NULL;
- int ret = 0;
+ REQUEST *fake = NULL;
+ int ret = 0;
/*
* Use global "trigger" section if no local config is given.