From: Arran Cudbard-Bell Date: Wed, 30 Apr 2025 18:11:42 +0000 (-0400) Subject: Add a timeout rcode X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d752623e842273433499ae9b5ce88159a820955f;p=thirdparty%2Ffreeradius-server.git Add a timeout rcode This causes process modules to not respond to requests --- diff --git a/src/lib/server/rcode.c b/src/lib/server/rcode.c index c236665d3e..fabba4793d 100644 --- a/src/lib/server/rcode.c +++ b/src/lib/server/rcode.c @@ -41,6 +41,7 @@ fr_table_num_sorted_t const rcode_table[] = { { L("notfound"), RLM_MODULE_NOTFOUND }, { L("ok"), RLM_MODULE_OK }, { L("reject"), RLM_MODULE_REJECT }, + { L("timeout"), RLM_MODULE_TIMEOUT }, { L("updated"), RLM_MODULE_UPDATED }, }; size_t rcode_table_len = NUM_ELEMENTS(rcode_table); diff --git a/src/lib/server/rcode.h b/src/lib/server/rcode.h index 74eed3d707..75906303ff 100644 --- a/src/lib/server/rcode.h +++ b/src/lib/server/rcode.h @@ -47,6 +47,7 @@ typedef enum { RLM_MODULE_NOTFOUND, //!< User not found. RLM_MODULE_NOOP, //!< Module succeeded without doing anything. RLM_MODULE_UPDATED, //!< OK (pairs modified). + RLM_MODULE_TIMEOUT, //!< Module (or section) timed out. RLM_MODULE_NUMCODES, //!< How many valid return codes there are. RLM_MODULE_NOT_SET, //!< Error resolving rcode (should not be //!< returned by modules). @@ -61,6 +62,7 @@ typedef enum { #define RETURN_MODULE_NOTFOUND do { *p_result = RLM_MODULE_NOTFOUND; return UNLANG_ACTION_CALCULATE_RESULT; } while (0) #define RETURN_MODULE_NOOP do { *p_result = RLM_MODULE_NOOP; return UNLANG_ACTION_CALCULATE_RESULT; } while (0) #define RETURN_MODULE_UPDATED do { *p_result = RLM_MODULE_UPDATED; return UNLANG_ACTION_CALCULATE_RESULT; } while (0) +#define RETURN_MODULE_TIMEOUT do { *p_result = RLM_MODULE_TIMEOUT; return UNLANG_ACTION_CALCULATE_RESULT; } while (0) #define RETURN_MODULE_RCODE(_rcode) do { *p_result = (_rcode); return UNLANG_ACTION_CALCULATE_RESULT; } while (0) extern fr_table_num_sorted_t const rcode_table[]; @@ -73,7 +75,8 @@ extern size_t rcode_table_len; RLM_MODULE_REJECT: \ case RLM_MODULE_FAIL: \ case RLM_MODULE_INVALID: \ - case RLM_MODULE_DISALLOW + case RLM_MODULE_DISALLOW: \ + case RLM_MODULE_TIMEOUT #ifdef __cplusplus } diff --git a/src/lib/unlang/compile.c b/src/lib/unlang/compile.c index f31010c4df..cf4a46ed2e 100644 --- a/src/lib/unlang/compile.c +++ b/src/lib/unlang/compile.c @@ -85,6 +85,7 @@ fr_table_num_sorted_t const mod_rcode_table[] = { { L("notfound"), RLM_MODULE_NOTFOUND }, { L("ok"), RLM_MODULE_OK }, { L("reject"), RLM_MODULE_REJECT }, + { L("timeout"), RLM_MODULE_TIMEOUT }, { L("updated"), RLM_MODULE_UPDATED } }; size_t mod_rcode_table_len = NUM_ELEMENTS(mod_rcode_table); diff --git a/src/lib/unlang/mod_action.c b/src/lib/unlang/mod_action.c index fd482b18c7..29293b111b 100644 --- a/src/lib/unlang/mod_action.c +++ b/src/lib/unlang/mod_action.c @@ -36,7 +36,8 @@ unlang_mod_actions_t const mod_actions_authenticate = { [RLM_MODULE_DISALLOW] = MOD_ACTION_RETURN, [RLM_MODULE_NOTFOUND] = 1, [RLM_MODULE_NOOP] = 2, - [RLM_MODULE_UPDATED] = 3 + [RLM_MODULE_TIMEOUT] = MOD_ACTION_RETURN, + [RLM_MODULE_UPDATED] = 4 }, .retry = RETRY_INIT }; @@ -51,6 +52,7 @@ unlang_mod_actions_t const mod_actions_authorize = { [RLM_MODULE_DISALLOW] = MOD_ACTION_RETURN, [RLM_MODULE_NOTFOUND] = 1, [RLM_MODULE_NOOP] = 2, + [RLM_MODULE_TIMEOUT] = MOD_ACTION_RETURN, [RLM_MODULE_UPDATED] = 4 }, .retry = RETRY_INIT, @@ -66,6 +68,7 @@ unlang_mod_actions_t const mod_actions_preacct = { [RLM_MODULE_DISALLOW] = MOD_ACTION_RETURN, [RLM_MODULE_NOTFOUND] = 1, [RLM_MODULE_NOOP] = 2, + [RLM_MODULE_TIMEOUT] = MOD_ACTION_RETURN, [RLM_MODULE_UPDATED] = 4 }, .retry = RETRY_INIT, @@ -81,6 +84,7 @@ unlang_mod_actions_t const mod_actions_accounting = { [RLM_MODULE_DISALLOW] = MOD_ACTION_RETURN, [RLM_MODULE_NOTFOUND] = 1, [RLM_MODULE_NOOP] = 2, + [RLM_MODULE_TIMEOUT] = MOD_ACTION_RETURN, [RLM_MODULE_UPDATED] = 4 }, }; @@ -95,6 +99,7 @@ unlang_mod_actions_t const mod_actions_postauth = { [RLM_MODULE_DISALLOW] = MOD_ACTION_RETURN, [RLM_MODULE_NOTFOUND] = 1, [RLM_MODULE_NOOP] = 2, + [RLM_MODULE_TIMEOUT] = MOD_ACTION_RETURN, [RLM_MODULE_UPDATED] = 4 }, .retry = RETRY_INIT diff --git a/src/lib/unlang/timeout.c b/src/lib/unlang/timeout.c index 90789f0a7d..6105baacfc 100644 --- a/src/lib/unlang/timeout.c +++ b/src/lib/unlang/timeout.c @@ -199,6 +199,7 @@ int unlang_timeout_section_push(request_t *request, CONF_SECTION *cs, fr_time_de [RLM_MODULE_DISALLOW] = 0, [RLM_MODULE_NOTFOUND] = 0, [RLM_MODULE_NOOP] = 0, + [RLM_MODULE_TIMEOUT] = MOD_ACTION_RETURN, /* Exit out of nested levels */ [RLM_MODULE_UPDATED] = 0 }, .retry = RETRY_INIT, @@ -209,7 +210,6 @@ int unlang_timeout_section_push(request_t *request, CONF_SECTION *cs, fr_time_de unlang_stack_t *stack = request->stack; unlang_stack_frame_t *frame; unlang_t *instruction; - fr_time_t when; /* * Get the instruction we are supposed to run on timeout. diff --git a/src/modules/rlm_ldap/rlm_ldap.c b/src/modules/rlm_ldap/rlm_ldap.c index 79eea698a9..94164cbfaa 100644 --- a/src/modules/rlm_ldap/rlm_ldap.c +++ b/src/modules/rlm_ldap/rlm_ldap.c @@ -1241,6 +1241,9 @@ static unlang_action_t mod_map_resume(rlm_rcode_t *p_result, UNUSED int *priorit case LDAP_RESULT_BAD_DN: goto finish; + case LDAP_RESULT_TIMEOUT: + goto finish; + default: rcode = RLM_MODULE_FAIL; goto finish; @@ -1947,6 +1950,10 @@ static unlang_action_t user_modify_final(rlm_rcode_t *p_result, UNUSED int *prio rcode = RLM_MODULE_INVALID; break; + case LDAP_RESULT_TIMEOUT: + rcode = RLM_MODULE_TIMEOUT; + break; + default: rcode = RLM_MODULE_FAIL; break; diff --git a/src/modules/rlm_python/rlm_python.c b/src/modules/rlm_python/rlm_python.c index f08823aa4a..abcd3bea35 100644 --- a/src/modules/rlm_python/rlm_python.c +++ b/src/modules/rlm_python/rlm_python.c @@ -233,8 +233,7 @@ static struct { A(RLM_MODULE_NOTFOUND) A(RLM_MODULE_NOOP) A(RLM_MODULE_UPDATED) - A(RLM_MODULE_NUMCODES) - + A(RLM_MODULE_TIMEOUT) #undef A { NULL, 0 }, diff --git a/src/process/arp/base.c b/src/process/arp/base.c index 86103cbdc5..25f02ae8ca 100644 --- a/src/process/arp/base.c +++ b/src/process/arp/base.c @@ -77,6 +77,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_ARP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_ARP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, @@ -94,6 +95,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_ARP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_ARP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -112,6 +114,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_ARP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_ARP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, @@ -129,6 +132,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_ARP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_ARP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -149,6 +153,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_ARP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_ARP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_ARP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, diff --git a/src/process/dhcpv4/base.c b/src/process/dhcpv4/base.c index 7ea92aa278..9baf8b26fa 100644 --- a/src/process/dhcpv4/base.c +++ b/src/process/dhcpv4/base.c @@ -155,6 +155,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -173,6 +174,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -192,6 +194,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_NAK, [RLM_MODULE_DISALLOW] = FR_DHCP_NAK, [RLM_MODULE_NOTFOUND] = FR_DHCP_NAK, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -210,6 +213,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -229,6 +233,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_NAK, [RLM_MODULE_DISALLOW] = FR_DHCP_NAK, [RLM_MODULE_NOTFOUND] = FR_DHCP_NAK, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -247,6 +252,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_NAK, [RLM_MODULE_DISALLOW] = FR_DHCP_NAK, [RLM_MODULE_NOTFOUND] = FR_DHCP_NAK, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -266,6 +272,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -285,6 +292,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -304,6 +312,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_LEASE_UNASSIGNED, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -323,6 +332,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_LEASE_UNASSIGNED, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -342,6 +352,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -361,6 +372,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, @@ -380,6 +392,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCP_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DHCP_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCP_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .default_reply = FR_DHCP_DO_NOT_RESPOND, diff --git a/src/process/dhcpv6/base.c b/src/process/dhcpv6/base.c index dfc4f7387c..65fe8aad68 100644 --- a/src/process/dhcpv6/base.c +++ b/src/process/dhcpv6/base.c @@ -769,7 +769,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCPV6_DO_NOT_RESPOND, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_DO_NOT_RESPOND + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { /* RLM_MODULE_NOOP - No response */ @@ -805,7 +806,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_REPLY, [RLM_MODULE_REJECT] = FR_DHCPV6_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_unspec_fail, @@ -842,7 +844,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_DO_NOT_RESPOND, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_DO_NOT_RESPOND + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, /* @@ -894,7 +897,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, /* @@ -939,7 +943,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_unspec_fail, @@ -975,7 +980,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_unspec_fail, @@ -1011,7 +1017,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_unspec_fail, @@ -1050,7 +1057,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_unspec_fail, @@ -1089,7 +1097,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_RELAY_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_RELAY_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_RELAY_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_RELAY_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_unspec_fail, @@ -1120,7 +1129,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCPV6_DO_NOT_RESPOND, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_DO_NOT_RESPOND + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_success, @@ -1161,7 +1171,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_success, @@ -1196,7 +1207,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_RELAY_REPLY, [RLM_MODULE_DISALLOW] = FR_DHCPV6_RELAY_REPLY, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_RELAY_REPLY + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_RELAY_REPLY, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .status_codes = { [RLM_MODULE_NOOP] = &enum_status_code_success, @@ -1227,7 +1239,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_DHCPV6_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DHCPV6_DO_NOT_RESPOND, - [RLM_MODULE_NOTFOUND] = FR_DHCPV6_DO_NOT_RESPOND + [RLM_MODULE_NOTFOUND] = FR_DHCPV6_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DHCPV6_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .section_offset = offsetof(process_dhcpv6_sections_t, do_not_respond), diff --git a/src/process/dns/base.c b/src/process/dns/base.c index 93f621eedb..889c480427 100644 --- a/src/process/dns/base.c +++ b/src/process/dns/base.c @@ -599,6 +599,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_DNS_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_DNS_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_DNS_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_DNS_DO_NOT_RESPOND, }, .rcode = RLM_MODULE_NOOP, .send = send_generic, diff --git a/src/process/ldap_sync/base.c b/src/process/ldap_sync/base.c index d9f7fc2bcd..01fdf9afaf 100644 --- a/src/process/ldap_sync/base.c +++ b/src/process/ldap_sync/base.c @@ -161,7 +161,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_LDAP_SYNC_CODE_COOKIE_LOAD_FAIL, [RLM_MODULE_INVALID] = FR_LDAP_SYNC_CODE_COOKIE_LOAD_FAIL, [RLM_MODULE_REJECT] = FR_LDAP_SYNC_CODE_COOKIE_LOAD_FAIL, - [RLM_MODULE_DISALLOW] = FR_LDAP_SYNC_CODE_COOKIE_LOAD_FAIL + [RLM_MODULE_DISALLOW] = FR_LDAP_SYNC_CODE_COOKIE_LOAD_FAIL, + [RLM_MODULE_TIMEOUT] = FR_LDAP_SYNC_CODE_COOKIE_LOAD_FAIL }, .default_reply = FR_LDAP_SYNC_CODE_COOKIE_LOAD_RESPONSE, .rcode = RLM_MODULE_NOOP, diff --git a/src/process/radius/base.c b/src/process/radius/base.c index 20e8eb7136..b93f9f5923 100644 --- a/src/process/radius/base.c +++ b/src/process/radius/base.c @@ -928,7 +928,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_NOTFOUND] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_NOTFOUND] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_access_request, @@ -940,7 +941,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -952,7 +954,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -964,7 +967,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -983,7 +987,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_accounting_request, @@ -996,7 +1001,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1013,7 +1019,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_NOTFOUND] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_NOOP] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, @@ -1030,7 +1037,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_COA_NAK, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_COA_NAK, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_COA_NAK, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_COA_NAK + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_COA_NAK, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic_radius_request, @@ -1042,7 +1050,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_COA_NAK, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_COA_NAK, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_COA_NAK, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_COA_NAK + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_COA_NAK, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1054,7 +1063,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_COA_NAK, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_COA_NAK, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_COA_NAK, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_COA_NAK + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_COA_NAK, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1071,7 +1081,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_DISCONNECT_NAK, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DISCONNECT_NAK, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DISCONNECT_NAK, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DISCONNECT_NAK + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DISCONNECT_NAK, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, @@ -1083,7 +1094,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_DISCONNECT_NAK, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DISCONNECT_NAK, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DISCONNECT_NAK, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DISCONNECT_NAK + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DISCONNECT_NAK, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1095,7 +1107,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_DISCONNECT_NAK, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DISCONNECT_NAK, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DISCONNECT_NAK, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DISCONNECT_NAK + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DISCONNECT_NAK, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1104,10 +1117,11 @@ static fr_process_state_t const process_state[] = { }, [ FR_RADIUS_CODE_PROTOCOL_ERROR ] = { /* @todo - fill out required fields */ .packet_type = { - [RLM_MODULE_FAIL] = FR_RADIUS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND + [RLM_MODULE_FAIL] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1125,7 +1139,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, diff --git a/src/process/tacacs/base.c b/src/process/tacacs/base.c index cc8531da43..8318c31cce 100644 --- a/src/process/tacacs/base.c +++ b/src/process/tacacs/base.c @@ -1102,7 +1102,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL, - [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTH_FAIL + [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTH_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_auth_start, @@ -1114,7 +1115,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_INVALID] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTH_FAIL, - [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL + [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1126,7 +1128,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_INVALID] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTH_FAIL, - [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL + [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1138,7 +1141,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_INVALID] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTH_FAIL, - [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL + [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1150,7 +1154,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_INVALID] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTH_FAIL, - [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL + [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1162,7 +1167,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_INVALID] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTH_FAIL, - [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL + [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1192,7 +1198,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL, - [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTH_FAIL + [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTH_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_auth_cont, @@ -1205,7 +1212,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTH_FAIL, [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTH_FAIL, - [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTH_FAIL + [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTH_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_auth_cont_abort, @@ -1228,6 +1236,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTZ_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTZ_FAIL, [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTZ_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, @@ -1241,6 +1250,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTZ_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTZ_FAIL, [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTZ_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1254,6 +1264,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_AUTZ_FAIL, [RLM_MODULE_REJECT] = FR_TACACS_CODE_AUTZ_FAIL, [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_AUTZ_FAIL, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1287,6 +1298,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_ACCT_ERROR, [RLM_MODULE_REJECT] = FR_TACACS_CODE_ACCT_ERROR, [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_ACCT_ERROR, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_accounting_request, @@ -1299,7 +1311,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_TACACS_CODE_ACCT_ERROR, [RLM_MODULE_NOTFOUND] = FR_TACACS_CODE_ACCT_ERROR, [RLM_MODULE_REJECT] = FR_TACACS_CODE_ACCT_ERROR, - [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_ACCT_ERROR + [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_ACCT_ERROR, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -1325,7 +1338,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_TACACS_CODE_DO_NOT_RESPOND, [RLM_MODULE_INVALID] = FR_TACACS_CODE_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_TACACS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_DO_NOT_RESPOND + [RLM_MODULE_DISALLOW] = FR_TACACS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_TACACS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, diff --git a/src/process/tls/base.c b/src/process/tls/base.c index 753049bf91..e333da2140 100644 --- a/src/process/tls/base.c +++ b/src/process/tls/base.c @@ -74,6 +74,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_FAILURE, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_NOTFOUND, }, .rcode = RLM_MODULE_NOOP, @@ -91,6 +92,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_FAILURE, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_NOTFOUND, }, .rcode = RLM_MODULE_NOOP, @@ -108,6 +110,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_FAILURE, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_NOTFOUND, }, .rcode = RLM_MODULE_NOOP, @@ -125,6 +128,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_FAILURE, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_NOTFOUND, }, .rcode = RLM_MODULE_NOOP, @@ -142,6 +146,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_FAILURE, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_NOTFOUND, }, .rcode = RLM_MODULE_NOOP, @@ -159,7 +164,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_FAILURE, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_FAILURE, - [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_NOTFOUND, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_FAILURE, + [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_NOTFOUND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, diff --git a/src/process/ttls/base.c b/src/process/ttls/base.c index ea38ec1923..6cb2ad2b62 100644 --- a/src/process/ttls/base.c +++ b/src/process/ttls/base.c @@ -541,7 +541,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_NOTFOUND] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_NOTFOUND] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, @@ -553,7 +554,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -565,7 +567,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -577,7 +580,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_ACCESS_REJECT, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_ACCESS_REJECT, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_ACCESS_REJECT, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -591,7 +595,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -609,7 +614,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_INVALID] = FR_RADIUS_CODE_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_RADIUS_CODE_DO_NOT_RESPOND, - [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND + [RLM_MODULE_DISALLOW] = FR_RADIUS_CODE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_RADIUS_CODE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, diff --git a/src/process/vmps/base.c b/src/process/vmps/base.c index 8d47e3f59e..7a4b3ce3e2 100644 --- a/src/process/vmps/base.c +++ b/src/process/vmps/base.c @@ -79,6 +79,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, @@ -96,6 +97,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -114,6 +116,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .recv = recv_generic, @@ -131,6 +134,7 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_INVALID] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, [RLM_MODULE_DISALLOW] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, [RLM_MODULE_NOTFOUND] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_PACKET_TYPE_VALUE_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic, @@ -149,7 +153,8 @@ static fr_process_state_t const process_state[] = { [RLM_MODULE_FAIL] = FR_VMPS_DO_NOT_RESPOND, [RLM_MODULE_INVALID] = FR_VMPS_DO_NOT_RESPOND, [RLM_MODULE_REJECT] = FR_VMPS_DO_NOT_RESPOND, - [RLM_MODULE_DISALLOW] = FR_VMPS_DO_NOT_RESPOND + [RLM_MODULE_DISALLOW] = FR_VMPS_DO_NOT_RESPOND, + [RLM_MODULE_TIMEOUT] = FR_VMPS_DO_NOT_RESPOND }, .rcode = RLM_MODULE_NOOP, .send = send_generic,