]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
r4851: Preleminary fix for ldapsam_enum_group_memberships when
authorGünther Deschner <gd@samba.org>
Wed, 19 Jan 2005 17:42:33 +0000 (17:42 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 15:53:59 +0000 (10:53 -0500)
ldapsam:trusted=True. Don't bail out when ldap-search returns pure
posixgroups (w.o. samba group-mapping).

This way those unix-memberships do not appear in user and nt user token.
Volker, could you please look over that one?

Guenther

source/passdb/pdb_ldap.c

index 2cc1798d3fdfb265f93fd7bb2a740783ef614775..0c6e59b2fcd15f07d819cc5e24d2bdbdc7d04e0a 100644 (file)
@@ -2225,7 +2225,7 @@ static NTSTATUS ldapsam_enum_group_memberships(struct pdb_methods *methods,
                if (!smbldap_get_single_attribute(conn->ldap_struct,
                                                  entry, "sambaSID",
                                                  str, sizeof(str)-1))
-                       goto done;
+                       continue;
 
                if (!string_to_sid(&sid, str))
                        goto done;
@@ -2233,7 +2233,7 @@ static NTSTATUS ldapsam_enum_group_memberships(struct pdb_methods *methods,
                if (!smbldap_get_single_attribute(conn->ldap_struct,
                                                  entry, "gidNumber",
                                                  str, sizeof(str)-1))
-                       goto done;
+                       continue;
 
                gid = strtoul(str, &end, 10);
 
@@ -2249,7 +2249,7 @@ static NTSTATUS ldapsam_enum_group_memberships(struct pdb_methods *methods,
        }
 
        if (sid_compare(&global_sid_NULL, &(*sids)[0]) == 0) {
-               DEBUG(3, ("primary group not found\n"));
+               DEBUG(3, ("primary group of [%s] not found\n", username));
                goto done;
        }