summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2002-07-10 07:26:35 +0000
committerAndrew Bartlett <abartlet@samba.org>2002-07-10 07:26:35 +0000
commit202202bc475f3b8500423b1a9ccf0adc80a4dc49 (patch)
tree7033e9913b221180393b0604e602ce01a8180818
parent4be1c882be56ae0fe18bb134a1513e0e6f6965b0 (diff)
downloadsamba-202202bc475f3b8500423b1a9ccf0adc80a4dc49.tar.gz
samba-202202bc475f3b8500423b1a9ccf0adc80a4dc49.tar.xz
samba-202202bc475f3b8500423b1a9ccf0adc80a4dc49.zip
If we get a SID from group mapping, no need to check it's prefix.
Just set it directly. Andrew Bartlett
-rw-r--r--source/passdb/pdb_ldap.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/source/passdb/pdb_ldap.c b/source/passdb/pdb_ldap.c
index 643d165e588..fd5ad7ee125 100644
--- a/source/passdb/pdb_ldap.c
+++ b/source/passdb/pdb_ldap.c
@@ -589,10 +589,14 @@ static BOOL init_sam_from_ldap (struct ldapsam_privates *ldap_state,
get_single_attribute(ldap_struct, entry, "rid", temp);
user_rid = (uint32)atol(temp);
+
+ pdb_set_user_sid_from_rid(sampass, user_rid);
+
if (!get_single_attribute(ldap_struct, entry, "primaryGroupID", temp)) {
group_rid = 0;
} else {
group_rid = (uint32)atol(temp);
+ pdb_set_group_sid_from_rid(sampass, group_rid);
}
if ((ldap_state->permit_non_unix_accounts)
@@ -624,11 +628,10 @@ static BOOL init_sam_from_ldap (struct ldapsam_privates *ldap_state,
GROUP_MAP map;
/* call the mapping code here */
if(get_group_map_from_gid(gid, &map, MAPPING_WITHOUT_PRIV)) {
- if (!sid_peek_check_rid(get_global_sam_sid(), &map.sid, &group_rid))
- return False;
+ pdb_set_group_sid(sampass, &map.sid);
}
else {
- group_rid=pdb_gid_to_group_rid(gid);
+ pdb_set_group_sid_from_rid(sampass, pdb_gid_to_group_rid(gid));
}
}
}
@@ -781,9 +784,6 @@ static BOOL init_sam_from_ldap (struct ldapsam_privates *ldap_state,
pdb_set_hours_len(sampass, hours_len);
pdb_set_logon_divs(sampass, logon_divs);
- pdb_set_user_sid_from_rid(sampass, user_rid);
- pdb_set_group_sid_from_rid(sampass, group_rid);
-
pdb_set_username(sampass, username);
pdb_set_domain(sampass, domain);