summaryrefslogtreecommitdiff
path: root/source3/nsswitch
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2004-01-14 21:22:44 +0000
committerGerald Carter <jerry@samba.org>2004-01-14 21:22:44 +0000
commit77201a85d811d55812018a5752272e6d042a6b0b (patch)
tree0064a3df2f45f46a38dc1bfaa00a1f1b169927a8 /source3/nsswitch
parent74aa29bd9ecf9bf74f04b36d8e0e0eb2080793d9 (diff)
downloadsamba-77201a85d811d55812018a5752272e6d042a6b0b.tar.gz
samba-77201a85d811d55812018a5752272e6d042a6b0b.tar.bz2
samba-77201a85d811d55812018a5752272e6d042a6b0b.zip
Fix initgroups() call nss_winbind on solaris; patch from John Klinger <john.klinger@lmco.com>
(This used to be commit c4d58ec5d5c2b8947824d78639a7e9e615e2a400)
Diffstat (limited to 'source3/nsswitch')
-rw-r--r--source3/nsswitch/winbind_nss_solaris.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/source3/nsswitch/winbind_nss_solaris.c b/source3/nsswitch/winbind_nss_solaris.c
index 6671090e6a..8f03eb4cd6 100644
--- a/source3/nsswitch/winbind_nss_solaris.c
+++ b/source3/nsswitch/winbind_nss_solaris.c
@@ -256,7 +256,23 @@ _nss_winbind_getgrgid_solwrap(nss_backend_t* be, void* args)
static NSS_STATUS
_nss_winbind_getgroupsbymember_solwrap(nss_backend_t* be, void* args)
{
+ int errnop;
+ struct nss_groupsbymem *gmem = (struct nss_groupsbymem *)args;
+
NSS_DEBUG("_nss_winbind_getgroupsbymember");
+
+ _nss_winbind_initgroups_dyn(gmem->username,
+ gmem->gid_array[0], /* Primary Group */
+ &gmem->numgids,
+ &gmem->maxgids,
+ &gmem->gid_array,
+ gmem->maxgids,
+ &errnop);
+
+ /*
+ * Always return NOTFOUND so nsswitch will get info from all
+ * the database backends specified in the nsswitch.conf file.
+ */
return NSS_STATUS_NOTFOUND;
}