From: Arjun Shankar Date: Thu, 11 May 2023 12:54:11 +0000 (+0200) Subject: nss: Reconcile conditional declaration and use of `is_nscd' X-Git-Tag: upstream/2.39~812 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bea1a4a77305cef90dac47b873bd9f01a6409c22;p=platform%2Fupstream%2Fglibc.git nss: Reconcile conditional declaration and use of `is_nscd' This change harmonizes the declaration and use of `is_nscd' and fixes a build failure with the "--enable-static-nss --enable-nscd" configuration options due to `is_nscd' being used undeclared. The purpose of `is_nscd' is to avoid (nss <-> nscd) recursion in dynamically linked libc (SHARED) that is nscd-aware (USE_NSCD), and so its declaration and use should be guarded by the definition of those macros. Reviewed-by: Carlos O'Donell --- diff --git a/nss/nss_module.c b/nss/nss_module.c index 487e513..0104f88 100644 --- a/nss/nss_module.c +++ b/nss/nss_module.c @@ -53,7 +53,7 @@ static struct nss_module *nss_module_list; modules. */ __libc_lock_define (static, nss_module_list_lock); -#if defined USE_NSCD && (!defined DO_STATIC_NSS || defined SHARED) +#if defined SHARED && defined USE_NSCD /* Nonzero if this is the nscd process. */ static bool is_nscd; /* The callback passed to the init functions when nscd is used. */ @@ -147,7 +147,7 @@ module_load_builtin (struct nss_module *module, static bool module_load_nss_files (struct nss_module *module) { -#ifdef USE_NSCD +#if defined SHARED && defined USE_NSCD if (is_nscd) { void (*cb) (size_t, struct traced_file *) = nscd_init_cb; @@ -238,7 +238,7 @@ module_load (struct nss_module *module) PTR_MANGLE (pointers[idx]); } -# ifdef USE_NSCD +# if defined SHARED && defined USE_NSCD if (is_nscd) { /* Call the init function when nscd is used. */