diff options
author | Luke Leighton <lkcl@samba.org> | 1998-12-02 22:05:56 +0000 |
---|---|---|
committer | Luke Leighton <lkcl@samba.org> | 1998-12-02 22:05:56 +0000 |
commit | 78a86c64960a7823b0db8b7bebfffabb4a5ba864 (patch) | |
tree | 22fd61bd4f6699ab93456ab46e7ec39956f7ffc7 /source/groupdb | |
parent | 9bce7340d60a49594f67cc3c6cc6119b33a5358a (diff) | |
download | samba-78a86c64960a7823b0db8b7bebfffabb4a5ba864.tar.gz samba-78a86c64960a7823b0db8b7bebfffabb4a5ba864.tar.xz samba-78a86c64960a7823b0db8b7bebfffabb4a5ba864.zip |
added rid and sid_name_use to DOMAIN_GRP_MEMBER, for use in group member
query.
domain groups now work, hurrah! only thing is that the description is
one character long, don't know why (which is wierd in itself).
Diffstat (limited to 'source/groupdb')
-rw-r--r-- | source/groupdb/groupunix.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/source/groupdb/groupunix.c b/source/groupdb/groupunix.c index 685e8146c02..154e23338d9 100644 --- a/source/groupdb/groupunix.c +++ b/source/groupdb/groupunix.c @@ -84,6 +84,8 @@ BOOL get_unixgroup_members(struct group *grp, for (i = 0; (unix_name = grp->gr_mem[i]) != NULL; i++) { DOM_NAME_MAP gmep; + DOMAIN_GRP_MEMBER *mem; + uint32 rid; if (!lookupsmbpwnam (unix_name, &gmep) && !lookupsmbgrpnam(unix_name, &gmep)) @@ -100,7 +102,8 @@ BOOL get_unixgroup_members(struct group *grp, continue; } - if (!sid_front_equal(&global_sam_sid, &gmep.sid)) + sid_split_rid(&gmep.sid, &rid); + if (!sid_equal(&global_sam_sid, &gmep.sid)) { DEBUG(0,("group database: could not resolve name %s (wrong Domain SID)\n", unix_name)); @@ -113,9 +116,13 @@ BOOL get_unixgroup_members(struct group *grp, return False; } - fstrcpy((*members)[(*num_mem)].name, gmep.nt_name); - (*members)[(*num_mem)].attr = 0x07; + mem = &(*members)[(*num_mem)]; (*num_mem)++; + + fstrcpy(mem->name, gmep.nt_name); + mem->attr = 0x07; + mem->sid_use = gmep.type; + mem->rid = rid; } return True; } |