]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
move definition for consistencty
authorAlan T. DeKok <aland@freeradius.org>
Sun, 12 Feb 2023 15:59:07 +0000 (10:59 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Sun, 12 Feb 2023 15:59:07 +0000 (10:59 -0500)
and "no accounting reply" is "failure", not "success"

src/process/tacacs/base.c

index 27de3e71ce2a4959c41d0cb0f55bba4cb9a11102..090e6a2a894ed4b0328ad1f62360053d9751fdee 100644 (file)
@@ -783,6 +783,14 @@ RESUME(auth_cont_abort)
 }
 
 
+static const uint32_t author_status_to_packet_code[UINT8_MAX + 1] = {
+       [FR_TAC_PLUS_AUTHOR_STATUS_PASS_ADD] = FR_TACACS_CODE_AUTZ_PASS_ADD,
+       [FR_TAC_PLUS_AUTHOR_STATUS_PASS_REPL] = FR_TACACS_CODE_AUTZ_PASS_REPLACE,
+       [FR_TAC_PLUS_AUTHOR_STATUS_FAIL] = FR_TACACS_CODE_AUTZ_FAIL,
+       [FR_TAC_PLUS_AUTHOR_STATUS_ERROR] = FR_TACACS_CODE_AUTZ_ERROR,
+};
+
+
 RESUME(autz_request)
 {
        rlm_rcode_t                     rcode = *p_result;
@@ -804,15 +812,8 @@ RESUME(autz_request)
         *      use the defaults from the state machine.
         */
        if (!request->reply->code) {
-               static const uint32_t status2code[UINT8_MAX + 1] = {
-                       [FR_TAC_PLUS_AUTHOR_STATUS_PASS_ADD] = FR_TACACS_CODE_AUTZ_PASS_ADD,
-                       [FR_TAC_PLUS_AUTHOR_STATUS_PASS_REPL] = FR_TACACS_CODE_AUTZ_PASS_REPLACE,
-                       [FR_TAC_PLUS_AUTHOR_STATUS_FAIL] = FR_TACACS_CODE_AUTZ_FAIL,
-                       [FR_TAC_PLUS_AUTHOR_STATUS_ERROR] = FR_TACACS_CODE_AUTZ_ERROR,
-               };
-
                request->reply->code = reply_code(request, attr_tacacs_authorization_status,
-                                                 status2code, state, rcode);
+                                                 author_status_to_packet_code, state, rcode);
        } else {
                fr_assert(FR_TACACS_PACKET_CODE_VALID(request->reply->code));
        }
@@ -863,7 +864,7 @@ RESUME(acct_type)
         */
        request->reply->code = reply_code(request, attr_tacacs_accounting_status, acct_status_to_packet_code,
                                          NULL, rcode);
-       if (!request->reply->code) request->reply->code = FR_TACACS_CODE_ACCT_SUCCESS;
+       if (!request->reply->code) request->reply->code = FR_TACACS_CODE_ACCT_ERROR;
 
        UPDATE_STATE(reply);