Skip to content

Commit

Permalink
nss: Reconcile conditional declaration and use of `is_nscd'
Browse files Browse the repository at this point in the history
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 <carlos@redhat.com>
  • Loading branch information
submachine committed May 16, 2023
1 parent eeef96f commit bea1a4a
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions nss/nss_module.c
Original file line number Diff line number Diff line change
Expand Up @@ -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. */
Expand Down Expand Up @@ -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;
Expand Down Expand Up @@ -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. */
Expand Down

0 comments on commit bea1a4a

Please sign in to comment.