From: Alan T. DeKok Date: Mon, 11 Jan 2021 15:32:22 +0000 (-0500) Subject: remove check_list from paircmp() functions X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0ed47afec3c41c6080ddaa386bb214930d56b901;p=thirdparty%2Ffreeradius-server.git remove check_list from paircmp() functions now that prefix / suffix are gone, it's no longer needed --- diff --git a/src/lib/server/cond_eval.c b/src/lib/server/cond_eval.c index 7a28e903dfd..c5d5724c7d2 100644 --- a/src/lib/server/cond_eval.c +++ b/src/lib/server/cond_eval.c @@ -319,9 +319,7 @@ static int cond_cmp_values(request_t *request, fr_cond_t const *c, fr_value_box_ */ if (c->pass2_fixup == PASS2_PAIRCOMPARE) { fr_pair_t *vp; - fr_pair_list_t vps; - fr_pair_list_init(&vps); EVAL_DEBUG("CMP WITH PAIRCOMPARE"); fr_assert(tmpl_is_attr(map->lhs)); @@ -330,13 +328,11 @@ static int cond_cmp_values(request_t *request, fr_cond_t const *c, fr_value_box_ fr_value_box_copy(vp, &vp->data, rhs); - fr_pair_list_single_value(vps,*vp); - /* * Do JUST the virtual attribute comparison. * Skip all of the rest of the complexity of paircmp(). */ - rcode = paircmp_virtual(request, &request->request_pairs, vp, &vps); + rcode = paircmp_virtual(request, &request->request_pairs, vp); rcode = (rcode == 0) ? 1 : 0; talloc_free(vp); goto finish; diff --git a/src/lib/server/paircmp.c b/src/lib/server/paircmp.c index 01370797121..789402ba90a 100644 --- a/src/lib/server/paircmp.c +++ b/src/lib/server/paircmp.c @@ -106,8 +106,7 @@ static paircmp_t *cmp; static int packet_cmp(UNUSED void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, - fr_pair_t *check_item, - UNUSED fr_pair_list_t *check_list) + fr_pair_t *check_item) { VP_VERIFY(check_item); @@ -122,8 +121,7 @@ static int packet_cmp(UNUSED void *instance, static int generic_cmp(UNUSED void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, - fr_pair_t *check_item, - UNUSED fr_pair_list_t *check_list) + fr_pair_t *check_item) { VP_VERIFY(check_item); @@ -422,7 +420,6 @@ finish: * @param[in] request_item item to compare. * @param[in] request_list list pairs. * @param[in] check_item item to compare. - * @param[in] check_list list. * @return * - 0 if check_item and vp are equal. * - -1 if vp value is less than check_item value. @@ -431,8 +428,7 @@ finish: static int paircmp_func(request_t *request, fr_pair_t *request_item, fr_pair_list_t *request_list, - fr_pair_t *check_item, - fr_pair_list_t *check_list) + fr_pair_t *check_item) { paircmp_t *c; @@ -451,7 +447,7 @@ static int paircmp_func(request_t *request, */ for (c = cmp; c; c = c->next) { if (c->da == check_item->da) { - return (c->compare)(c->instance, request, request_list, check_item, check_list); + return (c->compare)(c->instance, request, request_list, check_item); } } @@ -463,15 +459,14 @@ static int paircmp_func(request_t *request, /** Compare check_item and request * - * Unlike paircmp_pairs() this function will call any attribute-specific - * comparison functions registered. vp to be matched is request_item or - * found in check_list or looked up from external sources depending on the + * Unlike paircmp_pairs() this function will call any + * attribute-specific comparison functions registered. vp to be + * matched is looked up from external sources depending on the * comparison function called. * * @param[in] request Current request. * @param[in] request_list list pairs. * @param[in] check_item item to compare. - * @param[in] check_list list. * @return * - 0 if check_item matches * - -1 if check_item is smaller @@ -479,14 +474,13 @@ static int paircmp_func(request_t *request, */ int paircmp_virtual(request_t *request, fr_pair_list_t *request_list, - fr_pair_t *check_item, - fr_pair_list_t *check_list) + fr_pair_t *check_item) { paircmp_t *c; for (c = cmp; c; c = c->next) { if (c->da == check_item->da) { - return (c->compare)(c->instance, request, request_list, check_item, check_list); + return (c->compare)(c->instance, request, request_list, check_item); } } @@ -605,7 +599,7 @@ int paircmp(request_t *request, /* * OK it is present now compare them. */ - compare = paircmp_func(request, auth_item, request_list, check_item, check_list); + compare = paircmp_func(request, auth_item, request_list, check_item); switch (check_item->op) { case T_OP_EQ: default: diff --git a/src/lib/server/paircmp.h b/src/lib/server/paircmp.h index 277e041f761..15e9997789d 100644 --- a/src/lib/server/paircmp.h +++ b/src/lib/server/paircmp.h @@ -35,7 +35,7 @@ extern "C" { #include /* for paircmp_register */ -typedef int (*RAD_COMPARE_FUNC)(void *instance, request_t *,fr_pair_list_t *, fr_pair_t *, fr_pair_list_t *); +typedef int (*RAD_COMPARE_FUNC)(void *instance, request_t *,fr_pair_list_t *, fr_pair_t *); int paircmp_pairs(request_t *request, fr_pair_t *check, fr_pair_t *vp); @@ -43,8 +43,7 @@ int paircmp(request_t *request, fr_pair_list_t *request_list, fr_pair_list_t *c int paircmp_virtual(request_t *request, fr_pair_list_t *request_list, - fr_pair_t *check_item, - fr_pair_list_t *check_list); + fr_pair_t *check_item); int paircmp_find(fr_dict_attr_t const *da); diff --git a/src/modules/rlm_expiration/rlm_expiration.c b/src/modules/rlm_expiration/rlm_expiration.c index 7032700a02a..d8c396a93cd 100644 --- a/src/modules/rlm_expiration/rlm_expiration.c +++ b/src/modules/rlm_expiration/rlm_expiration.c @@ -110,8 +110,7 @@ static unlang_action_t CC_HINT(nonnull) mod_authorize(rlm_rcode_t *p_result, UNU /* * Compare the expiration date. */ -static int expirecmp(UNUSED void *instance, request_t *req, UNUSED fr_pair_list_t *request_list, fr_pair_t *check, - UNUSED fr_pair_list_t *check_list) +static int expirecmp(UNUSED void *instance, request_t *req, UNUSED fr_pair_list_t *request_list, fr_pair_t *check) { time_t now = 0; diff --git a/src/modules/rlm_ldap/rlm_ldap.c b/src/modules/rlm_ldap/rlm_ldap.c index 40c93c99e28..6f975069813 100644 --- a/src/modules/rlm_ldap/rlm_ldap.c +++ b/src/modules/rlm_ldap/rlm_ldap.c @@ -588,13 +588,11 @@ free_urldesc: * @param request Current request. * @param request_list Unknown. * @param check Which group to check for user membership. - * @param check_list Unknown. * @return * - 1 on failure (or if the user is not a member). * - 0 on success. */ -static int rlm_ldap_groupcmp(void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, fr_pair_t *check, - UNUSED fr_pair_list_t *check_list) +static int rlm_ldap_groupcmp(void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, fr_pair_t *check) { rlm_ldap_t const *inst = talloc_get_type_abort_const(instance, rlm_ldap_t); rlm_rcode_t rcode; diff --git a/src/modules/rlm_logintime/rlm_logintime.c b/src/modules/rlm_logintime/rlm_logintime.c index 7b7607f7da7..d706dd30e7f 100644 --- a/src/modules/rlm_logintime/rlm_logintime.c +++ b/src/modules/rlm_logintime/rlm_logintime.c @@ -78,8 +78,7 @@ fr_dict_attr_autoload_t rlm_logintime_dict_attr[] = { /* * Compare the current time to a range. */ -static int timecmp(UNUSED void *instance, request_t *req, UNUSED fr_pair_list_t *request_list, fr_pair_t *check, - UNUSED fr_pair_list_t *check_list) +static int timecmp(UNUSED void *instance, request_t *req, UNUSED fr_pair_list_t *request_list, fr_pair_t *check) { /* * If there's a request, use that timestamp. @@ -94,8 +93,7 @@ static int timecmp(UNUSED void *instance, request_t *req, UNUSED fr_pair_list_t * Time-Of-Day support */ static int time_of_day(UNUSED void *instance, request_t *request, - UNUSED fr_pair_list_t *request_list, fr_pair_t *check, - UNUSED fr_pair_list_t *check_list) + UNUSED fr_pair_list_t *request_list, fr_pair_t *check) { int scan; int hhmmss, when; diff --git a/src/modules/rlm_sql/rlm_sql.c b/src/modules/rlm_sql/rlm_sql.c index 592e34d6d13..fcc70a25f01 100644 --- a/src/modules/rlm_sql/rlm_sql.c +++ b/src/modules/rlm_sql/rlm_sql.c @@ -732,10 +732,10 @@ static int sql_get_grouplist(rlm_sql_t const *inst, rlm_sql_handle_t **handle, r * username will then be checked with the passed check string. */ static int sql_groupcmp(void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, - fr_pair_t *check, UNUSED fr_pair_list_t *check_list) CC_HINT(nonnull (1, 2, 4)); + fr_pair_t *check) CC_HINT(nonnull (1, 2, 4)); static int sql_groupcmp(void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, - fr_pair_t *check, UNUSED fr_pair_list_t *check_list) + fr_pair_t *check) { rlm_sql_handle_t *handle; rlm_sql_t const *inst = talloc_get_type_abort_const(instance, rlm_sql_t); diff --git a/src/modules/rlm_sqlcounter/rlm_sqlcounter.c b/src/modules/rlm_sqlcounter/rlm_sqlcounter.c index cd9353421c5..5b5769303c9 100644 --- a/src/modules/rlm_sqlcounter/rlm_sqlcounter.c +++ b/src/modules/rlm_sqlcounter/rlm_sqlcounter.c @@ -340,8 +340,7 @@ static ssize_t sqlcounter_expand(char *out, int outlen, rlm_sqlcounter_t const * /* * See if the counter matches. */ -static int counter_cmp(void *instance, request_t *request, UNUSED fr_pair_list_t *request_list , fr_pair_t *check, - UNUSED fr_pair_list_t *check_list) +static int counter_cmp(void *instance, request_t *request, UNUSED fr_pair_list_t *request_list , fr_pair_t *check) { rlm_sqlcounter_t const *inst = talloc_get_type_abort_const(instance, rlm_sqlcounter_t); uint64_t counter; diff --git a/src/modules/rlm_test/rlm_test.c b/src/modules/rlm_test/rlm_test.c index 1d4680c6146..7281142362a 100644 --- a/src/modules/rlm_test/rlm_test.c +++ b/src/modules/rlm_test/rlm_test.c @@ -189,8 +189,7 @@ fr_dict_attr_autoload_t rlm_test_dict_attr[] = { { NULL } }; -static int rlm_test_cmp(UNUSED void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, fr_pair_t *check, - UNUSED fr_pair_list_t *check_list) +static int rlm_test_cmp(UNUSED void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, fr_pair_t *check) { fr_assert(check->vp_type == FR_TYPE_STRING); diff --git a/src/modules/rlm_unix/rlm_unix.c b/src/modules/rlm_unix/rlm_unix.c index 2c25de836ea..8aed24fe7fb 100644 --- a/src/modules/rlm_unix/rlm_unix.c +++ b/src/modules/rlm_unix/rlm_unix.c @@ -101,7 +101,7 @@ fr_dict_attr_autoload_t rlm_unix_dict_attr[] = { * The Unix-Group = handler. */ static int groupcmp(UNUSED void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, - fr_pair_t *check, UNUSED fr_pair_list_t *check_list) + fr_pair_t *check) { struct passwd *pwd; struct group *grp; diff --git a/src/modules/rlm_winbind/rlm_winbind.c b/src/modules/rlm_winbind/rlm_winbind.c index b19f23b90fd..71df90b7cca 100644 --- a/src/modules/rlm_winbind/rlm_winbind.c +++ b/src/modules/rlm_winbind/rlm_winbind.c @@ -78,14 +78,12 @@ fr_dict_attr_autoload_t rlm_winbind_dict_attr[] = { * @param request The current request * @param request_list The request list * @param check Value pair containing group to be searched - * @param check_list Unknown * * @return * - 0 user is in group * - 1 failure or user is not in group */ -static int winbind_group_cmp(void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, fr_pair_t *check, - UNUSED fr_pair_list_t *check_list) +static int winbind_group_cmp(void *instance, request_t *request, UNUSED fr_pair_list_t *request_list, fr_pair_t *check) { rlm_winbind_t *inst = instance; int ret = 1;