The FreeRADIUS server  $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
Functions
xlat_purify.c File Reference

Purification functions for xlats. More...

#include <freeradius-devel/server/base.h>
#include <freeradius-devel/unlang/xlat_priv.h>
#include <freeradius-devel/util/calc.h>
#include <freeradius-devel/util/dict.h>
+ Include dependency graph for xlat_purify.c:

Go to the source code of this file.

Functions

static int binary_peephole_optimize (TALLOC_CTX *ctx, xlat_exp_t **out, xlat_exp_t *lhs, fr_token_t op, xlat_exp_t *rhs)
 
static bool is_truthy (xlat_exp_t *node, bool *out)
 
static xlat_exp_tpeephole_optimize_land (xlat_exp_t *lhs, xlat_exp_t *rhs)
 
static xlat_exp_tpeephole_optimize_lor (xlat_exp_t *lhs, xlat_exp_t *rhs)
 
int xlat_purify (xlat_exp_head_t *head, unlang_interpret_t *intp)
 Purify an xlat. More...
 
int xlat_purify_list (xlat_exp_head_t *head, request_t *request)
 
int xlat_purify_op (TALLOC_CTX *ctx, xlat_exp_t **out, xlat_exp_t *lhs, fr_token_t op, xlat_exp_t *rhs)
 
static fr_value_box_txlat_value_box (xlat_exp_t *node)
 
static void xlat_value_list_to_xlat (xlat_exp_head_t *head, fr_value_box_list_t *list)
 

Detailed Description

Purification functions for xlats.

Id
486f2eb58a0ccd2e53ed6f2b3520dd2e82fc841a

Definition in file xlat_purify.c.

Function Documentation

◆ binary_peephole_optimize()

static int binary_peephole_optimize ( TALLOC_CTX *  ctx,
xlat_exp_t **  out,
xlat_exp_t lhs,
fr_token_t  op,
xlat_exp_t rhs 
)
static

Definition at line 342 of file xlat_purify.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ is_truthy()

static bool is_truthy ( xlat_exp_t node,
bool out 
)
static

Definition at line 229 of file xlat_purify.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ peephole_optimize_land()

static xlat_exp_t* peephole_optimize_land ( xlat_exp_t lhs,
xlat_exp_t rhs 
)
static

Definition at line 301 of file xlat_purify.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ peephole_optimize_lor()

static xlat_exp_t* peephole_optimize_lor ( xlat_exp_t lhs,
xlat_exp_t rhs 
)
static

Definition at line 247 of file xlat_purify.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xlat_purify()

int xlat_purify ( xlat_exp_head_t head,
unlang_interpret_t intp 
)

Purify an xlat.

Parameters
headthe xlat to be purified
intpthe interpreter to use.

Definition at line 194 of file xlat_purify.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xlat_purify_list()

int xlat_purify_list ( xlat_exp_head_t head,
request_t request 
)

Definition at line 60 of file xlat_purify.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xlat_purify_op()

int xlat_purify_op ( TALLOC_CTX *  ctx,
xlat_exp_t **  out,
xlat_exp_t lhs,
fr_token_t  op,
xlat_exp_t rhs 
)

Definition at line 425 of file xlat_purify.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xlat_value_box()

static fr_value_box_t* xlat_value_box ( xlat_exp_t node)
static

Definition at line 212 of file xlat_purify.c.

+ Here is the caller graph for this function:

◆ xlat_value_list_to_xlat()

static void xlat_value_list_to_xlat ( xlat_exp_head_t head,
fr_value_box_list_t *  list 
)
static

Definition at line 34 of file xlat_purify.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function: