From: Nick Porter Date: Mon, 9 Nov 2020 09:32:45 +0000 (+0000) Subject: Amend fr_pair_find_by_num() to take fr_pair_list_t * X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2a2ec4a2bcaa466451256d3910475fc6879592bb;p=thirdparty%2Ffreeradius-server.git Amend fr_pair_find_by_num() to take fr_pair_list_t * --- diff --git a/src/lib/server/auth.c b/src/lib/server/auth.c index 43d953c1c87..2a3ea8737bc 100644 --- a/src/lib/server/auth.c +++ b/src/lib/server/auth.c @@ -53,12 +53,12 @@ rlm_rcode_t rad_virtual_server(request_t *request) RDEBUG("Virtual server %s received request", cf_section_name2(request->server_cs)); log_request_pair_list(L_DBG_LVL_1, request, request->request_pairs, NULL); - username = fr_pair_find_by_num(request->request_pairs, 0, FR_STRIPPED_USER_NAME); - if (!username) username = fr_pair_find_by_num(request->request_pairs, 0, FR_USER_NAME); + username = fr_pair_find_by_num(&request->request_pairs, 0, FR_STRIPPED_USER_NAME); + if (!username) username = fr_pair_find_by_num(&request->request_pairs, 0, FR_USER_NAME); if (request->parent) { - parent_username = fr_pair_find_by_num(request->parent->request_pairs, 0, FR_STRIPPED_USER_NAME); - if (!parent_username) parent_username = fr_pair_find_by_num(request->parent->request_pairs, 0, FR_USER_NAME); + parent_username = fr_pair_find_by_num(&request->parent->request_pairs, 0, FR_STRIPPED_USER_NAME); + if (!parent_username) parent_username = fr_pair_find_by_num(&request->parent->request_pairs, 0, FR_USER_NAME); } /* @@ -69,7 +69,7 @@ rlm_rcode_t rad_virtual_server(request_t *request) * Look at the full User-Name with realm. */ if (parent_username->da->attr == FR_STRIPPED_USER_NAME) { - vp = fr_pair_find_by_num(request->parent->request_pairs, 0, FR_USER_NAME); + vp = fr_pair_find_by_num(&request->parent->request_pairs, 0, FR_USER_NAME); if (!vp) goto runit; } else { vp = parent_username; diff --git a/src/lib/server/paircmp.c b/src/lib/server/paircmp.c index 198eec948b5..a29313d5af0 100644 --- a/src/lib/server/paircmp.c +++ b/src/lib/server/paircmp.c @@ -595,7 +595,7 @@ int paircmp(request_t *request, WARN("Are you sure you don't mean Cleartext-Password?"); WARN("See \"man rlm_pap\" for more information"); } - if (fr_pair_find_by_num(request_list, 0, FR_USER_PASSWORD) == NULL) continue; + if (fr_pair_find_by_num(&request_list, 0, FR_USER_PASSWORD) == NULL) continue; } /* diff --git a/src/lib/util/pair.c b/src/lib/util/pair.c index ee6a3fa86ab..125c2042b15 100644 --- a/src/lib/util/pair.c +++ b/src/lib/util/pair.c @@ -414,16 +414,16 @@ fr_pair_t *fr_pair_find_by_da(fr_pair_list_t *head, fr_dict_attr_t const *da) * * @todo should take DAs and do a pointer comparison. */ -fr_pair_t *fr_pair_find_by_num(fr_pair_t *head, unsigned int vendor, unsigned int attr) +fr_pair_t *fr_pair_find_by_num(fr_pair_list_t *head, unsigned int vendor, unsigned int attr) { fr_pair_t *vp; /* List head may be NULL if it contains no VPs */ - if (!head) return NULL; + if (!*head) return NULL; - LIST_VERIFY(head); + LIST_VERIFY(*head); - for (vp = head; vp != NULL; vp = vp->next) { + for (vp = *head; vp != NULL; vp = vp->next) { if (!fr_dict_attr_is_top_level(vp->da)) continue; if (vendor > 0) { diff --git a/src/lib/util/pair.h b/src/lib/util/pair.h index c23cdb577e8..c0a105963e5 100644 --- a/src/lib/util/pair.h +++ b/src/lib/util/pair.h @@ -226,7 +226,7 @@ static inline fr_pair_t *fr_cursor_iter_by_ancestor_init(fr_cursor_t *cursor, fr_pair_t *fr_pair_find_by_da(fr_pair_list_t *head, fr_dict_attr_t const *da); -fr_pair_t *fr_pair_find_by_num(fr_pair_t *head, unsigned int vendor, unsigned int attr); +fr_pair_t *fr_pair_find_by_num(fr_pair_list_t *head, unsigned int vendor, unsigned int attr); fr_pair_t *fr_pair_find_by_child_num(fr_pair_t *head, fr_dict_attr_t const *parent, unsigned int attr);