From: Nick Porter Date: Wed, 26 Feb 2025 20:14:10 +0000 (+0000) Subject: Add profile fallthrough options to rlm_ldap X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=2dbbd79322d31965b411cb42549ba15150e4d81a;p=thirdparty%2Ffreeradius-server.git Add profile fallthrough options to rlm_ldap --- diff --git a/src/modules/rlm_ldap/rlm_ldap.c b/src/modules/rlm_ldap/rlm_ldap.c index 951b19b2b8..15a92ffa20 100644 --- a/src/modules/rlm_ldap/rlm_ldap.c +++ b/src/modules/rlm_ldap/rlm_ldap.c @@ -101,6 +101,8 @@ static conf_parser_t profile_config[] = { { FR_CONF_OFFSET("attribute_suspend", rlm_ldap_t, profile.attr_suspend) }, { FR_CONF_OFFSET("check_attribute", rlm_ldap_t, profile.check_attr) }, { FR_CONF_OFFSET("sort_by", rlm_ldap_t, profile.obj_sort_by) }, + { FR_CONF_OFFSET("fallthrough_attribute", rlm_ldap_t, profile.fallthrough_attr) }, + { FR_CONF_OFFSET("fallthrough_default", rlm_ldap_t, profile.fallthrough_def), .dflt = "yes" }, CONF_PARSER_TERMINATOR }; diff --git a/src/modules/rlm_ldap/rlm_ldap.h b/src/modules/rlm_ldap/rlm_ldap.h index 0007de35af..5304a9729a 100644 --- a/src/modules/rlm_ldap/rlm_ldap.h +++ b/src/modules/rlm_ldap/rlm_ldap.h @@ -106,6 +106,10 @@ typedef struct { LDAPControl *obj_sort_ctrl; //!< Server side sort control char const *check_attr; //!< LDAP attribute containing check conditions to determine if //!< the profile should be applied + char const *fallthrough_attr; //!< LDAP attribute containing conditions to determine if + ///< processing should continue to the next profile when more + ///< than one is returned. + bool fallthrough_def; //!< Should profile processing fall through by default. } profile; #ifdef WITH_EDIR