From: Nick Porter Date: Fri, 13 Jan 2023 16:41:09 +0000 (+0000) Subject: Replace switch statements over tmpl lists X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dc80d0c00145ffb74f25fb9c1418667665fcdda4;p=thirdparty%2Ffreeradius-server.git Replace switch statements over tmpl lists --- diff --git a/src/lib/server/tmpl_eval.c b/src/lib/server/tmpl_eval.c index 806d77b979f..6ef27deb480 100644 --- a/src/lib/server/tmpl_eval.c +++ b/src/lib/server/tmpl_eval.c @@ -114,23 +114,10 @@ fr_pair_t *tmpl_get_list(request_t *request, tmpl_t const *vpt) list = tmpl_list(vpt); - switch (list) { - /* Don't add default */ - case PAIR_LIST_UNKNOWN: - break; - - case PAIR_LIST_REQUEST: - return request->pair_list.request; - - case PAIR_LIST_REPLY: - return request->pair_list.reply; - - case PAIR_LIST_CONTROL: - return request->pair_list.control; - - case PAIR_LIST_STATE: - return request->pair_list.state; - } + if (list == request_attr_request) return request->pair_list.request; + if (list == request_attr_reply) return request->pair_list.reply; + if (list == request_attr_control) return request->pair_list.control; + if (list == request_attr_state) return request->pair_list.state; RWDEBUG2("List \"%s\" is not available", tmpl_list_name(list, "")); @@ -155,28 +142,21 @@ fr_pair_list_t *tmpl_list_head(request_t *request, tmpl_pair_list_t list) { if (!request) return NULL; - switch (list) { - /* Don't add default */ - case PAIR_LIST_UNKNOWN: - break; - - case PAIR_LIST_REQUEST: + if (list == PAIR_LIST_REQUEST) { if (!request->packet) return NULL; return &request->request_pairs; + } - case PAIR_LIST_REPLY: + if (list == PAIR_LIST_REPLY) { if (!request->reply) return NULL; return &request->reply_pairs; + } - case PAIR_LIST_CONTROL: - return &request->control_pairs; + if (list == PAIR_LIST_CONTROL) return &request->control_pairs; - case PAIR_LIST_STATE: - return &request->session_state_pairs; - } + if (list == PAIR_LIST_STATE) return &request->session_state_pairs; - RWDEBUG2("List \"%s\" is not available", - fr_table_str_by_value(pair_list_table, list, "")); + RWDEBUG2("List \"%s\" is not available", tmpl_list_name(list, "")); return NULL; } @@ -200,23 +180,13 @@ TALLOC_CTX *tmpl_list_ctx(request_t *request, tmpl_pair_list_t list) { if (!request) return NULL; - switch (list) { - case PAIR_LIST_REQUEST: - return request->request_ctx; + if (list == PAIR_LIST_REQUEST) return request->request_ctx; - case PAIR_LIST_REPLY: - return request->reply_ctx; + if (list == PAIR_LIST_REPLY) return request->reply_ctx; - case PAIR_LIST_CONTROL: - return request->control_ctx; + if (list == PAIR_LIST_CONTROL) return request->control_ctx; - case PAIR_LIST_STATE: - return request->session_state_ctx; - - /* Don't add default */ - case PAIR_LIST_UNKNOWN: - break; - } + if (list == PAIR_LIST_STATE) return request->session_state_ctx; return NULL; } @@ -236,19 +206,9 @@ TALLOC_CTX *tmpl_list_ctx(request_t *request, tmpl_pair_list_t list) */ fr_radius_packet_t *tmpl_packet_ptr(request_t *request, tmpl_pair_list_t list) { - switch (list) { - /* Don't add default */ - case PAIR_LIST_STATE: - case PAIR_LIST_CONTROL: - case PAIR_LIST_UNKNOWN: - return NULL; + if (list == PAIR_LIST_REQUEST) return request->packet; - case PAIR_LIST_REQUEST: - return request->packet; - - case PAIR_LIST_REPLY: - return request->reply; - } + if (list == PAIR_LIST_REPLY) return request->reply; return NULL; } diff --git a/src/lib/server/tmpl_tokenize.c b/src/lib/server/tmpl_tokenize.c index 949491340e3..89e1c91d793 100644 --- a/src/lib/server/tmpl_tokenize.c +++ b/src/lib/server/tmpl_tokenize.c @@ -2196,24 +2196,8 @@ ssize_t tmpl_afrom_attr_substr(TALLOC_CTX *ctx, tmpl_attr_error_t *err, .ar_parent = fr_dict_root(fr_dict_internal()) }; - switch (at_rules->list_def) { - default: - case PAIR_LIST_REQUEST: - ar->ar_da = request_attr_request; - break; - - case PAIR_LIST_REPLY: - ar->ar_da = request_attr_reply; - break; - - case PAIR_LIST_CONTROL: - ar->ar_da = request_attr_control; - break; - - case PAIR_LIST_STATE: - ar->ar_da = request_attr_state; - break; - } + fr_assert(at_rules->list_def != PAIR_LIST_UNKNOWN); + ar->ar_da = at_rules->list_def; /* * Prepend the list ref so it gets evaluated