From: Günther Deschner Date: Wed, 29 Sep 2004 15:26:38 +0000 (+0000) Subject: r2753: Workaround for the (rather broken) _samr_query_useraliases rpc-call. X-Git-Tag: samba-misc-tags/initial-v3-0-unstable~5742 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=73ab2d2a74d3992167d9304dd41f60ad0805dd67;p=thirdparty%2Fsamba.git r2753: Workaround for the (rather broken) _samr_query_useraliases rpc-call. _samr_query_useraliases shows up with all kind of very weird memberships (global-groups, machine-accounts, etc.). Sometimes even if there is no alias-membership at all. One of the biggest mistakes is to convert any unix-group the user is a member of, into an alias by default in get_group_from_gid. get_alias_user_groups should be rewritten to use pdb_enum_alias_memberships. Guenther --- diff --git a/source/groupdb/mapping.c b/source/groupdb/mapping.c index 548651dfd53..6725165c3cf 100644 --- a/source/groupdb/mapping.c +++ b/source/groupdb/mapping.c @@ -945,25 +945,12 @@ BOOL get_group_from_gid(gid_t gid, GROUP_MAP *map) if ( (grp=getgrgid(gid)) == NULL) return False; - /* - * make a group map from scratch if doesn't exist. - */ - become_root(); ret = pdb_getgrgid(map, gid); unbecome_root(); if ( !ret ) { - map->gid=gid; - map->sid_name_use=SID_NAME_ALIAS; - - /* interim solution until we have a last RID allocated */ - - sid_copy(&map->sid, get_global_sam_sid()); - sid_append_rid(&map->sid, pdb_gid_to_group_rid(gid)); - - fstrcpy(map->nt_name, grp->gr_name); - fstrcpy(map->comment, "Local Unix Group"); + return False; } return True;