]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Add a timeout rcode
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Wed, 30 Apr 2025 18:11:42 +0000 (14:11 -0400)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Wed, 30 Apr 2025 20:22:49 +0000 (16:22 -0400)
This causes process modules to not respond to requests

17 files changed:
src/lib/server/rcode.c
src/lib/server/rcode.h
src/lib/unlang/compile.c
src/lib/unlang/mod_action.c
src/lib/unlang/timeout.c
src/modules/rlm_ldap/rlm_ldap.c
src/modules/rlm_python/rlm_python.c
src/process/arp/base.c
src/process/dhcpv4/base.c
src/process/dhcpv6/base.c
src/process/dns/base.c
src/process/ldap_sync/base.c
src/process/radius/base.c
src/process/tacacs/base.c
src/process/tls/base.c
src/process/ttls/base.c
src/process/vmps/base.c

index c236665d3e695787846894695db798c39b3b0eed..fabba4793def16bc082c162deaa587ace718b2d8 100644 (file)
@@ -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);
index 74eed3d707af2d7844b432d5979fe876692db6a6..75906303ff66470ff9146f607339956d44068d80 100644 (file)
@@ -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
 }
index f31010c4df2b6fded706c1fc2a0b5e0165dc0400..cf4a46ed2ed740180b8fa4db550ec82572f40c2c 100644 (file)
@@ -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);
index fd482b18c7ec3398d5e7ab00251db4e16318be66..29293b111b03845b389a96daab689b698cb43002 100644 (file)
@@ -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
index 90789f0a7d6915cafbb455d03da567912074d4b6..6105baacfc31a1fb3d396cd345211d54f499874b 100644 (file)
@@ -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.
index 79eea698a95721c566654e4b97a41ed3a9806002..94164cbfaa322456098cf0ccddf8279398457030 100644 (file)
@@ -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;
index f08823aa4a80e0598dc9f0c4239f458e9f10c9e3..abcd3bea35aa9c1f9467e9a379348984a20763e6 100644 (file)
@@ -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 },
index 86103cbdc59dc798af14255b03a8f29c6e5727ca..25f02ae8ca0cad50af5461f2d7b351cb2b8177ab 100644 (file)
@@ -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,
index 7ea92aa278858b80da69b011ccc63c91c2512138..9baf8b26fa02bb9d21535a822319bb16638d6c88 100644 (file)
@@ -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,
index dfc4f7387c487dd83a8a635a581c57d4e4138e97..65fe8aad68f2d8c3bb55e04b05ba22f2afc6e71e 100644 (file)
@@ -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),
index 93f621eedb3ff9cb6d3c33ef713f92b2730801fb..889c480427c64306328a474b8598d66896b368ce 100644 (file)
@@ -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,
index d9f7fc2bcd4a6e7227f07369c301a4229e92428b..01fdf9afaf441d248be08e9c57594a5ca52abfac 100644 (file)
@@ -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,
index 20e8eb713634fd6eef1a3b813def27faf9e64b71..b93f9f5923c782d6fd50c30fca347c3e5804f08e 100644 (file)
@@ -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,
index cc8531da43f280e147ab79ea04b34c938597d381..8318c31cceb4604e5f6acfda45192f3191bf0096 100644 (file)
@@ -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,
index 753049bf91c291164c14cf5127065368d591d2b3..e333da21400aa7cfed32ec1822d86b173400f0b7 100644 (file)
@@ -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,
index ea38ec1923bcaedbccf902402568c488c20a32be..6cb2ad2b62f5c82c954e44d308013b16629d3d0e 100644 (file)
@@ -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,
index 8d47e3f59e0cc37cb3e3a46113848e99c80de9f7..7a4b3ce3e2b2f853344efbf07fd1c72ca2651721 100644 (file)
@@ -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,