RCSID("$Id$")
-
#include <freeradius-devel/server/cf_file.h>
-#include <freeradius-devel/util/atexit.h>
-#include <freeradius-devel/util/file.h>
+#include <freeradius-devel/server/main_config.h>
#include <freeradius-devel/server/modpriv.h>
#include <freeradius-devel/server/module_rlm.h>
+#include <freeradius-devel/util/atexit.h>
+#include <freeradius-devel/util/file.h>
#include <freeradius-devel/util/conf.h>
#include <freeradius-devel/server/cf_file.h>
#include <freeradius-devel/server/cf_parse.h>
#include <freeradius-devel/server/client.h>
+#include <freeradius-devel/server/main_config.h>
#include <freeradius-devel/server/module.h>
#include <freeradius-devel/server/virtual_servers.h>
#include <freeradius-devel/unlang/call.h>
RCSID("$Id$")
#include <freeradius-devel/server/paircmp.h>
-#include <freeradius-devel/util/debug.h>
#include <freeradius-devel/server/regex.h>
#include <freeradius-devel/server/request.h>
+#include <freeradius-devel/unlang/xlat.h>
+#include <freeradius-devel/util/debug.h>
#include <freeradius-devel/protocol/radius/rfc2865.h>
#include <freeradius-devel/protocol/freeradius/freeradius.internal.h>
#endif
#include <freeradius-devel/server/log.h>
-#include <freeradius-devel/server/main_config.h>
#include <freeradius-devel/server/rcode.h>
#include <freeradius-devel/server/signal.h>
#include <freeradius-devel/util/event.h>
typedef struct tmpl_s tmpl_t;
#include <freeradius-devel/unlang/xlat.h>
+#include <freeradius-devel/unlang/xlat_ctx.h>
#include <freeradius-devel/util/packet.h>
#include <freeradius-devel/util/proto.h>
#include <freeradius-devel/util/regex.h>
*/
RCSID("$Id$")
+#include <freeradius-devel/server/main_config.h>
+
#include "condition_priv.h"
#include "group_priv.h"
* foo := bar LHS foo
* foo = { bar = baz } LHS bar
* foo = { 1, 2, 3, 4 } LHS 1, 2, etc.
- *
+ *
*/
static int expand_lhs(request_t *request, unlang_frame_state_edit_t *state, edit_map_t *current)
{
extern "C" {
#endif
+#include <freeradius-devel/server/cf_util.h>
#include <freeradius-devel/server/request.h>
#include <freeradius-devel/unlang/action.h>
typedef struct xlat_inst xlat_inst_t;
typedef struct xlat_thread_inst xlat_thread_inst_t;
-#include <freeradius-devel/server/cf_util.h>
#include <freeradius-devel/server/request.h>
+
+typedef size_t (*xlat_escape_legacy_t)(request_t *request, char *out, size_t outlen, char const *in, void *arg);
+
+#include <freeradius-devel/server/cf_util.h>
#include <freeradius-devel/server/signal.h>
+#include <freeradius-devel/server/tmpl.h>
#include <freeradius-devel/util/heap.h>
#include <freeradius-devel/util/pair.h>
*/
typedef int (*xlat_thread_detach_t)(xlat_thread_inst_ctx_t const *xctx);
-typedef size_t (*xlat_escape_legacy_t)(request_t *request, char *out, size_t outlen, char const *in, void *arg);
-
/** Set the next argument to the next item in the input list or NULL
*
* @param[in] _list we're extracting arguments from.
extern "C" {
#endif
+#include <freeradius-devel/unlang/xlat_ctx.h>
+#include <freeradius-devel/unlang/xlat.h>
#include <freeradius-devel/io/pair.h>
#ifdef DEBUG_XLAT
#include <freeradius-devel/util/debug.h>
#include <freeradius-devel/util/sbuff.h>
-#include <freeradius-devel/server/request.h>
#include <freeradius-devel/server/regex.h>
#include <freeradius-devel/unlang/xlat_priv.h>
* @copyright 2016 Alan DeKok (aland@freeradius.org)
*/
#include <freeradius-devel/io/listen.h>
+#include <freeradius-devel/protocol/vmps/vmps.h>
#include <freeradius-devel/server/module_rlm.h>
#include <freeradius-devel/util/debug.h>
-#include <freeradius-devel/protocol/vmps/vmps.h>
-
#include "proto_vmps.h"
extern fr_app_t proto_vmps;
* @copyright 2021 Network RADIUS SARL (legal@networkradius.com)
*/
#include <freeradius-devel/protocol/freeradius/freeradius.internal.h>
+
#include <freeradius-devel/radius/radius.h>
+#include <freeradius-devel/server/main_config.h>
#include <freeradius-devel/server/module.h>
-#include <freeradius-devel/unlang/module.h>
#include <freeradius-devel/server/pair.h>
#include <freeradius-devel/server/protocol.h>
+#include <freeradius-devel/server/state.h>
+
+#include <freeradius-devel/unlang/module.h>
#include <freeradius-devel/util/debug.h>
-#include <freeradius-devel/server/state.h>
static fr_dict_t const *dict_freeradius;
static fr_dict_t const *dict_radius;
* @copyright 2020 Network RADIUS SARL (legal@networkradius.com)
*/
+
#include <freeradius-devel/io/listen.h>
#include <freeradius-devel/io/master.h>
+#include <freeradius-devel/server/main_config.h>
#include <freeradius-devel/server/protocol.h>
#include <freeradius-devel/server/state.h>
+#include <freeradius-devel/tacacs/tacacs.h>
#include <freeradius-devel/unlang/call.h>
#include <freeradius-devel/util/debug.h>
-#include <freeradius-devel/tacacs/tacacs.h>
-
static fr_dict_t const *dict_freeradius;
static fr_dict_t const *dict_tacacs;
* @copyright 2021 Network RADIUS SARL (legal@networkradius.com)
*/
#include <freeradius-devel/protocol/freeradius/freeradius.internal.h>
+
#include <freeradius-devel/radius/radius.h>
+#include <freeradius-devel/server/main_config.h>
#include <freeradius-devel/server/module.h>
-#include <freeradius-devel/unlang/module.h>
#include <freeradius-devel/server/pair.h>
#include <freeradius-devel/server/protocol.h>
+#include <freeradius-devel/server/state.h>
+
+#include <freeradius-devel/unlang/module.h>
#include <freeradius-devel/util/debug.h>
-#include <freeradius-devel/server/state.h>
static fr_dict_t const *dict_freeradius;
static fr_dict_t const *dict_radius;
RCSID("$Id$")
+#include <freeradius-devel/io/test_point.h>
+#include <freeradius-devel/protocol/vmps/vmps.h>
#include <freeradius-devel/util/dbuff.h>
+#include <freeradius-devel/util/proto.h>
#include <freeradius-devel/util/udp.h>
-#include <freeradius-devel/protocol/vmps/vmps.h>
-#include <freeradius-devel/io/test_point.h>
#include "vmps.h"
#include "attrs.h"
# @todo - yuck. Suppress full path?
#
xlat_purify &Event-Timestamp == "January 1, 2012 %{User-Name}"
-match (&Event-Timestamp == %(cast:string "January 1, 2012 %{Request[0].User-Name}"))
+match (&Event-Timestamp == %(cast:string "January 1, 2012 %{request[0].User-Name}"))
# This one is NOT an expansion, so it's parsed into normal form
xlat_purify &Event-Timestamp == 'January 1 2012'
# @todo - yuck, don't print full path?
xlat_purify <ipaddr>127.0.0.1 == %{md4: SELECT user FROM table WHERE user='%{User-Name}'}
-match (127.0.0.1 == %{md4: SELECT user FROM table WHERE user='%{Request[0].User-Name}'})
+match (127.0.0.1 == %{md4: SELECT user FROM table WHERE user='%{request[0].User-Name}'})
xlat_purify <ether> 00:11:22:33:44:55 == "00:11:22:33:44:55"
match true
#match &Foo-Bar
xlat_purify &Acct-Input-Octets > "%{Session-Timeout}"
-match (&Acct-Input-Octets > %(cast:string "%{Request[0].Session-Timeout}"))
+match (&Acct-Input-Octets > %(cast:string "%{request[0].Session-Timeout}"))
xlat_purify &Acct-Input-Octets > &Session-Timeout
match (&Acct-Input-Octets > &Session-Timeout)