From: Arran Cudbard-Bell Date: Wed, 19 Aug 2015 03:57:03 +0000 (-0400) Subject: Use macro for terminating CONF_PARSER arrays X-Git-Tag: release_3_0_10~220 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ec0ea9722bbe3d246c1fff55347d328be10ee851;p=thirdparty%2Ffreeradius-server.git Use macro for terminating CONF_PARSER arrays Check type of terminator is -1 to catch where CONF_PARSER arrays are improperly terminated --- diff --git a/src/include/conffile.h b/src/include/conffile.h index 01a639ac360..596c20afa97 100644 --- a/src/include/conffile.h +++ b/src/include/conffile.h @@ -176,7 +176,7 @@ extern bool check_config; @code{.c} static CONF_PARSER module_config[] = { { "example", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, example_instance_t, example), "default_value" }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR } @endcode * @@ -184,7 +184,7 @@ extern bool check_config; @code{.c} static CONF_PARSER global_config[] = { { "example", FR_CONF_POINTER(PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, &my_global), "default_value" }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR } @endcode * @@ -213,6 +213,8 @@ typedef struct CONF_PARSER { //!< the subsection. } CONF_PARSER; +#define CONF_PARSER_TERMINATOR { NULL, -1, 0, NULL, NULL } + CONF_PAIR *cf_pair_alloc(CONF_SECTION *parent, char const *attr, char const *value, FR_TOKEN op, FR_TOKEN lhs_type, FR_TOKEN rhs_type); CONF_PAIR *cf_pair_dup(CONF_SECTION *parent, CONF_PAIR *cp); diff --git a/src/main/client.c b/src/main/client.c index 508c3740f90..9c9449b6512 100644 --- a/src/main/client.c +++ b/src/main/client.c @@ -490,7 +490,7 @@ static CONF_PARSER limit_config[] = { { "idle_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, RADCLIENT, limit.idle_timeout), "30" }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; #endif @@ -526,7 +526,7 @@ static const CONF_PARSER client_config[] = { { "rate_limit", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, RADCLIENT, rate_limit), NULL }, #endif - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /** Create the linked list of clients from the new configuration type @@ -706,7 +706,7 @@ static const CONF_PARSER dynamic_config[] = { { "FreeRADIUS-Client-NAS-Type", FR_CONF_OFFSET(PW_TYPE_STRING, RADCLIENT, nas_type), NULL }, { "FreeRADIUS-Client-Virtual-Server", FR_CONF_OFFSET(PW_TYPE_STRING, RADCLIENT, server), NULL }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /** Add a dynamic client diff --git a/src/main/command.c b/src/main/command.c index 2d81ef8503b..6242ebc3607 100644 --- a/src/main/command.c +++ b/src/main/command.c @@ -106,7 +106,7 @@ static const CONF_PARSER command_config[] = { { "gid", FR_CONF_OFFSET(PW_TYPE_STRING, fr_command_socket_t, gid_name), NULL }, { "mode", FR_CONF_OFFSET(PW_TYPE_STRING, fr_command_socket_t, mode_name), NULL }, { "peercred", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, fr_command_socket_t, peercred), "yes" }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static FR_NAME_NUMBER mode_names[] = { diff --git a/src/main/conffile.c b/src/main/conffile.c index 49ea90739fd..8cdeaab3dfb 100644 --- a/src/main/conffile.c +++ b/src/main/conffile.c @@ -1917,6 +1917,12 @@ int cf_section_parse(CONF_SECTION *cs, void *base, CONF_PARSER const *variables) } } /* for all variables in the configuration section */ + /* + * Ensure we have a proper terminator, type so we catch + * missing terminators reliably + */ + rad_assert(variables[i].type == -1); + /* * Warn about items in the configuration which weren't * checked during parsing. diff --git a/src/main/connection.c b/src/main/connection.c index 7c21dac3f96..2df16196192 100644 --- a/src/main/connection.c +++ b/src/main/connection.c @@ -163,7 +163,7 @@ static const CONF_PARSER connection_config[] = { { "idle_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, fr_connection_pool_t, idle_timeout), "60" }, { "retry_delay", FR_CONF_OFFSET(PW_TYPE_INTEGER, fr_connection_pool_t, retry_delay), "1" }, { "spread", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, fr_connection_pool_t, spread), "no" }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /** Order connections by reserved most recently diff --git a/src/main/detail.c b/src/main/detail.c index 64625331c8d..da522358df8 100644 --- a/src/main/detail.c +++ b/src/main/detail.c @@ -1082,8 +1082,7 @@ static const CONF_PARSER detail_config[] = { { "retry_interval", FR_CONF_OFFSET(PW_TYPE_INTEGER, listen_detail_t, retry_interval), STRINGIFY(30) }, { "one_shot", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, listen_detail_t, one_shot), "no" }, { "track", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, listen_detail_t, track), "no" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; /* diff --git a/src/main/listen.c b/src/main/listen.c index ee0851dca65..1fdb6266d0a 100644 --- a/src/main/listen.c +++ b/src/main/listen.c @@ -920,8 +920,7 @@ static CONF_PARSER performance_config[] = { { "synchronous", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rad_listen_t, synchronous), NULL }, { "workers", FR_CONF_OFFSET(PW_TYPE_INTEGER, rad_listen_t, workers), NULL }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; @@ -933,8 +932,7 @@ static CONF_PARSER limit_config[] = { { "lifetime", FR_CONF_OFFSET(PW_TYPE_INTEGER, listen_socket_t, limit.lifetime), "0" }, { "idle_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, listen_socket_t, limit.idle_timeout), STRINGIFY(30) }, #endif - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/main/mainconfig.c b/src/main/mainconfig.c index 2af8889723c..e14208d4ca1 100644 --- a/src/main/mainconfig.c +++ b/src/main/mainconfig.c @@ -105,7 +105,7 @@ static const CONF_PARSER startup_log_config[] = { { "logdir", FR_CONF_POINTER(PW_TYPE_STRING, &radlog_dir), "${localstatedir}/log"}, { "file", FR_CONF_POINTER(PW_TYPE_STRING, &main_config.log_file), "${logdir}/radius.log" }, { "requests", FR_CONF_POINTER(PW_TYPE_STRING | PW_TYPE_DEPRECATED, &default_log.file), NULL }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; @@ -121,7 +121,7 @@ static const CONF_PARSER startup_server_config[] = { { "log_file", FR_CONF_POINTER(PW_TYPE_STRING, &main_config.log_file), NULL }, { "log_destination", FR_CONF_POINTER(PW_TYPE_STRING, &radlog_dest), NULL }, { "use_utc", FR_CONF_POINTER(PW_TYPE_BOOLEAN, &log_dates_utc), NULL }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; @@ -140,10 +140,8 @@ static const CONF_PARSER log_config[] = { { "msg_goodpass", FR_CONF_POINTER(PW_TYPE_STRING, &main_config.auth_goodpass_msg), NULL}, { "colourise",FR_CONF_POINTER(PW_TYPE_BOOLEAN, &do_colourise), NULL }, { "use_utc", FR_CONF_POINTER(PW_TYPE_BOOLEAN, &log_dates_utc), NULL }, - { "msg_denied", FR_CONF_POINTER(PW_TYPE_STRING, &main_config.denied_msg), - "You are already logged in - access denied" }, - - { NULL, -1, 0, NULL, NULL } + { "msg_denied", FR_CONF_POINTER(PW_TYPE_STRING, &main_config.denied_msg), "You are already logged in - access denied" }, + CONF_PARSER_TERMINATOR }; @@ -157,7 +155,7 @@ static const CONF_PARSER security_config[] = { #ifdef ENABLE_OPENSSL_VERSION_CHECK { "allow_vulnerable_openssl", FR_CONF_POINTER(PW_TYPE_STRING, &main_config.allow_vulnerable_openssl), "no"}, #endif - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static const CONF_PARSER resources[] = { @@ -167,8 +165,7 @@ static const CONF_PARSER resources[] = { * it exists. */ { "talloc_pool_size", FR_CONF_POINTER(PW_TYPE_INTEGER, &main_config.talloc_pool_size), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static const CONF_PARSER server_config[] = { @@ -218,8 +215,7 @@ static const CONF_PARSER server_config[] = { { "log_stripped_names", FR_CONF_POINTER(PW_TYPE_BOOLEAN | PW_TYPE_DEPRECATED, &log_stripped_names), NULL }, { "security", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) security_config }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; @@ -243,8 +239,7 @@ static const CONF_PARSER bootstrap_security_config[] = { #endif { "chroot", FR_CONF_POINTER(PW_TYPE_STRING, &chroot_dir), NULL }, { "allow_core_dumps", FR_CONF_POINTER(PW_TYPE_BOOLEAN, &allow_core_dumps), "no" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static const CONF_PARSER bootstrap_config[] = { @@ -266,8 +261,7 @@ static const CONF_PARSER bootstrap_config[] = { #endif { "chroot", FR_CONF_POINTER(PW_TYPE_STRING | PW_TYPE_DEPRECATED, &chroot_dir), NULL }, { "allow_core_dumps", FR_CONF_POINTER(PW_TYPE_BOOLEAN | PW_TYPE_DEPRECATED, &allow_core_dumps), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; diff --git a/src/main/radwho.c b/src/main/radwho.c index 1d012c5899a..29c1a34d797 100644 --- a/src/main/radwho.c +++ b/src/main/radwho.c @@ -80,8 +80,8 @@ static struct radutmp_config_t { } radutmpconfig; static const CONF_PARSER module_config[] = { - { "filename", FR_CONF_POINTER(PW_TYPE_FILE_INPUT, &radutmpconfig.radutmp_fn), RADUTMP }, - { NULL, -1, 0, NULL, NULL } + { "filename", FR_CONF_POINTER(PW_TYPE_FILE_INPUT, &radutmpconfig.radutmp_fn), RADUTMP }, + CONF_PARSER_TERMINATOR }; /* diff --git a/src/main/realms.c b/src/main/realms.c index 0a657288a64..71fd4a5d010 100644 --- a/src/main/realms.c +++ b/src/main/realms.c @@ -110,8 +110,7 @@ static const CONF_PARSER proxy_config[] = { { "dead_time", FR_CONF_OFFSET(PW_TYPE_INTEGER, realm_config_t, dead_time), STRINGIFY(DEAD_TIME) }, { "wake_all_if_all_dead", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, realm_config_t, wake_all_if_all_dead), "no" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; #endif @@ -290,8 +289,7 @@ static CONF_PARSER limit_config[] = { { "max_requests", FR_CONF_OFFSET(PW_TYPE_INTEGER, home_server_t, limit.max_requests), "0" }, { "lifetime", FR_CONF_OFFSET(PW_TYPE_INTEGER, home_server_t, limit.lifetime), "0" }, { "idle_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, home_server_t, limit.idle_timeout), "0" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; #ifdef WITH_COA @@ -300,8 +298,7 @@ static CONF_PARSER home_server_coa[] = { { "mrt", FR_CONF_OFFSET(PW_TYPE_INTEGER, home_server_t, coa_mrt), STRINGIFY(16) }, { "mrc", FR_CONF_OFFSET(PW_TYPE_INTEGER, home_server_t, coa_mrc), STRINGIFY(5) }, { "mrd", FR_CONF_OFFSET(PW_TYPE_INTEGER, home_server_t, coa_mrd), STRINGIFY(30) }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; #endif @@ -354,7 +351,7 @@ static CONF_PARSER home_server_config[] = { { "coa", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) home_server_coa }, #endif - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/main/threads.c b/src/main/threads.c index c5600eefaff..58bc90803bd 100644 --- a/src/main/threads.c +++ b/src/main/threads.c @@ -202,7 +202,7 @@ static const CONF_PARSER thread_config[] = { { "auto_limit_acct", FR_CONF_POINTER(PW_TYPE_BOOLEAN, &thread_pool.auto_limit_acct), NULL }, #endif #endif - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; #endif diff --git a/src/main/tls.c b/src/main/tls.c index 75b74d258ea..b5c665b8fae 100644 --- a/src/main/tls.c +++ b/src/main/tls.c @@ -954,13 +954,13 @@ static CONF_PARSER cache_config[] = { { "max_entries", FR_CONF_OFFSET(PW_TYPE_INTEGER, fr_tls_server_conf_t, session_cache_size), "255" }, { "persist_dir", FR_CONF_OFFSET(PW_TYPE_STRING, fr_tls_server_conf_t, session_cache_path), NULL }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static CONF_PARSER verify_config[] = { { "tmpdir", FR_CONF_OFFSET(PW_TYPE_STRING, fr_tls_server_conf_t, verify_tmp_dir), NULL }, { "client", FR_CONF_OFFSET(PW_TYPE_STRING, fr_tls_server_conf_t, verify_client_cert_cmd), NULL }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; #ifdef HAVE_OPENSSL_OCSP_H @@ -971,7 +971,7 @@ static CONF_PARSER ocsp_config[] = { { "use_nonce", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, fr_tls_server_conf_t, ocsp_use_nonce), "yes" }, { "timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, fr_tls_server_conf_t, ocsp_timeout), "yes" }, { "softfail", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, fr_tls_server_conf_t, ocsp_softfail), "no" }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; #endif @@ -1033,8 +1033,7 @@ static CONF_PARSER tls_server_config[] = { #ifdef HAVE_OPENSSL_OCSP_H { "ocsp", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) ocsp_config }, #endif - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; @@ -1076,8 +1075,7 @@ static CONF_PARSER tls_client_config[] = { #ifdef SSL_OP_NO_TLSv1_2 { "disable_tlsv1_2", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, fr_tls_server_conf_t, disable_tlsv1_2), NULL }, #endif - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_always/rlm_always.c b/src/modules/rlm_always/rlm_always.c index 61830459dcb..6a75164a89d 100644 --- a/src/modules/rlm_always/rlm_always.c +++ b/src/modules/rlm_always/rlm_always.c @@ -49,8 +49,7 @@ static const CONF_PARSER module_config[] = { { "rcode", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_always_t, rcode_str), "fail" }, { "simulcount", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_always_t, simulcount), "0" }, { "mpp", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_always_t, mpp), "no" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static int mod_instantiate(CONF_SECTION *conf, void *instance) diff --git a/src/modules/rlm_attr_filter/rlm_attr_filter.c b/src/modules/rlm_attr_filter/rlm_attr_filter.c index ebaecdbb2f3..a2ffe6f9d10 100644 --- a/src/modules/rlm_attr_filter/rlm_attr_filter.c +++ b/src/modules/rlm_attr_filter/rlm_attr_filter.c @@ -49,7 +49,7 @@ static const CONF_PARSER module_config[] = { { "filename", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_attr_filter_t, filename), NULL }, { "key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_attr_filter_t, key), "%{Realm}" }, { "relaxed", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_attr_filter_t, relaxed), "no" }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static void check_pair(REQUEST *request, VALUE_PAIR *check_item, VALUE_PAIR *reply_item, int *pass, int *fail) diff --git a/src/modules/rlm_cache/drivers/rlm_cache_memcached/rlm_cache_memcached.c b/src/modules/rlm_cache/drivers/rlm_cache_memcached/rlm_cache_memcached.c index 65b42474d2f..a8161cb3c11 100644 --- a/src/modules/rlm_cache/drivers/rlm_cache_memcached/rlm_cache_memcached.c +++ b/src/modules/rlm_cache/drivers/rlm_cache_memcached/rlm_cache_memcached.c @@ -40,8 +40,7 @@ typedef struct rlm_cache_memcached { static const CONF_PARSER driver_config[] = { { "options", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_cache_memcached_t, options), "--SERVER=localhost" }, - - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; /** Free a connection handle diff --git a/src/modules/rlm_cache/rlm_cache.c b/src/modules/rlm_cache/rlm_cache.c index 1a3f0cdcb9a..cdbfa38c321 100644 --- a/src/modules/rlm_cache/rlm_cache.c +++ b/src/modules/rlm_cache/rlm_cache.c @@ -49,8 +49,7 @@ static const CONF_PARSER module_config[] = { /* Should be a type which matches time_t, @fixme before 2038 */ { "epoch", FR_CONF_OFFSET(PW_TYPE_SIGNED, rlm_cache_t, epoch), "0" }, { "add_stats", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_cache_t, stats), "no" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static int cache_acquire(rlm_cache_handle_t **out, rlm_cache_t *inst, REQUEST *request) diff --git a/src/modules/rlm_couchbase/rlm_couchbase.c b/src/modules/rlm_couchbase/rlm_couchbase.c index a5365ed24a3..a73244c2cc9 100644 --- a/src/modules/rlm_couchbase/rlm_couchbase.c +++ b/src/modules/rlm_couchbase/rlm_couchbase.c @@ -42,7 +42,7 @@ RCSID("$Id$") */ static const CONF_PARSER client_config[] = { { "view", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_couchbase_t, client_view), "_design/client/_view/by_name" }, - {NULL, -1, 0, NULL, NULL} /* end the list */ + CONF_PARSER_TERMINATOR }; /** @@ -66,7 +66,7 @@ static const CONF_PARSER module_config[] = { { "simul_vkey", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_couchbase_t, simul_vkey), "%{tolower:%{%{Stripped-User-Name}:-%{User-Name}}}" }, { "verify_simul", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_couchbase_t, verify_simul), NULL }, /* NULL defaults to "no" */ #endif - {NULL, -1, 0, NULL, NULL} /* end the list */ + CONF_PARSER_TERMINATOR }; /** Initialize the rlm_couchbase module diff --git a/src/modules/rlm_counter/rlm_counter.c b/src/modules/rlm_counter/rlm_counter.c index 41a52b3a5bf..7f19824dd30 100644 --- a/src/modules/rlm_counter/rlm_counter.c +++ b/src/modules/rlm_counter/rlm_counter.c @@ -135,8 +135,7 @@ static const CONF_PARSER module_config[] = { { "cache-size", FR_CONF_OFFSET(PW_TYPE_INTEGER | PW_TYPE_DEPRECATED, rlm_counter_t, cache_size), NULL }, { "cache_size", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_counter_t, cache_size), "1000" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_date/rlm_date.c b/src/modules/rlm_date/rlm_date.c index be28a7ed35b..bff40530d1a 100644 --- a/src/modules/rlm_date/rlm_date.c +++ b/src/modules/rlm_date/rlm_date.c @@ -36,7 +36,7 @@ typedef struct rlm_date_t { static const CONF_PARSER module_config[] = { { "format", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_date_t, fmt), "%b %e %Y %H:%M:%S %Z" }, - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; DIAG_OFF(format-nonliteral) diff --git a/src/modules/rlm_detail/rlm_detail.c b/src/modules/rlm_detail/rlm_detail.c index 603129698fe..6442238d870 100644 --- a/src/modules/rlm_detail/rlm_detail.c +++ b/src/modules/rlm_detail/rlm_detail.c @@ -81,7 +81,7 @@ static const CONF_PARSER module_config[] = { { "locking", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_detail_t, locking), "no" }, { "escape_filenames", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_detail_t, escape), "no" }, { "log_packet_header", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_detail_t, log_srcdst), "no" }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_eap/rlm_eap.c b/src/modules/rlm_eap/rlm_eap.c index 750f8a46733..5afdcc3162d 100644 --- a/src/modules/rlm_eap/rlm_eap.c +++ b/src/modules/rlm_eap/rlm_eap.c @@ -36,8 +36,7 @@ static const CONF_PARSER module_config[] = { { "ignore_unknown_eap_types", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_t, ignore_unknown_types), "no" }, { "cisco_accounting_username_bug", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_t, mod_accounting_username_bug), "no" }, { "max_sessions", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_eap_t, max_sessions), "2048" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_eap/types/rlm_eap_gtc/rlm_eap_gtc.c b/src/modules/rlm_eap/types/rlm_eap_gtc/rlm_eap_gtc.c index aeb73533430..454e1e70c41 100644 --- a/src/modules/rlm_eap/types/rlm_eap_gtc/rlm_eap_gtc.c +++ b/src/modules/rlm_eap/types/rlm_eap_gtc/rlm_eap_gtc.c @@ -42,10 +42,8 @@ typedef struct rlm_eap_gtc_t { static CONF_PARSER module_config[] = { { "challenge", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_gtc_t, challenge), "Password: " }, - { "auth_type", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_gtc_t, auth_type_name), "PAP" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_eap/types/rlm_eap_ikev2/rlm_eap_ikev2.c b/src/modules/rlm_eap/types/rlm_eap_ikev2/rlm_eap_ikev2.c index ffc049f2196..9733632f0d4 100644 --- a/src/modules/rlm_eap/types/rlm_eap_ikev2/rlm_eap_ikev2.c +++ b/src/modules/rlm_eap/types/rlm_eap_ikev2/rlm_eap_ikev2.c @@ -95,8 +95,7 @@ CONF_PARSER module_config[] = { { "fast_dh_exchange", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_ikev2_t, enable_fast_dhex), "no" }, { "enable_fast_reauth", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_ikev2_t, enable_fast_reconnect), "yes" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static int set_mppe_keys(eap_handler_t *handler) diff --git a/src/modules/rlm_eap/types/rlm_eap_mschapv2/rlm_eap_mschapv2.c b/src/modules/rlm_eap/types/rlm_eap_mschapv2/rlm_eap_mschapv2.c index f086dfb5543..96660b70310 100644 --- a/src/modules/rlm_eap/types/rlm_eap_mschapv2/rlm_eap_mschapv2.c +++ b/src/modules/rlm_eap/types/rlm_eap_mschapv2/rlm_eap_mschapv2.c @@ -40,8 +40,7 @@ static CONF_PARSER module_config[] = { { "send_error", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_mschapv2_t, send_error), "no" }, { "identity", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_mschapv2_t, identity), NULL }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c b/src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c index 07031f57b36..d9d1930ccc6 100644 --- a/src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c +++ b/src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c @@ -67,8 +67,7 @@ static CONF_PARSER module_config[] = { { "require_client_cert", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_peap_t, req_client_cert), "no" }, { "soh_virtual_server", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_peap_t, soh_virtual_server), NULL }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c b/src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c index 506cc95cd4a..d1813abdbb7 100644 --- a/src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c +++ b/src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c @@ -46,7 +46,7 @@ static CONF_PARSER pwd_module_config[] = { { "fragment_size", FR_CONF_OFFSET(PW_TYPE_INTEGER, eap_pwd_t, fragment_size), "1020" }, { "server_id", FR_CONF_OFFSET(PW_TYPE_STRING, eap_pwd_t, server_id), NULL }, { "virtual_server", FR_CONF_OFFSET(PW_TYPE_STRING, eap_pwd_t, virtual_server), NULL }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static int mod_detach (void *arg) diff --git a/src/modules/rlm_eap/types/rlm_eap_tls/rlm_eap_tls.c b/src/modules/rlm_eap/types/rlm_eap_tls/rlm_eap_tls.c index 2102d6b2aa2..acd2dc7606f 100644 --- a/src/modules/rlm_eap/types/rlm_eap_tls/rlm_eap_tls.c +++ b/src/modules/rlm_eap/types/rlm_eap_tls/rlm_eap_tls.c @@ -42,10 +42,8 @@ USES_APPLE_DEPRECATED_API /* OpenSSL API has been deprecated by Apple */ static CONF_PARSER module_config[] = { { "tls", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_tls_t, tls_conf_name), NULL }, - { "virtual_server", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_tls_t, virtual_server), NULL }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_eap/types/rlm_eap_tnc/rlm_eap_tnc.c b/src/modules/rlm_eap/types/rlm_eap_tnc/rlm_eap_tnc.c index 96ec4a3b416..a1fdbc07c03 100644 --- a/src/modules/rlm_eap/types/rlm_eap_tnc/rlm_eap_tnc.c +++ b/src/modules/rlm_eap/types/rlm_eap_tnc/rlm_eap_tnc.c @@ -65,8 +65,7 @@ typedef struct rlm_eap_tnc { static CONF_PARSER module_config[] = { { "connection_string", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_eap_tnc_t, connection_string), "NAS Port: %{NAS-Port} NAS IP: %{NAS-IP-Address} NAS_PORT_TYPE: %{NAS-Port-Type}" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static int mod_instantiate(CONF_SECTION *cs, void **instance) diff --git a/src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c b/src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c index 81fcfc67ef5..84de581dbe5 100644 --- a/src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c +++ b/src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c @@ -82,8 +82,7 @@ static CONF_PARSER module_config[] = { { "virtual_server", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ttls_t, virtual_server), NULL }, { "include_length", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_ttls_t, include_length), "yes" }, { "require_client_cert", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_ttls_t, req_client_cert), "no" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_example/rlm_example.c b/src/modules/rlm_example/rlm_example.c index 89db7046dca..3dda051d589 100644 --- a/src/modules/rlm_example/rlm_example.c +++ b/src/modules/rlm_example/rlm_example.c @@ -50,8 +50,7 @@ static const CONF_PARSER module_config[] = { { "boolean", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_example_t, boolean), "no" }, { "string", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_example_t, string), NULL }, { "ipaddr", FR_CONF_OFFSET(PW_TYPE_IPV4_ADDR, rlm_example_t, ipaddr), "*" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static int rlm_example_cmp(UNUSED void *instance, REQUEST *request, UNUSED VALUE_PAIR *thing, VALUE_PAIR *check, diff --git a/src/modules/rlm_exec/rlm_exec.c b/src/modules/rlm_exec/rlm_exec.c index e7ce6e79702..465bfb1664c 100644 --- a/src/modules/rlm_exec/rlm_exec.c +++ b/src/modules/rlm_exec/rlm_exec.c @@ -63,8 +63,7 @@ static const CONF_PARSER module_config[] = { { "packet_type", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_exec_t, packet_type), NULL }, { "shell_escape", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_exec_t, shell_escape), "yes" }, { "timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_exec_t, timeout), NULL }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static char const special[] = "\\'\"`<>|; \t\r\n()[]?#$^&*="; diff --git a/src/modules/rlm_expr/rlm_expr.c b/src/modules/rlm_expr/rlm_expr.c index 7eda6d130cf..dd6e8748080 100644 --- a/src/modules/rlm_expr/rlm_expr.c +++ b/src/modules/rlm_expr/rlm_expr.c @@ -50,7 +50,7 @@ typedef struct rlm_expr_t { static const CONF_PARSER module_config[] = { { "safe_characters", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_expr_t, allowed_chars), "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /" }, - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_files/rlm_files.c b/src/modules/rlm_files/rlm_files.c index 6ca96c9fc52..4ca3dfd67a6 100644 --- a/src/modules/rlm_files/rlm_files.c +++ b/src/modules/rlm_files/rlm_files.c @@ -90,7 +90,7 @@ static const CONF_PARSER module_config[] = { { "postauth_usersfile", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, rlm_files_t, postauth_usersfile), NULL }, { "compat", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_DEPRECATED, rlm_files_t, compat_mode), NULL }, { "key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_files_t, key), NULL }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_idn/rlm_idn.c b/src/modules/rlm_idn/rlm_idn.c index 17f62296c3a..c0ce4369759 100644 --- a/src/modules/rlm_idn/rlm_idn.c +++ b/src/modules/rlm_idn/rlm_idn.c @@ -84,8 +84,7 @@ static const CONF_PARSER mod_config[] = { { "allow_unassigned", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_idn_t, allow_unassigned), "no" }, { "use_std3_ascii_rules", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_idn_t, use_std3_ascii_rules), "yes" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static ssize_t xlat_idna(void *instance, REQUEST *request, char const *fmt, char *out, size_t freespace) diff --git a/src/modules/rlm_ippool/rlm_ippool.c b/src/modules/rlm_ippool/rlm_ippool.c index dd068e6b397..7762b153e7c 100644 --- a/src/modules/rlm_ippool/rlm_ippool.c +++ b/src/modules/rlm_ippool/rlm_ippool.c @@ -128,8 +128,7 @@ static const CONF_PARSER module_config[] = { { "maximum-timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER | PW_TYPE_DEPRECATED, rlm_ippool_t, max_timeout), NULL }, { "maximum_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_ippool_t, max_timeout), "0" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_krb5/rlm_krb5.c b/src/modules/rlm_krb5/rlm_krb5.c index 1c0b08716b6..c80ec25d6e3 100644 --- a/src/modules/rlm_krb5/rlm_krb5.c +++ b/src/modules/rlm_krb5/rlm_krb5.c @@ -34,7 +34,7 @@ RCSID("$Id$") static const CONF_PARSER module_config[] = { { "keytab", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_krb5_t, keytabname), NULL }, { "service_principal", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_krb5_t, service_princ), NULL }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static int mod_detach(void *instance) diff --git a/src/modules/rlm_ldap/rlm_ldap.c b/src/modules/rlm_ldap/rlm_ldap.c index 0aaad88c0a7..13207ed1908 100644 --- a/src/modules/rlm_ldap/rlm_ldap.c +++ b/src/modules/rlm_ldap/rlm_ldap.c @@ -74,16 +74,14 @@ static CONF_PARSER sasl_mech_dynamic[] = { { "mech", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_TMPL | PW_TYPE_NOT_EMPTY, ldap_sasl_dynamic, mech), NULL }, { "proxy", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_TMPL, ldap_sasl_dynamic, proxy), NULL }, { "realm", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_TMPL, ldap_sasl_dynamic, realm), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static CONF_PARSER sasl_mech_static[] = { { "mech", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, ldap_sasl, mech), NULL }, { "proxy", FR_CONF_OFFSET(PW_TYPE_STRING, ldap_sasl, proxy), NULL }, { "realm", FR_CONF_OFFSET(PW_TYPE_STRING, ldap_sasl, realm), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* @@ -113,8 +111,7 @@ static CONF_PARSER tls_config[] = { */ { "start_tls", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_ldap_t, start_tls), "no" }, { "require_cert", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_ldap_t, tls_require_cert_str), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; @@ -122,8 +119,7 @@ static CONF_PARSER profile_config[] = { { "filter", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_TMPL, rlm_ldap_t, profile_filter), "(&)" }, //!< Correct filter for when the DN is known. { "attribute", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_ldap_t, profile_attr), NULL }, { "default", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_TMPL, rlm_ldap_t, default_profile), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* @@ -140,8 +136,7 @@ static CONF_PARSER user_config[] = { /* Should be deprecated */ { "sasl", FR_CONF_OFFSET(PW_TYPE_SUBSECTION, rlm_ldap_t, user_sasl), (void const *) sasl_mech_dynamic }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* @@ -158,16 +153,14 @@ static CONF_PARSER group_config[] = { { "cacheable_name", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_ldap_t, cacheable_group_name), "no" }, { "cacheable_dn", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_ldap_t, cacheable_group_dn), "no" }, { "cache_attribute", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_ldap_t, cache_attribute), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static CONF_PARSER client_config[] = { { "filter", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_ldap_t, clientobj_filter), NULL }, { "scope", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_ldap_t, clientobj_scope_str), "sub" }, { "base_dn", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_ldap_t, clientobj_base_dn), "" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* @@ -175,8 +168,7 @@ static CONF_PARSER client_config[] = { */ static const CONF_PARSER acct_section_config[] = { { "reference", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, ldap_acct_section_t, reference), "." }, - - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; /* @@ -216,8 +208,7 @@ static CONF_PARSER option_config[] = { #ifdef LDAP_OPT_X_KEEPALIVE_INTERVAL { "interval", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_ldap_t, keepalive_interval), "30" }, #endif - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; @@ -256,8 +247,7 @@ static const CONF_PARSER module_config[] = { { "options", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) option_config }, { "tls", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) tls_config }, - - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; static ssize_t ldapquote_xlat(UNUSED void *instance, REQUEST *request, char const *fmt, char *out, size_t freespace) diff --git a/src/modules/rlm_linelog/rlm_linelog.c b/src/modules/rlm_linelog/rlm_linelog.c index fd6d41aff19..906b668715b 100644 --- a/src/modules/rlm_linelog/rlm_linelog.c +++ b/src/modules/rlm_linelog/rlm_linelog.c @@ -88,7 +88,7 @@ static const CONF_PARSER module_config[] = { { "group", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_linelog_t, group), NULL }, { "format", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_linelog_t, line), NULL }, { "reference", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_linelog_t, reference), NULL }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_logintime/rlm_logintime.c b/src/modules/rlm_logintime/rlm_logintime.c index 6e263fb57c9..ca8249d36ab 100644 --- a/src/modules/rlm_logintime/rlm_logintime.c +++ b/src/modules/rlm_logintime/rlm_logintime.c @@ -53,10 +53,9 @@ typedef struct rlm_logintime_t { * buffer over-flows. */ static const CONF_PARSER module_config[] = { - { "minimum-timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER | PW_TYPE_DEPRECATED, rlm_logintime_t, min_time), NULL }, - { "minimum_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_logintime_t, min_time), "60" }, - - { NULL, -1, 0, NULL, NULL } + { "minimum-timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER | PW_TYPE_DEPRECATED, rlm_logintime_t, min_time), NULL }, + { "minimum_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_logintime_t, min_time), "60" }, + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_mschap/rlm_mschap.c b/src/modules/rlm_mschap/rlm_mschap.c index 2335c8d1dc2..f4387019cf6 100644 --- a/src/modules/rlm_mschap/rlm_mschap.c +++ b/src/modules/rlm_mschap/rlm_mschap.c @@ -539,7 +539,7 @@ static const CONF_PARSER passchange_config[] = { { "ntlm_auth_username", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_mschap_t, ntlm_cpw_username), NULL }, { "ntlm_auth_domain", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_mschap_t, ntlm_cpw_domain), NULL }, { "local_cpw", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_mschap_t, local_cpw), NULL }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static const CONF_PARSER module_config[] = { @@ -560,8 +560,7 @@ static const CONF_PARSER module_config[] = { #ifdef __APPLE__ { "use_open_directory", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_mschap_t, open_directory), "yes" }, #endif - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_otp/rlm_otp.c b/src/modules/rlm_otp/rlm_otp.c index 140bb197e18..662a20298b3 100644 --- a/src/modules/rlm_otp/rlm_otp.c +++ b/src/modules/rlm_otp/rlm_otp.c @@ -48,8 +48,7 @@ static const CONF_PARSER module_config[] = { { "mschapv2_mppe_bits", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_otp_t, mschapv2_mppe_types), "2" }, { "mschap_mppe", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_otp_t, mschap_mppe_policy), "2" }, { "mschap_mppe_bits", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_otp_t, mschap_mppe_types), "2" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_pam/rlm_pam.c b/src/modules/rlm_pam/rlm_pam.c index 8ca6cc6f787..70d8332c511 100644 --- a/src/modules/rlm_pam/rlm_pam.c +++ b/src/modules/rlm_pam/rlm_pam.c @@ -53,7 +53,7 @@ typedef struct rlm_pam_t { static const CONF_PARSER module_config[] = { { "pam_auth", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_pam_t, pam_auth_name), "radiusd" }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; typedef struct rlm_pam_data_t { diff --git a/src/modules/rlm_pap/rlm_pap.c b/src/modules/rlm_pap/rlm_pap.c index 75afbdbe375..0e678ac2538 100644 --- a/src/modules/rlm_pap/rlm_pap.c +++ b/src/modules/rlm_pap/rlm_pap.c @@ -64,7 +64,7 @@ typedef struct rlm_pap_t { */ static const CONF_PARSER module_config[] = { { "normalise", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_pap_t, normify), "yes" }, - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_passwd/rlm_passwd.c b/src/modules/rlm_passwd/rlm_passwd.c index 32e9c0e7d4f..e9957d23d3a 100644 --- a/src/modules/rlm_passwd/rlm_passwd.c +++ b/src/modules/rlm_passwd/rlm_passwd.c @@ -402,8 +402,7 @@ static const CONF_PARSER module_config[] = { { "hashsize", FR_CONF_OFFSET(PW_TYPE_INTEGER | PW_TYPE_DEPRECATED, rlm_passwd_t, hash_size), NULL }, { "hash_size", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_passwd_t, hash_size), "100" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static int mod_instantiate(CONF_SECTION *conf, void *instance) diff --git a/src/modules/rlm_perl/rlm_perl.c b/src/modules/rlm_perl/rlm_perl.c index 49f52f39fc6..9a354846cd7 100644 --- a/src/modules/rlm_perl/rlm_perl.c +++ b/src/modules/rlm_perl/rlm_perl.c @@ -116,8 +116,7 @@ static const CONF_PARSER module_config[] = { { "func_start_accounting", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_perl_t, func_start_accounting), NULL }, { "func_stop_accounting", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_perl_t, func_stop_accounting), NULL }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_preprocess/rlm_preprocess.c b/src/modules/rlm_preprocess/rlm_preprocess.c index bbcaf18e15e..ce75ac84943 100644 --- a/src/modules/rlm_preprocess/rlm_preprocess.c +++ b/src/modules/rlm_preprocess/rlm_preprocess.c @@ -57,7 +57,7 @@ static const CONF_PARSER module_config[] = { #if 0 { "with_cablelabs_vsa_hack", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_preprocess_t, with_cablelabs_vsa_hack), NULL }, #endif - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_python/rlm_python.c b/src/modules/rlm_python/rlm_python.c index 47ca5ec4463..22456a0300c 100644 --- a/src/modules/rlm_python/rlm_python.c +++ b/src/modules/rlm_python/rlm_python.c @@ -102,8 +102,7 @@ static CONF_PARSER module_config[] = { #undef A { "python_path", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_python_t, python_path), NULL }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static struct { diff --git a/src/modules/rlm_radutmp/rlm_radutmp.c b/src/modules/rlm_radutmp/rlm_radutmp.c index f30068419fe..b5426181538 100644 --- a/src/modules/rlm_radutmp/rlm_radutmp.c +++ b/src/modules/rlm_radutmp/rlm_radutmp.c @@ -66,7 +66,7 @@ static const CONF_PARSER module_config[] = { { "permissions", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_radutmp_t, permission), "0644" }, { "callerid", FR_CONF_OFFSET(PW_TYPE_BOOLEAN | PW_TYPE_DEPRECATED, rlm_radutmp_t, caller_id_ok), NULL }, { "caller_id", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_radutmp_t, caller_id_ok), "no" }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_realm/rlm_realm.c b/src/modules/rlm_realm/rlm_realm.c index c7ab893b23e..349809521e1 100644 --- a/src/modules/rlm_realm/rlm_realm.c +++ b/src/modules/rlm_realm/rlm_realm.c @@ -47,19 +47,17 @@ typedef struct rlm_realm_t { } rlm_realm_t; static CONF_PARSER module_config[] = { - { "format", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t, format_string), "suffix" }, - { "delimiter", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t, delim), "@" }, - { "ignore_default", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_realm_t, ignore_default), "no" }, - { "ignore_null", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_realm_t, ignore_null), "no" }, - + { "format", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t, format_string), "suffix" }, + { "delimiter", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t, delim), "@" }, + { "ignore_default", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_realm_t, ignore_default), "no" }, + { "ignore_null", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_realm_t, ignore_null), "no" }, #ifdef HAVE_TRUST_ROUTER_TR_DH_H - { "default_community", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t,default_community), "none" }, - { "rp_realm", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t,rp_realm), "none" }, - { "trust_router", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t,trust_router), "none" }, - { "tr_port", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_realm_t,tr_port), "0" }, + { "default_community", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t,default_community), "none" }, + { "rp_realm", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t,rp_realm), "none" }, + { "trust_router", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_realm_t,trust_router), "none" }, + { "tr_port", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_realm_t,tr_port), "0" }, #endif - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_redis/rlm_redis.c b/src/modules/rlm_redis/rlm_redis.c index 561e0f365d8..689aaff1af7 100644 --- a/src/modules/rlm_redis/rlm_redis.c +++ b/src/modules/rlm_redis/rlm_redis.c @@ -36,8 +36,7 @@ static const CONF_PARSER module_config[] = { { "port", FR_CONF_OFFSET(PW_TYPE_SHORT, REDIS_INST, port), "6379" }, { "database", FR_CONF_OFFSET(PW_TYPE_INTEGER, REDIS_INST, database), "0" }, { "password", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_SECRET, REDIS_INST, password), NULL }, - - { NULL, -1, 0, NULL, NULL} /* end the list */ + CONF_PARSER_TERMINATOR }; static int _mod_conn_free(REDISSOCK *dissocket) diff --git a/src/modules/rlm_rediswho/rlm_rediswho.c b/src/modules/rlm_rediswho/rlm_rediswho.c index 0b41a613d89..b8b8cc102c3 100644 --- a/src/modules/rlm_rediswho/rlm_rediswho.c +++ b/src/modules/rlm_rediswho/rlm_rediswho.c @@ -62,8 +62,7 @@ static CONF_PARSER module_config[] = { { "insert", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_XLAT, rlm_rediswho_t, insert), NULL }, { "trim", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_rediswho_t, trim), NULL }, /* required only if trim_count > 0 */ { "expire", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_XLAT, rlm_rediswho_t, expire), NULL }, - - { NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_rest/rlm_rest.c b/src/modules/rlm_rest/rlm_rest.c index 0ffd071bbc8..cc5bb5cf595 100644 --- a/src/modules/rlm_rest/rlm_rest.c +++ b/src/modules/rlm_rest/rlm_rest.c @@ -43,8 +43,7 @@ static CONF_PARSER tls_config[] = { { "random_file", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_rest_section_t, tls_random_file), NULL }, { "check_cert", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_rest_section_t, tls_check_cert), "yes" }, { "check_cert_cn", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_rest_section_t, tls_check_cert_cn), "yes" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* @@ -75,15 +74,13 @@ static const CONF_PARSER section_config[] = { /* TLS Parameters */ { "tls", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) tls_config }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static const CONF_PARSER module_config[] = { { "connect_uri", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_rest_t, connect_uri), NULL }, { "connect_timeout", FR_CONF_OFFSET(PW_TYPE_TIMEVAL, rlm_rest_t, connect_timeout_tv), "4.0" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static int rlm_rest_perform(rlm_rest_t *instance, rlm_rest_section_t *section, void *handle, REQUEST *request, diff --git a/src/modules/rlm_ruby/rlm_ruby.c b/src/modules/rlm_ruby/rlm_ruby.c index fb4db440f02..3abc2c70586 100644 --- a/src/modules/rlm_ruby/rlm_ruby.c +++ b/src/modules/rlm_ruby/rlm_ruby.c @@ -88,7 +88,7 @@ typedef struct rlm_ruby_t { static const CONF_PARSER module_config[] = { { "filename", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, struct rlm_ruby_t, filename), NULL }, { "module", FR_CONF_OFFSET(PW_TYPE_STRING, struct rlm_ruby_t, module_name), "Radiusd" }, - { NULL, -1, 0, NULL, NULL } /* end of module_config */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_securid/rlm_securid.c b/src/modules/rlm_securid/rlm_securid.c index 795be67cff2..ddb9bba1967 100644 --- a/src/modules/rlm_securid/rlm_securid.c +++ b/src/modules/rlm_securid/rlm_securid.c @@ -44,7 +44,7 @@ static const CONF_PARSER module_config[] = { { "max_sessions", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_securid_t, max_sessions), "2048" }, { "max_trips_per_session", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_securid_t, max_trips_per_session), NULL }, { "max_round_trips", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_securid_t, max_trips_per_session), "6" }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_smsotp/rlm_smsotp.c b/src/modules/rlm_smsotp/rlm_smsotp.c index 9428fff9baa..6215b03dbde 100644 --- a/src/modules/rlm_smsotp/rlm_smsotp.c +++ b/src/modules/rlm_smsotp/rlm_smsotp.c @@ -39,8 +39,7 @@ static const CONF_PARSER module_config[] = { { "socket", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_smsotp_t, socket), "/var/run/smsotp_socket" }, { "challenge_message", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_smsotp_t, challenge), "Enter Mobile PIN" }, { "challenge_type", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_smsotp_t, authtype), "smsotp-reply" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static int _mod_conn_free(int *fdp) diff --git a/src/modules/rlm_soh/rlm_soh.c b/src/modules/rlm_soh/rlm_soh.c index 62d23da7dbe..b0e0dfb68d1 100644 --- a/src/modules/rlm_soh/rlm_soh.c +++ b/src/modules/rlm_soh/rlm_soh.c @@ -101,8 +101,7 @@ static const CONF_PARSER module_config[] = { * Do SoH over DHCP? */ { "dhcp", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_soh_t, dhcp), "no" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_sometimes/rlm_sometimes.c b/src/modules/rlm_sometimes/rlm_sometimes.c index cddff769b6d..1aa71b9e26f 100644 --- a/src/modules/rlm_sometimes/rlm_sometimes.c +++ b/src/modules/rlm_sometimes/rlm_sometimes.c @@ -54,8 +54,7 @@ static const CONF_PARSER module_config[] = { { "key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_ATTRIBUTE, rlm_sometimes_t, key), "User-Name" }, { "start", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_sometimes_t, start), "0" }, { "end", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_sometimes_t, end), "127" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static int mod_instantiate(CONF_SECTION *conf, void *instance) diff --git a/src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c b/src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c index 4b947e2054b..d37482f8151 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c @@ -92,16 +92,14 @@ static CONF_PARSER tls_config[] = { * MySQL Specific TLS attributes */ { "cipher", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_sql_mysql_config_t, tls_cipher), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static const CONF_PARSER driver_config[] = { { "tls", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) tls_config }, { "warnings", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_sql_mysql_config_t, warnings_str), "auto" }, - - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; /* Prototypes */ diff --git a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c index d978a55e270..1c2034ef1e0 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c @@ -71,8 +71,7 @@ typedef struct rlm_sql_postgres_conn { static CONF_PARSER driver_config[] = { { "send_application_name", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_sql_postgres_config_t, send_application_name), "no" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static int mod_instantiate(CONF_SECTION *conf, rlm_sql_config_t *config) diff --git a/src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c b/src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c index 879df888db7..b442abbd817 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c @@ -62,7 +62,7 @@ typedef struct rlm_sql_sqlite_config { static const CONF_PARSER driver_config[] = { { "filename", FR_CONF_OFFSET(PW_TYPE_FILE_OUTPUT | PW_TYPE_REQUIRED, rlm_sql_sqlite_config_t, filename), NULL }, { "busy_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_sql_sqlite_config_t, busy_timeout), "200" }, - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; /** Convert an sqlite status code to an sql_rcode_t diff --git a/src/modules/rlm_sql/rlm_sql.c b/src/modules/rlm_sql/rlm_sql.c index 79e40e92fef..e1e18c9c31c 100644 --- a/src/modules/rlm_sql/rlm_sql.c +++ b/src/modules/rlm_sql/rlm_sql.c @@ -44,7 +44,7 @@ RCSID("$Id$") static const CONF_PARSER query_config[] = { { "query", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_MULTI, rlm_sql_config_t, accounting.query), NULL }, - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; /* @@ -58,7 +58,7 @@ static const CONF_PARSER type_config[] = { { "interim-update", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) query_config }, { "stop", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) query_config }, - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; static const CONF_PARSER acct_config[] = { @@ -67,7 +67,7 @@ static const CONF_PARSER acct_config[] = { { "type", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) type_config }, - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; static const CONF_PARSER postauth_config[] = { @@ -75,8 +75,7 @@ static const CONF_PARSER postauth_config[] = { { "logfile", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sql_config_t, postauth.logfile), NULL }, { "query", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_MULTI, rlm_sql_config_t, postauth.query), NULL }, - - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; static const CONF_PARSER module_config[] = { @@ -120,8 +119,7 @@ static const CONF_PARSER module_config[] = { { "accounting", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) acct_config }, { "post-auth", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) postauth_config }, - - {NULL, -1, 0, NULL, NULL} + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_sqlcounter/rlm_sqlcounter.c b/src/modules/rlm_sqlcounter/rlm_sqlcounter.c index 94326c20512..5e9d9a03e64 100644 --- a/src/modules/rlm_sqlcounter/rlm_sqlcounter.c +++ b/src/modules/rlm_sqlcounter/rlm_sqlcounter.c @@ -100,8 +100,7 @@ static const CONF_PARSER module_config[] = { { "reply-name", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_DEPRECATED, rlm_sqlcounter_t, reply_name), NULL }, { "reply_name", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_ATTRIBUTE, rlm_sqlcounter_t, reply_name), "Session-Timeout" }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; static int find_next_reset(rlm_sqlcounter_t *inst, time_t timeval) diff --git a/src/modules/rlm_sqlhpwippool/rlm_sqlhpwippool.c b/src/modules/rlm_sqlhpwippool/rlm_sqlhpwippool.c index 56826b6a326..32b03bcb440 100644 --- a/src/modules/rlm_sqlhpwippool/rlm_sqlhpwippool.c +++ b/src/modules/rlm_sqlhpwippool/rlm_sqlhpwippool.c @@ -77,7 +77,7 @@ static CONF_PARSER module_config[] = { { "no_free_fail", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_sqlhpwippool_t, no_free_fail), "yes" }, { "free_after", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_sqlhpwippool_t, free_after), "300" }, { "sync_after", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_sqlhpwippool_t, sync_after), "25" }, - { NULL, -1, 0, NULL, NULL } /* end */ + CONF_PARSER_TERMINATOR }; int nvp_log(unsigned int line, rlm_sqlhpwippool_t *data, int lvl, char const *fmt, ...) CC_HINT(format (printf, 4, 5)); diff --git a/src/modules/rlm_sqlippool/rlm_sqlippool.c b/src/modules/rlm_sqlippool/rlm_sqlippool.c index 27a6a9dea1f..c99d039a04e 100644 --- a/src/modules/rlm_sqlippool/rlm_sqlippool.c +++ b/src/modules/rlm_sqlippool/rlm_sqlippool.c @@ -100,8 +100,7 @@ static CONF_PARSER message_config[] = { { "clear", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_clear), NULL }, { "failed", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_failed), NULL }, { "nopool", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_nopool), NULL }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* @@ -199,8 +198,7 @@ static CONF_PARSER module_config[] = { { "off_commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, off_commit), "COMMIT" }, { "messages", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) message_config }, - - { NULL, -1, 0, NULL, NULL } + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_test/rlm_test.c b/src/modules/rlm_test/rlm_test.c index 92ae60f41ba..22ecb605587 100644 --- a/src/modules/rlm_test/rlm_test.c +++ b/src/modules/rlm_test/rlm_test.c @@ -50,8 +50,7 @@ static const CONF_PARSER module_config[] = { { "boolean", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_test_t, boolean), "no" }, { "string", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_test_t, string), NULL }, { "ipaddr", FR_CONF_OFFSET(PW_TYPE_IPV4_ADDR, rlm_test_t, ipaddr), "*" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static int rlm_test_cmp(UNUSED void *instance, REQUEST *request, UNUSED VALUE_PAIR *thing, VALUE_PAIR *check, diff --git a/src/modules/rlm_unbound/rlm_unbound.c b/src/modules/rlm_unbound/rlm_unbound.c index e3c6f97d2fc..9f4b6ae06a0 100644 --- a/src/modules/rlm_unbound/rlm_unbound.c +++ b/src/modules/rlm_unbound/rlm_unbound.c @@ -57,7 +57,7 @@ typedef struct rlm_unbound_t { static const CONF_PARSER module_config[] = { { "filename", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_unbound_t, filename), "${modconfdir}/unbound/default.conf" }, { "timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_unbound_t, timeout), "3000" }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_unix/rlm_unix.c b/src/modules/rlm_unix/rlm_unix.c index 9ada080b1c4..590e59198ed 100644 --- a/src/modules/rlm_unix/rlm_unix.c +++ b/src/modules/rlm_unix/rlm_unix.c @@ -65,8 +65,7 @@ typedef struct rlm_unix { static const CONF_PARSER module_config[] = { { "radwtmp", FR_CONF_OFFSET(PW_TYPE_FILE_OUTPUT | PW_TYPE_REQUIRED, rlm_unix_t, radwtmp), "NULL" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_wimax/rlm_wimax.c b/src/modules/rlm_wimax/rlm_wimax.c index fac3052cb93..784ae635e9b 100644 --- a/src/modules/rlm_wimax/rlm_wimax.c +++ b/src/modules/rlm_wimax/rlm_wimax.c @@ -49,9 +49,8 @@ typedef struct rlm_wimax_t { * buffer over-flows. */ static const CONF_PARSER module_config[] = { - { "delete_mppe_keys", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_wimax_t, delete_mppe_keys), "no" }, - - { NULL, -1, 0, NULL, NULL } /* end the list */ + { "delete_mppe_keys", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_wimax_t, delete_mppe_keys), "no" }, + CONF_PARSER_TERMINATOR }; /* diff --git a/src/modules/rlm_yubikey/rlm_yubikey.c b/src/modules/rlm_yubikey/rlm_yubikey.c index fc58363a55d..b444b972fa6 100644 --- a/src/modules/rlm_yubikey/rlm_yubikey.c +++ b/src/modules/rlm_yubikey/rlm_yubikey.c @@ -41,7 +41,7 @@ RCSID("$Id$") static const CONF_PARSER validation_config[] = { { "client_id", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_yubikey_t, client_id), 0 }, { "api_key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_SECRET, rlm_yubikey_t, api_key), NULL }, - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; #endif @@ -53,7 +53,7 @@ static const CONF_PARSER module_config[] = { #ifdef HAVE_YKCLIENT { "validation", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) validation_config }, #endif - { NULL, -1, 0, NULL, NULL } /* end the list */ + CONF_PARSER_TERMINATOR }; static char const modhextab[] = "cbdefghijklnrtuv";