summaryrefslogtreecommitdiffstats
path: root/source/groupdb
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2006-03-15 17:40:28 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:15:31 -0500
commitd2c1842978cd50485849bfc4fb6d94767d96cab0 (patch)
treecd50897c106a258887f3f2bbf2f15faa9255e419 /source/groupdb
parentf3879dd6bbbb20524e138b9ba8a54f6464fee5eb (diff)
downloadsamba-d2c1842978cd50485849bfc4fb6d94767d96cab0.tar.gz
samba-d2c1842978cd50485849bfc4fb6d94767d96cab0.tar.xz
samba-d2c1842978cd50485849bfc4fb6d94767d96cab0.zip
r14457: Add a few more special cases for RID 513 in the samr code.
Now that I know what all the requirements for this group are I can generalize the code some more and make it cleaner. But at least this is working with lusrmgr.msc on XP and 2k now.
Diffstat (limited to 'source/groupdb')
-rw-r--r--source/groupdb/mapping.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/source/groupdb/mapping.c b/source/groupdb/mapping.c
index 04471f9d433..830584979b5 100644
--- a/source/groupdb/mapping.c
+++ b/source/groupdb/mapping.c
@@ -814,8 +814,24 @@ BOOL get_domain_group_from_sid(DOM_SID sid, GROUP_MAP *map)
ret = pdb_getgrsid(map, sid);
unbecome_root();
- if ( !ret )
+ /* special case check for rid 513 */
+
+ if ( !ret ) {
+ uint32 rid;
+
+ sid_peek_rid( &sid, &rid );
+
+ if ( rid == DOMAIN_GROUP_RID_USERS ) {
+ fstrcpy( map->nt_name, "None" );
+ fstrcpy( map->comment, "Ordinary Users" );
+ sid_copy( &map->sid, &sid );
+ map->sid_name_use = SID_NAME_DOM_GRP;
+
+ return True;
+ }
+
return False;
+ }
DEBUG(10, ("get_domain_group_from_sid: SID found in the TDB\n"));