diff options
author | Stefan Metzmacher <metze@samba.org> | 2007-02-13 09:27:56 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:48:08 -0500 |
commit | 08de05ce5a4da17403fc8feb2a1760ab21a767fa (patch) | |
tree | 61941064b2d42a3944d04a9ebe0646e1edb43f69 /source4/libcli | |
parent | e869883d801b79f4d13cf323b73a45fcd6d63492 (diff) | |
download | samba-08de05ce5a4da17403fc8feb2a1760ab21a767fa.tar.gz samba-08de05ce5a4da17403fc8feb2a1760ab21a767fa.tar.bz2 samba-08de05ce5a4da17403fc8feb2a1760ab21a767fa.zip |
r21307: make it possible to pass in NULL for domain or rid,
if someone isn't interessted in one of it
metze
(This used to be commit 1fdc71918a430c35af91fa7788e191d381f76d56)
Diffstat (limited to 'source4/libcli')
-rw-r--r-- | source4/libcli/security/dom_sid.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/source4/libcli/security/dom_sid.c b/source4/libcli/security/dom_sid.c index 54242eb515..a72588dee1 100644 --- a/source4/libcli/security/dom_sid.c +++ b/source4/libcli/security/dom_sid.c @@ -225,12 +225,18 @@ NTSTATUS dom_sid_split_rid(TALLOC_CTX *mem_ctx, const struct dom_sid *sid, return NT_STATUS_INVALID_PARAMETER; } - if (!(*domain = dom_sid_dup(mem_ctx, sid))) { - return NT_STATUS_NO_MEMORY; + if (domain) { + if (!(*domain = dom_sid_dup(mem_ctx, sid))) { + return NT_STATUS_NO_MEMORY; + } + + (*domain)->num_auths -= 1; + } + + if (rid) { + *rid = sid->sub_auths[sid->num_auths - 1]; } - (*domain)->num_auths -= 1; - *rid = (*domain)->sub_auths[(*domain)->num_auths]; return NT_STATUS_OK; } |