Arthur de Jong

Open Source / Free Software developer

summaryrefslogtreecommitdiffstats
path: root/nslcd/group.c
diff options
context:
space:
mode:
authorArthur de Jong <arthur@arthurdejong.org>2009-05-24 10:56:33 +0200
committerArthur de Jong <arthur@arthurdejong.org>2009-05-24 10:56:33 +0200
commit6bdd24fe2857258515496a6eedd7ee8650144582 (patch)
treef6a37aa31062c567f528d13a0eafa6c2dd22c7d8 /nslcd/group.c
parentd50fe928bb5526892f091f0ff287ec449b9b66be (diff)
support multiple search bases, partially based on a patch by Leigh Wedding <lwedding@bigpond.com>
git-svn-id: http://arthurdejong.org/svn/nss-pam-ldapd/nss-ldapd@892 ef36b2f9-881f-0410-afb5-c4e39611909c
Diffstat (limited to 'nslcd/group.c')
-rw-r--r--nslcd/group.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/nslcd/group.c b/nslcd/group.c
index 686a1d5..8f681eb 100644
--- a/nslcd/group.c
+++ b/nslcd/group.c
@@ -5,7 +5,7 @@
Copyright (C) 1997-2006 Luke Howard
Copyright (C) 2006 West Consulting
- Copyright (C) 2006, 2007, 2008 Arthur de Jong
+ Copyright (C) 2006, 2007, 2008, 2009 Arthur de Jong
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -52,7 +52,7 @@
*/
/* the search base for searches */
-const char *group_base = NULL;
+const char *group_bases[NSS_LDAP_CONFIG_MAX_BASES] = { NULL };
/* the search scope for searches */
int group_scope = LDAP_SCOPE_DEFAULT;
@@ -126,9 +126,11 @@ static int mkfilter_group_bymember(MYLDAP_SESSION *session,
static void group_init(void)
{
- /* set up base */
- if (group_base==NULL)
- group_base=nslcd_cfg->ldc_base;
+ int i;
+ /* set up search bases */
+ if (group_bases[0]==NULL)
+ for (i=0;i<NSS_LDAP_CONFIG_MAX_BASES;i++)
+ group_bases[i]=nslcd_cfg->ldc_bases[i];
/* set up scope */
if (group_scope==LDAP_SCOPE_DEFAULT)
group_scope=nslcd_cfg->ldc_scope;