summaryrefslogtreecommitdiff
path: root/source3/rpc_server
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-10-20 15:12:58 +0200
committerGünther Deschner <gd@samba.org>2009-10-20 15:28:31 +0200
commit18dd62616028cf202f63a12c20d5e21e390451b6 (patch)
tree7b88b32baadb2bb70ac774a3c434a73db1f1d06d /source3/rpc_server
parentb6d97a00b13fc338f6fef3c5587619821d86194c (diff)
downloadsamba-18dd62616028cf202f63a12c20d5e21e390451b6.tar.gz
samba-18dd62616028cf202f63a12c20d5e21e390451b6.tar.bz2
samba-18dd62616028cf202f63a12c20d5e21e390451b6.zip
s3-lsa: When looking up domains in LookupNames, do not strip the sid.
Found by RPC-LSA-LOOKUPNAMES torture test. Guenther
Diffstat (limited to 'source3/rpc_server')
-rw-r--r--source3/rpc_server/srv_lsa_nt.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/source3/rpc_server/srv_lsa_nt.c b/source3/rpc_server/srv_lsa_nt.c
index c5805ef3d4..a3a1218956 100644
--- a/source3/rpc_server/srv_lsa_nt.c
+++ b/source3/rpc_server/srv_lsa_nt.c
@@ -195,7 +195,11 @@ static NTSTATUS lookup_lsa_rids(TALLOC_CTX *mem_ctx,
dom_idx = -1;
if (type != SID_NAME_UNKNOWN) {
- sid_split_rid(&sid, &rid);
+ if (type == SID_NAME_DOMAIN) {
+ rid = (uint32_t)-1;
+ } else {
+ sid_split_rid(&sid, &rid);
+ }
dom_idx = init_lsa_ref_domain_list(mem_ctx, ref, domain, &sid);
mapped_count++;
}