From: Alan T. DeKok Date: Sun, 12 Feb 2023 15:59:07 +0000 (-0500) Subject: move definition for consistencty X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=86e402f79c8e78e1e5312e2275d94bb5ed1e1ee6;p=thirdparty%2Ffreeradius-server.git move definition for consistencty and "no accounting reply" is "failure", not "success" --- diff --git a/src/process/tacacs/base.c b/src/process/tacacs/base.c index 27de3e71ce2..090e6a2a894 100644 --- a/src/process/tacacs/base.c +++ b/src/process/tacacs/base.c @@ -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);