The FreeRADIUS server  $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
Data Structures | Functions | Variables
rlm_idn.c File Reference

Internationalized Domain Name encoding for DNS aka IDNA aka RFC3490. More...

#include <freeradius-devel/server/base.h>
#include <freeradius-devel/server/module_rlm.h>
#include <freeradius-devel/unlang/xlat_func.h>
#include <idna.h>
+ Include dependency graph for rlm_idn.c:

Go to the source code of this file.

Data Structures

struct  rlm_idn_t
 

Functions

static int mod_bootstrap (module_inst_ctx_t const *mctx)
 
static xlat_action_t xlat_idna (TALLOC_CTX *ctx, fr_dcursor_t *out, xlat_ctx_t const *xctx, request_t *request, fr_value_box_list_t *in)
 Convert domain name to ASCII punycode. More...
 

Variables

static const conf_parser_t mod_config []
 
module_rlm_t rlm_idn
 
static xlat_arg_parser_t const xlat_idna_arg []
 

Detailed Description

Internationalized Domain Name encoding for DNS aka IDNA aka RFC3490.

Id
ada9f2de91c0d12ee681d7c0ef86de1757f07a65

Definition in file rlm_idn.c.


Data Structure Documentation

◆ rlm_idn_t

struct rlm_idn_t

Definition at line 35 of file rlm_idn.c.

Data Fields
bool allow_unassigned
bool use_std3_ascii_rules

Function Documentation

◆ mod_bootstrap()

static int mod_bootstrap ( module_inst_ctx_t const *  mctx)
static

Definition at line 151 of file rlm_idn.c.

+ Here is the call graph for this function:

Variable Documentation

◆ mod_config

const conf_parser_t mod_config[]
static
Initial value:
= {
{ FR_CONF_OFFSET("allow_unassigned", rlm_idn_t, allow_unassigned), .dflt = "no" },
{ FR_CONF_OFFSET("use_std3_ascii_rules", rlm_idn_t, use_std3_ascii_rules), .dflt = "yes" },
}
#define CONF_PARSER_TERMINATOR
Definition: cf_parse.h:626
#define FR_CONF_OFFSET(_name, _struct, _field)
conf_parser_t which parses a single CONF_PAIR, writing the result to a field in a struct
Definition: cf_parse.h:268

Definition at line 67 of file rlm_idn.c.

◆ rlm_idn

module_rlm_t rlm_idn
Initial value:
= {
.common = {
.name = "idn",
.inst_size = sizeof(rlm_idn_t),
.bootstrap = mod_bootstrap
}
}
#define MODULE_MAGIC_INIT
Stop people using different module/library/server versions together.
Definition: dl_module.h:65
static const conf_parser_t config[]
Definition: base.c:188
static int mod_bootstrap(module_inst_ctx_t const *mctx)
Definition: rlm_idn.c:151
static const conf_parser_t mod_config[]
Definition: rlm_idn.c:67
@ MODULE_TYPE_THREAD_SAFE
Module is threadsafe.
Definition: module.h:49

Definition at line 164 of file rlm_idn.c.

◆ xlat_idna_arg

xlat_arg_parser_t const xlat_idna_arg[]
static
Initial value:
= {
{ .required = true, .concat = true, .type = FR_TYPE_STRING },
}
@ FR_TYPE_STRING
String of printable characters.
Definition: merged_model.c:83
#define XLAT_ARG_PARSER_TERMINATOR
Definition: xlat.h:166

Definition at line 90 of file rlm_idn.c.