79typedef enum rc_attr_id {
87 PW_FRAMED_IP_ADDRESS=8,
88 PW_FRAMED_IP_NETMASK=9,
92 PW_FRAMED_COMPRESSION=13,
98 PW_LOGIN_CALLBACK_NUMBER=19,
99 PW_FRAMED_CALLBACK_ID=20,
102 PW_FRAMED_IPX_NETWORK=23,
105 PW_VENDOR_SPECIFIC=26,
106 PW_SESSION_TIMEOUT=27,
108 PW_TERMINATION_ACTION=29,
109 PW_CALLED_STATION_ID=30,
110 PW_CALLING_STATION_ID=31,
111 PW_NAS_IDENTIFIER=32,
113 PW_LOGIN_LAT_SERVICE=34,
114 PW_LOGIN_LAT_NODE=35,
115 PW_LOGIN_LAT_GROUP=36,
116 PW_FRAMED_APPLETALK_LINK=37,
117 PW_FRAMED_APPLETALK_NETWORK=38,
118 PW_FRAMED_APPLETALK_ZONE=39,
119 PW_ACCT_STATUS_TYPE=40,
120 PW_ACCT_DELAY_TIME=41,
121 PW_ACCT_INPUT_OCTETS=42,
122 PW_ACCT_OUTPUT_OCTETS=43,
123 PW_ACCT_SESSION_ID=44,
124 PW_ACCT_AUTHENTIC=45,
125 PW_ACCT_SESSION_TIME=46,
126 PW_ACCT_INPUT_PACKETS=47,
127 PW_ACCT_OUTPUT_PACKETS=48,
128 PW_ACCT_TERMINATE_CAUSE=49,
129 PW_ACCT_MULTI_SESSION_ID=50,
130 PW_ACCT_LINK_COUNT=51,
131 PW_ACCT_INPUT_GIGAWORDS=52,
132 PW_ACCT_OUTPUT_GIGAWORDS=53,
133 PW_EVENT_TIMESTAMP=55,
135 PW_INGRESS_FILTERS=57,
136 PW_EGRESS_VLAN_NAME=58,
137 PW_USER_PRIORITY_TABLE=59,
138 PW_CHAP_CHALLENGE=60,
141 PW_LOGIN_LAT_PORT=63,
143 PW_TUNNEL_MEDIUM_TYPE=65,
144 PW_TUNNEL_CLIENT_ENDPOINT=66,
145 PW_TUNNEL_SERVER_ENDPOINT=67,
146 PW_ACCT_TUNNEL_CONNECTION=68,
147 PW_TUNNEL_PASSWORD=69,
150 PW_ARAP_ZONE_ACCESS=72,
152 PW_ARAP_SECURITY_DATA=74,
153 PW_PASSWORD_RETRY=75,
156 PW_CONFIGURATION_TOKEN=78,
158 PW_MESSAGE_AUTHENTICATOR=80,
159 PW_TUNNEL_PRIVATE_GROUP_ID=81,
160 PW_TUNNEL_ASSIGNMENT_ID=82,
161 PW_TUNNEL_PREFERENCE=83,
162 PW_ARAP_CHALLENGE_RESPONSE=84,
163 PW_ACCT_INTERIM_INTERVAL=85,
164 PW_ACCT_TUNNEL_PACKETS_LOST=86,
165 PW_NAS_PORT_ID_STRING=87,
167 PW_CHARGEABLE_USER_IDENTITY=89,
169 PW_TUNNEL_CLIENT_AUTH_ID=90,
170 PW_TUNNEL_SERVER_AUTH_ID=91,
171 PW_NAS_FILTER_RULE=92,
172 PW_ORIGINATING_LINE_INFO=94,
173 PW_NAS_IPV6_ADDRESS=95,
174 PW_FRAMED_INTERFACE_ID=96,
175 PW_FRAMED_IPV6_PREFIX=97,
176 PW_LOGIN_IPV6_HOST=98,
177 PW_FRAMED_IPV6_ROUTE=99,
178 PW_FRAMED_IPV6_POOL=100,
183 PW_DIGEST_RESPONSE=103,
186 PW_DIGEST_RESPONSE_AUTH=106,
187 PW_DIGEST_NEXTNONCE=107,
188 PW_DIGEST_METHOD=108,
191 PW_DIGEST_ALGORITHM=111,
192 PW_DIGEST_ENTITY_BODY_HASH=112,
193 PW_DIGEST_CNONCE=113,
194 PW_DIGEST_NONCE_COUNT=114,
195 PW_DIGEST_USERNAME=115,
196 PW_DIGEST_OPAQUE=116,
197 PW_DIGEST_AUTH_PARAM=117,
198 PW_DIGEST_AKA_AUTS=118,
199 PW_DIGEST_DOMAIN=119,
204 PW_DELEGATED_IPV6_PREFIX=123,
210 PW_MIP6_FEATURE_VECTOR=124,
213 PW_ACTUAL_DATA_RATE_UPSTREAM=129,
214 PW_ACTUAL_DATA_RATE_DOWNSTREAM=130,
215 PW_MINIMUM_DATA_RATE_UPSTREAM=131,
216 PW_MINIMUM_DATA_RATE_DOWNSTREAM=132,
217 PW_ATTAINABLE_DATA_RATE_UPSTREAM=133,
218 PW_ATTAINABLE_DATA_RATE_DOWNSTREAM=134,
219 PW_MAXIMUM_DATA_RATE_UPSTREAM=135,
220 PW_MAXIMUM_DATA_RATE_DOWNSTREAM=136,
221 PW_MINIMUM_DATA_RATE_UPSTREAM_LOW_POWER=137,
222 PW_MINIMUM_DATA_RATE_DOWNSTREAM_LOW_POWER=138,
223 PW_MAXIMUM_INTERLEAVING_DELAY_UPSTREAM=139,
224 PW_ACTUAL_INTERLEAVING_DELAY_UPSTREAM=140,
225 PW_MAXIMUM_INTERLEAVING_DELAY_DOWNSTREAM=141,
226 PW_ACTUAL_INTERLEAVING_DELAY_DOWNSTREAM=142,
228 PW_ACCESS_LOOP_ENCAPSULATION=144,
230 PW_FRAMED_IPV6_ADDRESS=168,
231 PW_DNS_SERVER_IPV6_ADDRESS=169,
232 PW_ROUTE_IPV6_INFORMATION=170,
233 PW_DELEGATED_IPV6_PREFIX_POOL=171,
234 PW_STATEFUL_IPV6_ADDRESS_POOL=172,
248#define PW_DIGEST_BODY_DIGEST PW_DIGEST_ENTITY_BODY_HASH
249#define PW_DIGEST_USER_NAME PW_DIGEST_USERNAME
253typedef enum rc_service_type {
257 PW_CALLBACK_FRAMED=4,
261 PW_AUTHENTICATE_ONLY=8,
262 PW_CALLBACK_NAS_PROMPT=9
267typedef enum rc_framed_protocol {
277typedef enum rc_framed_routing_type {
281 PW_BROADCAST_LISTEN=3
282} rc_framed_routing_type;
286typedef enum rc_framed_comp {
288 PW_VAN_JACOBSON_TCP_IP=1,
289 PW_IPX_HEADER_COMPRESSION=2,
295typedef enum rc_login_service_type {
303} rc_login_service_type;
307typedef enum rc_termination_action {
310} rc_termination_action;
314typedef enum rc_acct_status_type {
318 PW_STATUS_MODEM_START=4,
319 PW_STATUS_MODEM_STOP=5,
323} rc_acct_status_type;
327typedef enum rc_acct_terminate_cause {
331 PW_ACCT_IDLE_TIMEOUT=4,
332 PW_ACCT_SESSION_TIMEOUT=5,
340 PW_PORT_PREEMPTED=13,
341 PW_PORT_SUSPENDED=14,
342 PW_SERVICE_UNAVAILABLE=15,
346} rc_acct_terminate_cause;
350typedef enum rc_nas_port_type {
361typedef enum rc_acct_auth_type {
369typedef enum rc_vendor_pec {
371 VENDOR_MICROSOFT = 311,
372 VENDOR_ROARING_PENGUIN = 10055
378#define RADCLI_OPT_TYPE_STR (1<<0)
379#define RADCLI_OPT_TYPE_INT (1<<1)
380#define RADCLI_OPT_TYPE_SRV (1<<2)
382#define RC_OPTION_TABLE \
384RADCLI_OPT_ENTRY(OPT_CONFIG_FILE, "config_file", RADCLI_OPT_TYPE_STR) \
386RADCLI_OPT_ENTRY(OPT_SERV_TYPE, "serv-type", RADCLI_OPT_TYPE_STR) \
387RADCLI_OPT_ENTRY(OPT_SERV_AUTH_TYPE, "serv-auth-type", RADCLI_OPT_TYPE_STR) \
388RADCLI_OPT_ENTRY(OPT_NAMESPACE, "namespace", RADCLI_OPT_TYPE_STR) \
389RADCLI_OPT_ENTRY(OPT_USE_PUBLIC_ADDR, "use-public-addr", RADCLI_OPT_TYPE_STR) \
390RADCLI_OPT_ENTRY(OPT_TLS_VERIFY_HOSTNAME, "tls-verify-hostname", RADCLI_OPT_TYPE_STR) \
391RADCLI_OPT_ENTRY(OPT_REQUIRE_MESSAGE_AUTHENTICATOR, "require-message-authenticator", RADCLI_OPT_TYPE_STR) \
392RADCLI_OPT_ENTRY(OPT_TLS_CA_FILE, "tls-ca-file", RADCLI_OPT_TYPE_STR) \
393RADCLI_OPT_ENTRY(OPT_TLS_CERT_FILE, "tls-cert-file", RADCLI_OPT_TYPE_STR) \
394RADCLI_OPT_ENTRY(OPT_TLS_KEY_FILE, "tls-key-file", RADCLI_OPT_TYPE_STR) \
400RADCLI_OPT_ENTRY(OPT_TLS_PSK_IDENTITY, "tls-psk-identity", RADCLI_OPT_TYPE_STR) \
401RADCLI_OPT_ENTRY(OPT_TLS_PSK_KEY, "tls-psk-key", RADCLI_OPT_TYPE_STR) \
411RADCLI_OPT_ENTRY(OPT_WATCHDOG_INTERVAL, "watchdog-interval", RADCLI_OPT_TYPE_INT) \
412RADCLI_OPT_ENTRY(OPT_NAS_IDENTIFIER, "nas-identifier", RADCLI_OPT_TYPE_STR) \
413RADCLI_OPT_ENTRY(OPT_NAS_IP, "nas-ip", RADCLI_OPT_TYPE_STR) \
414RADCLI_OPT_ENTRY(OPT_AUTHSERVER, "authserver", RADCLI_OPT_TYPE_SRV) \
415RADCLI_OPT_ENTRY(OPT_ACCTSERVER, "acctserver", RADCLI_OPT_TYPE_SRV) \
416RADCLI_OPT_ENTRY(OPT_SERVERS, "servers", RADCLI_OPT_TYPE_STR) \
421RADCLI_OPT_ENTRY(OPT_SECRET, "secret", RADCLI_OPT_TYPE_STR) \
422RADCLI_OPT_ENTRY(OPT_DICTIONARY, "dictionary", RADCLI_OPT_TYPE_STR) \
423RADCLI_OPT_ENTRY(OPT_DEFAULT_REALM, "default_realm", RADCLI_OPT_TYPE_STR) \
424RADCLI_OPT_ENTRY(OPT_RADIUS_TIMEOUT, "radius_timeout", RADCLI_OPT_TYPE_INT) \
425RADCLI_OPT_ENTRY(OPT_RADIUS_RETRIES, "radius_retries", RADCLI_OPT_TYPE_INT) \
426RADCLI_OPT_ENTRY(OPT_BINDADDR, "bindaddr", RADCLI_OPT_TYPE_STR) \
427RADCLI_OPT_ENTRY(OPT_CLIENTDEBUG, "clientdebug", RADCLI_OPT_TYPE_INT) \
433RADCLI_OPT_ENTRY(OPT_DAE_ACCEPT, "dae-accept", RADCLI_OPT_TYPE_STR) \
434RADCLI_OPT_ENTRY(OPT_DAE_LISTEN, "dae-listen", RADCLI_OPT_TYPE_STR) \
435RADCLI_OPT_ENTRY(OPT_DAE_SECRET, "dae-secret", RADCLI_OPT_TYPE_STR) \
436RADCLI_OPT_ENTRY(OPT_DAE_SERVER, "dae-server", RADCLI_OPT_TYPE_STR) \
437RADCLI_OPT_ENTRY(OPT_DAE_MAX_CLOCK_SKEW, "dae-max-clock-skew", RADCLI_OPT_TYPE_INT) \
438RADCLI_OPT_ENTRY(OPT_DAE_REQUIRE_MESSAGE_AUTHENTICATOR, "dae-require-message-authenticator", RADCLI_OPT_TYPE_STR)