diff options
author | Gerald Carter <jerry@samba.org> | 2005-08-26 18:57:32 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2005-08-26 18:57:32 +0000 |
commit | ef196c00446852ada0bf6c97f859b0aea726e982 (patch) | |
tree | f77b16af16aa3bceb1a5264d96e0bbbe9b697567 /source/passdb | |
parent | 2788b4f759f620d8cfaeae0fee0baf8900f06b2b (diff) | |
download | samba-ef196c00446852ada0bf6c97f859b0aea726e982.tar.gz samba-ef196c00446852ada0bf6c97f859b0aea726e982.tar.xz samba-ef196c00446852ada0bf6c97f859b0aea726e982.zip |
r9660: real fix for group enumeration bug in 3.0.20; only affected the ldapsam code
Diffstat (limited to 'source/passdb')
-rw-r--r-- | source/passdb/pdb_ldap.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/source/passdb/pdb_ldap.c b/source/passdb/pdb_ldap.c index ee7a1f5b4cb..17ff053783c 100644 --- a/source/passdb/pdb_ldap.c +++ b/source/passdb/pdb_ldap.c @@ -3692,22 +3692,23 @@ static BOOL ldapgroup2displayentry(struct ldap_search_state *state, return False; } + /* verify that the 'cn' attribute exists */ + vals = ldap_get_values(ld, entry, "cn"); if ((vals == NULL) || (vals[0] == NULL)) { DEBUG(5, ("\"cn\" not found\n")); return False; } - pull_utf8_talloc(mem_ctx, - CONST_DISCARD(char **, &result->account_name), - vals[0]); ldap_value_free(vals); + /* display name is the NT group name */ + vals = ldap_get_values(ld, entry, "displayName"); if ((vals == NULL) || (vals[0] == NULL)) DEBUG(8, ("\"displayName\" not found\n")); else pull_utf8_talloc(mem_ctx, - CONST_DISCARD(char **, &result->fullname), + CONST_DISCARD(char **, &result->account_name), vals[0]); ldap_value_free(vals); |