您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ FR_CONF_OFFSET函数代码示例

51自学网 2021-06-01 20:43:15
  C++
这篇教程C++ FR_CONF_OFFSET函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中FR_CONF_OFFSET函数的典型用法代码示例。如果您正苦于以下问题:C++ FR_CONF_OFFSET函数的具体用法?C++ FR_CONF_OFFSET怎么用?C++ FR_CONF_OFFSET使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了FR_CONF_OFFSET函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: FR_CONF_OFFSET

	int			stage;					//!< Processing stage.	uint32_t pac_lifetime;				//!< seconds to add to current time to describe PAC lifetime	char const		*authority_identity;			//!< The identity we present in the EAP-TLS	uint8_t			a_id[PAC_A_ID_LENGTH];			//!< The identity we present in the EAP-TLS	char const		*pac_opaque_key;			//!< The key used to encrypt PAC-Opaque	bool use_tunneled_reply;		//!< Use the reply attributes from the tunneled session in						//!< the non-tunneled reply to the client.	bool copy_request_to_tunnel;		//!< Use SOME of the request attributes from outside of the} rlm_eap_fast_t;static CONF_PARSER module_config[] = {	{ "tls", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_fast_t, tls_conf_name), NULL },	{ "default_eap_type", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_fast_t, default_method_name), "mschapv2" },	{ "virtual_server", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_NOT_EMPTY, rlm_eap_fast_t, virtual_server) , NULL},	{ "require_client_cert", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_fast_t, req_client_cert), "no" },	{ "pac_lifetime", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_eap_fast_t, pac_lifetime), "604800" },	{ "authority_identity", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_eap_fast_t, authority_identity), NULL },	{ "pac_opaque_key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_eap_fast_t, pac_opaque_key), NULL },	{ "copy_request_to_tunnel", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_fast_t, copy_request_to_tunnel), "no" },	{ "use_tunneled_reply", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_fast_t, use_tunneled_reply), "no" },	CONF_PARSER_TERMINATOR
开发者ID:xunmengdeganjue,项目名称:workTest,代码行数:30,


示例2: FR_CONF_OFFSET

	{ "never",	LDAP_DEREF_NEVER	},	{ "searching",	LDAP_DEREF_SEARCHING	},	{ "finding",	LDAP_DEREF_FINDING	},	{ "always",	LDAP_DEREF_ALWAYS	},	{  NULL , -1 }};/* *	TLS Configuration */static CONF_PARSER tls_config[] = {	/*	 *	Deprecated attributes	 */	{ "cacertfile", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_DEPRECATED, ldap_instance_t, tls_ca_file), NULL },	{ "ca_file", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, ldap_instance_t, tls_ca_file), NULL },	{ "cacertdir", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_DEPRECATED, ldap_instance_t, tls_ca_path), NULL },	{ "ca_path", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, ldap_instance_t, tls_ca_path), NULL },	{ "certfile", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_DEPRECATED, ldap_instance_t, tls_certificate_file), NULL },	{ "certificate_file", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, ldap_instance_t, tls_certificate_file), NULL },	{ "keyfile", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_DEPRECATED, ldap_instance_t, tls_private_key_file), NULL }, // OK if it changes on HUP	{ "private_key_file", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, ldap_instance_t, tls_private_key_file), NULL }, // OK if it changes on HUP	{ "randfile", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_DEPRECATED, ldap_instance_t, tls_random_file), NULL },	{ "random_file", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, ldap_instance_t, tls_random_file), NULL },	/*
开发者ID:masuz,项目名称:freeradius-server,代码行数:31,


示例3: items

#ifdef USE_ITHREADS	pthread_mutex_t	clone_mutex;#endif	HV		*rad_perlconf_hv;	//!< holds "config" items (perl %RAD_PERLCONF hash).} rlm_perl_t;/* *	A mapping of configuration file names to internal variables. */#define RLM_PERL_CONF(_x) { FR_CONF_OFFSET("func_" STRINGIFY(_x), FR_TYPE_STRING, rlm_perl_t, func_##_x), /			   .data = NULL, .dflt = STRINGIFY(_x), .quote = T_INVALID }static const CONF_PARSER module_config[] = {	{ FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT | FR_TYPE_REQUIRED, rlm_perl_t, module) },	RLM_PERL_CONF(authorize),	RLM_PERL_CONF(authenticate),	RLM_PERL_CONF(post_auth),	RLM_PERL_CONF(accounting),	RLM_PERL_CONF(preacct),	RLM_PERL_CONF(detach),	RLM_PERL_CONF(xlat),#ifdef WITH_PROXY	RLM_PERL_CONF(pre_proxy),	RLM_PERL_CONF(post_proxy),#endif#ifdef WITH_COA	RLM_PERL_CONF(recv_coa),
开发者ID:geaaru,项目名称:freeradius-server,代码行数:30,


示例4: FR_CONF_OFFSET

	/*	 *	How many session updates to keep track of per user	 */	int trim_count;	/*	 *	These are used only for parsing.  They aren't used at run-time.	 */	char const *insert;	char const *trim;	char const *expire;} rlm_rediswho_t;static CONF_PARSER section_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 },	CONF_PARSER_TERMINATOR};static CONF_PARSER module_config[] = {	{ "redis-instance-name", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_DEPRECATED, rlm_rediswho_t, redis_instance_name), NULL },	{ "redis_module_instance", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_rediswho_t, redis_instance_name), "redis" },	{ "trim-count", FR_CONF_OFFSET(PW_TYPE_SIGNED | PW_TYPE_DEPRECATED, rlm_rediswho_t, trim_count), NULL },	{ "trim_count", FR_CONF_OFFSET(PW_TYPE_SIGNED, rlm_rediswho_t, trim_count), "-1" },	/*	 *	These all smash the same variables, because we don't care about them right now.
开发者ID:janetuk,项目名称:freeradius,代码行数:31,


示例5: FR_CONF_OFFSET

 */typedef struct rlm_always_t {	char const	*name;		//!< Name of this instance of the always module.	char const	*rcode_str;	//!< The base value.	char const	*rcode_old;	//!< Make changing the rcode work with %{poke:} and radmin.	rlm_rcode_t	rcode;		//!< The integer constant representing rcode_str.	uint32_t	simulcount;	bool		mpp;} rlm_always_t;/* *	A mapping of configuration file names to internal variables. */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 */};static int mod_instantiate(CONF_SECTION *conf, void *instance){	rlm_always_t *inst = instance;	inst->name = cf_section_name1(conf);	if (!inst->name) inst->name = cf_section_name2(conf);	/*	 *	Convert the rcode string to an int	 */
开发者ID:bgmilne,项目名称:freeradius-server,代码行数:31,


示例6: FR_CONF_OFFSET

	uint32_t	dh_counter_max;	char const 	*default_auth_type;	char const	*users_file_name;	char const	*server_auth_type;	char const	*server_id_type;	bool		send_cert_request;	uint32_t	fast_expire;	bool		enable_fast_dhex;	bool		enable_fast_reconnect;} rlm_eap_ikev2_t;CONF_PARSER module_config[] = {	{ "ca_file", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, tls_ca_file), NULL  },	{ "private_key_file", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, tls_private_key_file), NULL  },	{ "private_key_password", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, tls_private_key_password), NULL  },	{ "certificate_file", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, tls_certificate_file), NULL  },	{ "crl_file", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, tls_crl), NULL  },	{ "id", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, id), NULL  },	{ "fragment_size", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_eap_ikev2_t, max_fragment_size), IKEv2_DEFAULT_MAX_FRAGMENT_SIZE_STR },	{ "dh_counter_max", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_eap_ikev2_t, dh_counter_max), IKEv2_DEFAULT_DH_COUNTER_MAX_STR },	{ "default_authtype", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, default_auth_type), "both" },	{ "usersfile", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, rlm_eap_ikev2_t, users_file_name),"${confdir}/users" },	{ "server_authtype", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, server_auth_type), "secret" },	{ "idtype", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_ikev2_t, server_id_type), IKEv2_DEFAULT_IDTYPE_STR },	{ "certreq", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_ikev2_t, send_cert_request), "no" },	{ "fast_timer_expire", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_eap_ikev2_t, fast_expire), "900" },
开发者ID:K1ngR1chard,项目名称:freeradius-server,代码行数:30,


示例7: items

#ifdef USE_ITHREADS	pthread_mutex_t	clone_mutex;#endif	HV		*rad_perlconf_hv;	//!< holds "config" items (perl %RAD_PERLCONF hash).} rlm_perl_t;/* *	A mapping of configuration file names to internal variables. */#define RLM_PERL_CONF(_x) { "func_" STRINGIFY(_x), PW_TYPE_STRING, /			offsetof(rlm_perl_t,func_##_x), NULL, STRINGIFY(_x)}static const CONF_PARSER module_config[] = {	{ "module", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_DEPRECATED, rlm_perl_t, module), NULL },	{ "filename", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_perl_t, module), NULL },	RLM_PERL_CONF(authorize),	RLM_PERL_CONF(authenticate),	RLM_PERL_CONF(post_auth),	RLM_PERL_CONF(accounting),	RLM_PERL_CONF(preacct),	RLM_PERL_CONF(checksimul),	RLM_PERL_CONF(detach),	RLM_PERL_CONF(xlat),#ifdef WITH_PROXY	RLM_PERL_CONF(pre_proxy),	RLM_PERL_CONF(post_proxy),#endif
开发者ID:sylphlin,项目名称:freeradius-server,代码行数:30,


示例8: FR_CONF_OFFSET

	bool			ipv4_integer;	//!< Whether IPv4 addresses should be cast to integers,						//!< for renew operations.	bool			copy_on_update; //!< Copy the address provided by ip_address to the						//!< allocated_address_attr if updates are successful.	fr_redis_cluster_t	*cluster;	//!< Redis cluster.} rlm_redis_ippool_t;static CONF_PARSER redis_config[] = {	REDIS_COMMON_CONFIG,	CONF_PARSER_TERMINATOR};static CONF_PARSER module_config[] = {	{ FR_CONF_OFFSET("pool_name", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, pool_name) },	{ FR_CONF_OFFSET("device", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, device_id) },	{ FR_CONF_OFFSET("gateway", FR_TYPE_TMPL, rlm_redis_ippool_t, gateway_id) },/	{ FR_CONF_OFFSET("offer_time", FR_TYPE_TMPL, rlm_redis_ippool_t, offer_time) },	{ FR_CONF_OFFSET("lease_time", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, lease_time) },	{ FR_CONF_OFFSET("wait_num", FR_TYPE_UINT32, rlm_redis_ippool_t, wait_num) },	{ FR_CONF_OFFSET("wait_timeout", FR_TYPE_TIMEVAL, rlm_redis_ippool_t, wait_timeout) },	{ FR_CONF_OFFSET("requested_address", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, requested_address), .dflt = "%{%{DHCP-Requested-IP-Address}:-%{DHCP-Client-IP-Address}}", .quote = T_DOUBLE_QUOTED_STRING },	{ FR_CONF_DEPRECATED("ip_address", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, NULL) },	{ FR_CONF_OFFSET("allocated_address_attr", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE | FR_TYPE_REQUIRED, rlm_redis_ippool_t, allocated_address_attr), .dflt = "&reply:DHCP-Your-IP-Address", .quote = T_BARE_WORD },	{ FR_CONF_DEPRECATED("reply_attr", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE | FR_TYPE_REQUIRED, rlm_redis_ippool_t, NULL) },
开发者ID:FreeRADIUS,项目名称:freeradius-server,代码行数:31,


示例9: FR_CONF_OFFSET

#define LOG_PREFIX "%s - "#define LOG_PREFIX_ARGS inst->config.name#include <freeradius-devel/server/base.h>#include <freeradius-devel/server/module.h>#include <freeradius-devel/server/modpriv.h>#include <freeradius-devel/server/dl.h>#include <freeradius-devel/server/rad_assert.h>#include "rlm_cache.h"extern rad_module_t rlm_cache;static const CONF_PARSER module_config[] = {	{ FR_CONF_OFFSET("driver", FR_TYPE_STRING, rlm_cache_config_t, driver_name), .dflt = "rlm_cache_rbtree" },	{ FR_CONF_OFFSET("key", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_cache_config_t, key) },	{ FR_CONF_OFFSET("ttl", FR_TYPE_UINT32, rlm_cache_config_t, ttl), .dflt = "500" },	{ FR_CONF_OFFSET("max_entries", FR_TYPE_UINT32, rlm_cache_config_t, max_entries), .dflt = "0" },	/* Should be a type which matches time_t, @fixme before 2038 */	{ FR_CONF_OFFSET("epoch", FR_TYPE_INT32, rlm_cache_config_t, epoch), .dflt = "0" },	{ FR_CONF_OFFSET("add_stats", FR_TYPE_BOOL, rlm_cache_config_t, stats), .dflt = "no" },	CONF_PARSER_TERMINATOR};static fr_dict_t *dict_freeradius;extern fr_dict_autoload_t rlm_cache_dict[];fr_dict_autoload_t rlm_cache_dict[] = {	{ .out = &dict_freeradius, .proto = "freeradius" },
开发者ID:geaaru,项目名称:freeradius-server,代码行数:30,


示例10: strlen

					 vp[4] ? vp[4]->vp_uint32 : 0,					 vp[5] ? vp[5]->vp_uint32 : 0);			}			return strlen(*out);		}	}	return 0;}static const CONF_PARSER module_config[] = {	/*	 * Do SoH over DHCP?	 */	{ FR_CONF_OFFSET("dhcp", FR_TYPE_BOOL, rlm_soh_t, dhcp), .dflt = "no" },	CONF_PARSER_TERMINATOR};static rlm_rcode_t CC_HINT(nonnull) mod_post_auth(void *instance, UNUSED void *thread, REQUEST *request){#ifdef WITH_DHCP	int			rcode;	VALUE_PAIR		*vp;	rlm_soh_t const		*inst = instance;	if (!inst->dhcp) return RLM_MODULE_NOOP;	vp = fr_pair_find_by_da(request->packet->vps, attr_dhcp_vendor, TAG_ANY);	if (vp) {		/*
开发者ID:geaaru,项目名称:freeradius-server,代码行数:31,


示例11: FR_CONF_OFFSET

#include <freeradius-devel/libradius.h>#include <freeradius-devel/modules.h>#include <freeradius-devel/rad_assert.h>#include <libcouchbase/couchbase.h>#include <json/json.h>#include "mod.h"#include "couchbase.h"#include "jsonc_missing.h"/** * Module Configuration */static const CONF_PARSER module_config[] = {	{ "acct_key", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_couchbase_t, acct_key), "radacct_%{%{Acct-Unique-Session-Id}:-%{Acct-Session-Id}}" },	{ "doctype", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_couchbase_t, doctype), "radacct" },	{ "server", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_couchbase_t, server), NULL },	{ "bucket", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_couchbase_t, bucket), NULL },	{ "password", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_couchbase_t, password), NULL },	{ "expire", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_couchbase_t, expire), 0 },	{ "user_key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_couchbase_t, user_key), "raduser_%{md5:%{tolower:%{%{Stripped-User-Name}:-%{User-Name}}}}" },	{NULL, -1, 0, NULL, NULL}     /* end the list */};/* initialize couchbase connection */static int mod_instantiate(CONF_SECTION *conf, void *instance) {	rlm_couchbase_t *inst = instance;   /* our module instance */	{		char *server, *p;
开发者ID:amirdaly,项目名称:freeradius-server,代码行数:31,


示例12: FR_CONF_OFFSET

		struct timeval		timeout;		//!< How long to wait for read/write operations.	} unix;	linelog_net_t		tcp;			//!< TCP server.	linelog_net_t		udp;			//!< UDP server.	CONF_SECTION		*cs;			//!< #CONF_SECTION to use as the root for #log_ref lookups.} linelog_instance_t;typedef struct linelog_conn {	int			sockfd;			//!< File descriptor associated with socket} linelog_conn_t;static const CONF_PARSER file_config[] = {	{ "filename", FR_CONF_OFFSET(PW_TYPE_FILE_OUTPUT | PW_TYPE_XLAT, linelog_instance_t, file.name), NULL },	{ "permissions", FR_CONF_OFFSET(PW_TYPE_INTEGER, linelog_instance_t, file.permissions), "0600" },	{ "group", FR_CONF_OFFSET(PW_TYPE_STRING, linelog_instance_t, file.group_str), NULL },	{ "escape_filenames", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, linelog_instance_t, file.escape), "no" },	{ NULL, -1, 0, NULL, NULL }		/* end the list */};static const CONF_PARSER syslog_config[] = {	{ "facility", FR_CONF_OFFSET(PW_TYPE_STRING, linelog_instance_t, syslog.facility), NULL },	{ "severity", FR_CONF_OFFSET(PW_TYPE_STRING, linelog_instance_t, syslog.severity), "info" },	{ NULL, -1, 0, NULL, NULL }		/* end the list */};static const CONF_PARSER unix_config[] = {
开发者ID:k-paulius,项目名称:freeradius-server,代码行数:31,


示例13: FR_CONF_OFFSET

#include <freeradius-devel/radiusd.h>#include <freeradius-devel/modules.h>#include <freeradius-devel/token.h>#include <freeradius-devel/rad_assert.h>#include <sys/stat.h>#include "rlm_sql.h"/* *	So we can do pass2 xlat checks on the queries. */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}};/* *	For now hard-code the subsections.  This isn't perfect, but it *	helps the average case. */static const CONF_PARSER type_config[] = {	{ "accounting-on", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) query_config },	{ "accounting-off", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) query_config },	{ "start", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) query_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 },
开发者ID:jrouzierinverse,项目名称:freeradius-server,代码行数:30,


示例14: FR_CONF_OFFSET

	char const	*line;	char const	*reference;	fr_logfile_t	*lf;} rlm_linelog_t;/* *	A mapping of configuration file names to internal variables. * *	Note that the string is dynamically allocated, so it MUST *	be freed.  When the configuration file parse re-reads the string, *	it free's the old one, and strdup's the new one, placing the pointer *	to the strdup'd string into 'config.string'.  This gets around *	buffer over-flows. */static const CONF_PARSER module_config[] = {	{ "filename", FR_CONF_OFFSET(PW_TYPE_FILE_OUTPUT| PW_TYPE_REQUIRED, rlm_linelog_t, filename), NULL },	{ "syslog_facility", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_linelog_t, syslog_facility), NULL },	{ "permissions", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_linelog_t, permissions), "0600" },	{ "group", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_linelog_t, group), NULL },	{ "format", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_linelog_t, line), NULL },	{ "reference", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_linelog_t, reference), NULL },	{ NULL, -1, 0, NULL, NULL }		/* end the list */};/* *	Instantiate the module. */static int mod_instantiate(CONF_SECTION *conf, void *instance){	rlm_linelog_t *inst = instance;
开发者ID:RockalotofPokadots,项目名称:freeradius-server,代码行数:31,


示例15: FR_CONF_OFFSET

#ifdef HAVE_OPENSSL_RAND_H#include <openssl/rand.h>#endif#ifdef HAVE_OPENSSL_EVP_H#include <openssl/evp.h>#endif#include "rlm_eap_tls.h"#ifdef HAVE_SYS_STAT_H#include <sys/stat.h>#endifstatic 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 */};/* *	Attach the EAP-TLS module. */static int mod_instantiate(CONF_SECTION *cs, void **instance){	rlm_eap_tls_t		*inst;	/*
开发者ID:nils-a-r,项目名称:freeradius-server,代码行数:31,


示例16: FR_CONF_OFFSET

#include <freeradius-devel/libradius.h>#include <freeradius-devel/modules.h>#include <freeradius-devel/rad_assert.h>#include <libcouchbase/couchbase.h>#include <json.h>#include "mod.h"#include "couchbase.h"#include "jsonc_missing.h"/** * Client Configuration */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 */};/** * Module Configuration */static const CONF_PARSER module_config[] = {	{ "acct_key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_couchbase_t, acct_key), "radacct_%{%{Acct-Unique-Session-Id}:-%{Acct-Session-Id}}" },	{ "doctype", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_couchbase_t, doctype), "radacct" },	{ "server", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_couchbase_t, server_raw), NULL },	{ "bucket", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_couchbase_t, bucket), NULL },	{ "password", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_couchbase_t, password), NULL },	{ "expire", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_couchbase_t, expire), 0 },	{ "user_key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_couchbase_t, user_key), "raduser_%{md5:%{tolower:%{%{Stripped-User-Name}:-%{User-Name}}}}" },	{ "read_clients", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_couchbase_t, read_clients), NULL }, /* NULL defaults to "no" */
开发者ID:hongzhanyhz,项目名称:freeradius-server,代码行数:31,


示例17: FR_CONF_OFFSET

	char const	*filename;	//!< File/path to write to.	uint32_t	perm;		//!< Permissions to use for new files.	char const	*group;		//!< Group to use for new files.	char const	*header;	//!< Header format.	bool		locking;	//!< Whether the file should be locked.	bool		log_srcdst;	//!< Add IP src/dst attributes to entries.	fr_logfile_t    *lf;		//!< Log file handler	fr_hash_table_t *ht;		//!< Holds suppressed attributes.} detail_instance_t;static const CONF_PARSER module_config[] = {	{ "detailfile", FR_CONF_OFFSET(PW_TYPE_FILE_OUTPUT | PW_TYPE_DEPRECATED, detail_instance_t, filename), NULL },	{ "filename", FR_CONF_OFFSET(PW_TYPE_FILE_OUTPUT | PW_TYPE_REQUIRED, detail_instance_t, filename), "%A/%{Client-IP-Address}/detail" },	{ "header", FR_CONF_OFFSET(PW_TYPE_STRING, detail_instance_t, header), "%t" },	{ "detailperm", FR_CONF_OFFSET(PW_TYPE_INTEGER | PW_TYPE_DEPRECATED, detail_instance_t, perm), NULL },	{ "permissions", FR_CONF_OFFSET(PW_TYPE_INTEGER, detail_instance_t, perm), "0600" },	{ "group", FR_CONF_OFFSET(PW_TYPE_STRING, detail_instance_t, group), NULL },	{ "locking", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, detail_instance_t, locking), "no" },	{ "log_packet_header", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, detail_instance_t, log_srcdst), "no" },	{ NULL, -1, 0, NULL, NULL }};/* *	Clean up. */static int mod_detach(void *instance)
开发者ID:ncopa,项目名称:freeradius-server,代码行数:31,


示例18: FR_CONF_OFFSET

typedef struct rlm_preprocess_t {	char const	*huntgroup_file;	char const	*hints_file;	PAIR_LIST	*huntgroups;	PAIR_LIST	*hints;	bool		with_ascend_hack;	uint32_t	ascend_channels_per_line;	bool		with_ntdomain_hack;	bool		with_specialix_jetstream_hack;	bool		with_cisco_vsa_hack;	bool		with_alvarion_vsa_hack;	bool		with_cablelabs_vsa_hack;} rlm_preprocess_t;static const CONF_PARSER module_config[] = {	{ "huntgroups", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, rlm_preprocess_t, huntgroup_file), NULL },	{ "hints", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, rlm_preprocess_t, hints_file), NULL },	{ "with_ascend_hack", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_preprocess_t, with_ascend_hack), "no" },	{ "ascend_channels_per_line", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_preprocess_t, ascend_channels_per_line), "23" },	{ "with_ntdomain_hack", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_preprocess_t, with_ntdomain_hack), "no" },	{ "with_specialix_jetstream_hack", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_preprocess_t, with_specialix_jetstream_hack), "no"  },	{ "with_cisco_vsa_hack", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_preprocess_t, with_cisco_vsa_hack), "no" },	{ "with_alvarion_vsa_hack", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_preprocess_t, with_alvarion_vsa_hack), "no" },#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 }};/*
开发者ID:RockalotofPokadots,项目名称:freeradius-server,代码行数:31,


示例19: FR_CONF_OFFSET

#include <freeradius-devel/server/map.h>#include <freeradius-devel/server/module.h>#include <freeradius-devel/server/rad_assert.h>#include <freeradius-devel/util/base.h>#include <libcouchbase/couchbase.h>#include <freeradius-devel/json/base.h>#include "mod.h"#include "couchbase.h"/** * Client Configuration */static const CONF_PARSER client_config[] = {	{ FR_CONF_OFFSET("view", FR_TYPE_STRING, rlm_couchbase_t, client_view), .dflt = "_design/client/_view/by_name" },	CONF_PARSER_TERMINATOR};/** * Module Configuration */static const CONF_PARSER module_config[] = {	{ FR_CONF_OFFSET("server", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_couchbase_t, server_raw) },	{ FR_CONF_OFFSET("bucket", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_couchbase_t, bucket) },	{ FR_CONF_OFFSET("password", FR_TYPE_STRING, rlm_couchbase_t, password) },#ifdef WITH_ACCOUNTING	{ FR_CONF_OFFSET("acct_key", FR_TYPE_TMPL, rlm_couchbase_t, acct_key), .dflt = "radacct_%{%{Acct-Unique-Session-Id}:-%{Acct-Session-Id}}", .quote = T_DOUBLE_QUOTED_STRING },	{ FR_CONF_OFFSET("doctype", FR_TYPE_STRING, rlm_couchbase_t, doctype), .dflt = "radacct" },	{ FR_CONF_OFFSET("expire", FR_TYPE_UINT32, rlm_couchbase_t, expire), .dflt = 0 },#endif
开发者ID:geaaru,项目名称:freeradius-server,代码行数:31,


示例20: FR_CONF_OFFSET

	char const	*off_commit;		//!< SQL query to commit.						/* Logging Section */	char const	*log_exists;		//!< There was an ip address already assigned.	char const	*log_success;		//!< We successfully allocated ip address from pool.	char const	*log_clear;		//!< We successfully deallocated ip address from pool.	char const	*log_failed;		//!< Failed to allocate ip from the pool.	char const	*log_nopool;		//!< There was no Framed-IP-Address but also no Pool-Name.						/* Reserved to handle 255.255.255.254 Requests */	char const	*defaultpool;		//!< Default Pool-Name if there is none in the check items.} rlm_sqlippool_t;static CONF_PARSER message_config[] = {	{ "exists", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_exists), NULL },	{ "success", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_success), NULL },	{ "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 },	CONF_PARSER_TERMINATOR};/* *	A mapping of configuration file names to internal variables. * *	Note that the string is dynamically allocated, so it MUST *	be freed.  When the configuration file parse re-reads the string, *	it free's the old one, and strdup's the new one, placing the pointer *	to the strdup'd string into 'config.string'.  This gets around *	buffer over-flows.
开发者ID:xunmengdeganjue,项目名称:workTest,代码行数:31,


示例21: RCSID

 */RCSID("$Id: 46cc8ca7c7179da925f6467dd4a15ef5e3ae4284 $")#include <freeradius-devel/radiusd.h>#include <freeradius-devel/modules.h>#include <freeradius-devel/token.h>#include <freeradius-devel/rad_assert.h>#include <ctype.h>#include "rest.h"/* *	TLS Configuration */static CONF_PARSER tls_config[] = {	{ "ca_file", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, rlm_rest_section_t, tls_ca_file), NULL },	{ "ca_path", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, rlm_rest_section_t, tls_ca_path), NULL },	{ "certificate_file", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, rlm_rest_section_t, tls_certificate_file), NULL },	{ "private_key_file", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT, rlm_rest_section_t, tls_private_key_file), NULL },	{ "private_key_password", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_SECRET, rlm_rest_section_t, tls_private_key_password), NULL },	{ "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 }};/* *	A mapping of configuration file names to internal variables. * *	Note that the string is dynamically allocated, so it MUST
开发者ID:ncopa,项目名称:freeradius-server,代码行数:31,


示例22: FR_CONF_OFFSET

#include	<ctype.h>#include	<fcntl.h>/* *	Define a structure with the module configuration, so it can *	be used as the instance handle. */typedef struct rlm_attr_filter {	char const	*filename;	char const	*key;	bool		relaxed;	PAIR_LIST	*attrs;} rlm_attr_filter_t;static const CONF_PARSER module_config[] = {	{ "attrsfile", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_DEPRECATED, rlm_attr_filter_t, filename), NULL },	{ "filename", FR_CONF_OFFSET(PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_attr_filter_t, filename), NULL },	{ "key", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_attr_filter_t, key), "%{Realm}" },	{ "relaxed", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_attr_filter_t, relaxed), "no" },	{ NULL, -1, 0, NULL, NULL }};static void check_pair(REQUEST *request, VALUE_PAIR *check_item, VALUE_PAIR *reply_item, int *pass, int *fail){	int compare;	if (check_item->op == T_OP_SET) return;	compare = paircmp(check_item, reply_item);	if (compare < 0) {		REDEBUG("Comparison failed: %s", fr_strerror());
开发者ID:amirdaly,项目名称:freeradius-server,代码行数:31,


示例23: FR_CONF_OFFSET

#ifdef HAVE_PAM_PAM_APPL_H#include	<pam/pam_appl.h>#endif#ifdef HAVE_SYSLOG_H#include	<syslog.h>#endiftypedef struct rlm_pam_t {	char const *pam_auth_name;} 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 }};/************************************************************************* * *	Function: PAM_conv * *	Purpose: Dialogue between RADIUS and PAM modules. * * jab - stolen from pop3d * * Alan DeKok: modified to use PAM's appdata_ptr, so that we're *	     multi-threaded safe, and don't have any nasty static *	     variables hanging around. *
开发者ID:jons-rt-dev,项目名称:freeradius-server,代码行数:30,


示例24: FR_CONF_OFFSET

#include <freeradius-devel/modules.h>#include <ctype.h>#include "rlm_securid.h"typedef enum {	RC_SECURID_AUTH_SUCCESS = 0,	RC_SECURID_AUTH_FAILURE = -3,	RC_SECURID_AUTH_ACCESS_DENIED_FAILURE = -4,	RC_SECURID_AUTH_INVALID_SERVER_FAILURE = -5,	RC_SECURID_AUTH_CHALLENGE = -17} SECURID_AUTH_RC;static const CONF_PARSER module_config[] = {	{ "timer_expire", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_securid_t, timer_limit), "600" },	{ "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 */};static SD_CHAR empty_pin[] = "";/* comparison function to find session in the tree */static int securid_session_cmp(void const *a, void const *b){	int rcode;	SECURID_SESSION const *one = a;	SECURID_SESSION const *two = b;
开发者ID:bgmilne,项目名称:freeradius-server,代码行数:31,


示例25: FR_CONF_OFFSET

    bool copy_request_to_tunnel;		//!< Use SOME of the request attributes from outside of the    //!< tunneled session in the tunneled request.#ifdef WITH_PROXY    bool proxy_tunneled_request_as_eap;	//!< Proxy tunneled session as EAP, or as de-capsulated    //!< protocol.#endif    char const *virtual_server;		//!< Virtual server for inner tunnel session.    bool soh;				//!< Do we do SoH request?    char const *soh_virtual_server;    bool req_client_cert;			//!< Do we do require a client cert?} rlm_eap_peap_t;static CONF_PARSER module_config[] = {    { "tls", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_peap_t, tls_conf_name), NULL },    { "default_method", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_peap_t, default_method_name), "mschapv2" },    { "copy_request_to_tunnel", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_peap_t, copy_request_to_tunnel), "no" },    { "use_tunneled_reply", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_peap_t, use_tunneled_reply), "no" },#ifdef WITH_PROXY    { "proxy_tunneled_request_as_eap", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_peap_t, proxy_tunneled_request_as_eap), "yes" },#endif    { "virtual_server", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_eap_peap_t, virtual_server), NULL },    { "soh", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_eap_peap_t, soh), "no" },
开发者ID:RockalotofPokadots,项目名称:freeradius-server,代码行数:30,


示例26: RCSID

 * this code cannot simply be copied and put under a different distribution * license (including the GNU public license). */RCSID("$Id: db8d619ca134aaed25dbf79e8d41c5b1c11e0424 $")USES_APPLE_DEPRECATED_API	/* OpenSSL API has been deprecated by Apple */#include "rlm_eap_pwd.h"#include "eap_pwd.h"#define MPPE_KEY_LEN    32#define MSK_EMSK_LEN    (2*MPPE_KEY_LEN)static CONF_PARSER pwd_module_config[] = {	{ "group", FR_CONF_OFFSET(PW_TYPE_INTEGER, eap_pwd_t, group), "19" },	{ "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 },	CONF_PARSER_TERMINATOR};static int mod_detach (void *arg){	eap_pwd_t *inst;	inst = (eap_pwd_t *) arg;	if (inst->bnctx) BN_CTX_free(inst->bnctx);	return 0;
开发者ID:janetuk,项目名称:freeradius,代码行数:31,


示例27: FR_CONF_OFFSET

#include <freeradius-devel/modcall.h>#include <freeradius-devel/rad_assert.h>#include "rlm_cache.h"/* *	A mapping of configuration file names to internal variables. * *	Note that the string is dynamically allocated, so it MUST *	be freed.  When the configuration file parse re-reads the string, *	it free's the old one, and strdup's the new one, placing the pointer *	to the strdup'd string into 'config.string'.  This gets around *	buffer over-flows. */static const CONF_PARSER module_config[] = {	{ "driver", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_cache_t, driver_name), "rlm_cache_rbtree" },	{ "key", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_XLAT, rlm_cache_t, key), NULL },	{ "ttl", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_cache_t, ttl), "500" },	{ "max_entries", FR_CONF_OFFSET(PW_TYPE_INTEGER, rlm_cache_t, max_entries), "0" },	/* 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 */};static int cache_acquire(rlm_cache_handle_t **out, rlm_cache_t *inst, REQUEST *request){	if (!inst->module->acquire) return 0;
开发者ID:LarsKollstedt,项目名称:freeradius-server,代码行数:30,


示例28: client_find

 *	Old wrapper for client_find */RADCLIENT *client_find_old(fr_ipaddr_t const *ipaddr){	return client_find(root_clients, ipaddr, IPPROTO_UDP);}static fr_ipaddr_t cl_ipaddr;static char const *cl_srcipaddr = NULL;#ifdef WITH_TCPstatic char const *hs_proto = NULL;#endif#ifdef WITH_TCPstatic CONF_PARSER limit_config[] = {	{ "max_connections", FR_CONF_OFFSET(PW_TYPE_INTEGER, RADCLIENT, limit.max_connections),   "16" },	{ "lifetime", FR_CONF_OFFSET(PW_TYPE_INTEGER, RADCLIENT, limit.lifetime),   "0" },	{ "idle_timeout", FR_CONF_OFFSET(PW_TYPE_INTEGER, RADCLIENT, limit.idle_timeout), "30" },	{ NULL, -1, 0, NULL, NULL }		/* end the list */};#endifstatic const CONF_PARSER client_config[] = {	{ "ipaddr", FR_CONF_POINTER(PW_TYPE_COMBO_IP_PREFIX, &cl_ipaddr), NULL },	{ "ipv4addr", FR_CONF_POINTER(PW_TYPE_IPV4_PREFIX, &cl_ipaddr), NULL },	{ "ipv6addr", FR_CONF_POINTER(PW_TYPE_IPV6_PREFIX, &cl_ipaddr), NULL },	{ "src_ipaddr", FR_CONF_POINTER(PW_TYPE_STRING, &cl_srcipaddr), NULL },
开发者ID:arr2036,项目名称:freeradius-server,代码行数:31,


示例29: FR_CONF_OFFSET

#endif#include <ctype.h>#include "rlm_expr.h"/* *	Define a structure for our module configuration. */typedef struct rlm_expr_t {	char const *xlat_name;	char const *allowed_chars;} 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}};typedef enum expr_token_t {	TOKEN_NONE = 0,	TOKEN_INTEGER,	TOKEN_ADD,	TOKEN_SUBTRACT,	TOKEN_DIVIDE,	TOKEN_REMAINDER,	TOKEN_MULTIPLY,	TOKEN_AND,	TOKEN_OR,	TOKEN_POWER,	TOKEN_LAST
开发者ID:amirdaly,项目名称:freeradius-server,代码行数:31,


示例30: FR_CONF_OFFSET

	unsigned int	packet_code;	bool		shell_escape;	uint32_t	timeout;} rlm_exec_t;/* *	A mapping of configuration file names to internal variables. * *	Note that the string is dynamically allocated, so it MUST *	be freed.  When the configuration file parse re-reads the string, *	it free's the old one, and strdup's the new one, placing the pointer *	to the strdup'd string into 'config.string'.  This gets around *	buffer over-flows. */static const CONF_PARSER module_config[] = {	{ "wait", FR_CONF_OFFSET(PW_TYPE_BOOLEAN, rlm_exec_t, wait), "yes" },	{ "program", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_exec_t, program), NULL },	{ "input_pairs", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_exec_t, input), NULL },	{ "output_pairs", FR_CONF_OFFSET(PW_TYPE_STRING, rlm_exec_t, output), NULL },	{ "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 */};static char const special[] = "//'/"`<>|; /t/r/n()[]?#$^&*=";/* *	Escape special characters */
开发者ID:bgmilne,项目名称:freeradius-server,代码行数:31,



注:本文中的FR_CONF_OFFSET函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ FResolveParams函数代码示例
C++ FRTOS1_xTaskCreate函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。