From 85948eac0c077285fb9aa9db49224c3cad9c3ac8 Mon Sep 17 00:00:00 2001 From: Alexey Tikhonov Date: Wed, 27 Nov 2024 16:16:59 +0100 Subject: [PATCH] become_user() moved to src/monitor Monitor is the only user of this function and only if built with support of deprecated 'sssd.conf::user' option. --- Makefile.am | 10 +++++----- src/{util => monitor}/become_user.c | 0 src/monitor/monitor_bootstrap.c | 2 ++ src/tests/cwrap/test_become_user.c | 2 +- src/util/util.h | 3 --- 5 files changed, 8 insertions(+), 9 deletions(-) rename src/{util => monitor}/become_user.c (100%) diff --git a/Makefile.am b/Makefile.am index eed526250e3..38d3797419b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1300,7 +1300,6 @@ libsss_util_la_SOURCES = \ src/util/util_sss_idmap.c \ src/util/well_known_sids.c \ src/util/string_utils.c \ - src/util/become_user.c \ src/util/capabilities.c \ src/util/util_watchdog.c \ src/util/sss_ptr_hash.c \ @@ -1528,6 +1527,11 @@ sssd_SOURCES = \ src/monitor/nscd.c \ src/confdb/confdb_setup.c \ $(NULL) + +if BUILD_CONF_SERVICE_USER_SUPPORT +sssd_SOURCES += src/monitor/become_user.c +endif # BUILD_CONF_SERVICE_USER_SUPPORT + sssd_LDADD = \ $(SSSD_LIBS) \ $(INOTIFY_LIBS) \ @@ -2208,7 +2212,6 @@ krb5_utils_tests_SOURCES = \ src/providers/data_provider_fo.c \ src/providers/data_provider_opts.c \ src/providers/data_provider_callbacks.c \ - src/util/become_user.c \ $(SSSD_FAILOVER_OBJ) \ $(NULL) krb5_utils_tests_CFLAGS = \ @@ -4373,7 +4376,6 @@ libsss_krb5_common_la_SOURCES = \ src/providers/krb5/krb5_ccache.c \ src/util/sss_krb5.c \ src/util/sss_iobuf.c \ - src/util/become_user.c \ src/util/pac_utils.c \ $(NULL) libsss_krb5_common_la_CFLAGS = \ @@ -4684,7 +4686,6 @@ krb5_child_SOURCES = \ src/util/signal.c \ src/util/sss_chain_id.c \ src/util/strtonum.c \ - src/util/become_user.c \ src/util/util_errors.c \ src/sss_client/common.c \ src/krb5_plugin/common/utils.c \ @@ -4727,7 +4728,6 @@ ldap_child_SOURCES = \ src/util/util_ext.c \ src/util/capabilities.c \ src/util/signal.c \ - src/util/become_user.c \ src/util/util_errors.c \ $(NULL) ldap_child_CFLAGS = \ diff --git a/src/util/become_user.c b/src/monitor/become_user.c similarity index 100% rename from src/util/become_user.c rename to src/monitor/become_user.c diff --git a/src/monitor/monitor_bootstrap.c b/src/monitor/monitor_bootstrap.c index 0e28141e207..fa7866789bb 100644 --- a/src/monitor/monitor_bootstrap.c +++ b/src/monitor/monitor_bootstrap.c @@ -78,6 +78,8 @@ static int check_supplementary_group(gid_t gid) #endif /* SSSD_NON_ROOT_USER */ #ifdef BUILD_CONF_SERVICE_USER_SUPPORT +errno_t become_user(uid_t uid, gid_t gid, bool keep_set_uid); + int bootstrap_monitor_process(uid_t target_uid, gid_t target_gid) #else int bootstrap_monitor_process(void) diff --git a/src/tests/cwrap/test_become_user.c b/src/tests/cwrap/test_become_user.c index 1df6e3c06f8..53dd582c419 100644 --- a/src/tests/cwrap/test_become_user.c +++ b/src/tests/cwrap/test_become_user.c @@ -21,7 +21,7 @@ */ /* Yes, a .c file. We need to call static functions during the test */ -#include "../../../src/util/become_user.c" +#include "../../../src/monitor/become_user.c" #include #include "util/util.h" diff --git a/src/util/util.h b/src/util/util.h index 6859a53542e..eb4b760a48f 100644 --- a/src/util/util.h +++ b/src/util/util.h @@ -736,9 +736,6 @@ char **concatenate_string_array(TALLOC_CTX *mem_ctx, errno_t mod_defaults_list(TALLOC_CTX *mem_ctx, const char **defaults_list, char **mod_list, char ***_list); -/* from become_user.c */ -errno_t become_user(uid_t uid, gid_t gid, bool keep_set_uid); - /* from capabilities.c */ errno_t sss_log_caps_to_str(bool only_non_zero, char **_str); errno_t sss_set_cap_effective(cap_value_t cap, bool effective);