-/*************************************************************************
- maps a unix group to a domain sid and an nt alias name.
-*************************************************************************/
-static void map_unix_grp_to_nt_als(char *unix_name,
- struct group *unix_grp, char *nt_name, DOM_SID *sid)
-{
- BOOL found = False;
- uint32 rid;
- fstring ntname;
- fstring ntdomain;
-
- if (isdigit(unix_name[0]))
- {
- unix_grp->gr_gid = get_number(unix_name);
- unix_grp->gr_name = unix_name;
- found = map_alias_gid(unix_grp->gr_gid, sid, ntname, ntdomain);
- }
- else
- {
- unix_grp->gr_name = unix_name;
- found = map_unix_alias_name(unix_grp->gr_name, sid, ntname, ntdomain);
- }
-
- if (found)
- {
- /*
- * find the NT name represented by this UNIX gid.
- * then, only accept NT aliass that are in our domain
- */
-
- sid_split_rid(sid, &rid);
- }
- else
- {
- /*
- * assume that the UNIX group is an NT alias with
- * the same name. convert gid to a alias rid.
- */
-
- fstrcpy(ntdomain, global_sam_name);
- fstrcpy(ntname, unix_grp->gr_name);
- sid_copy(sid, &global_sam_sid);
- }
-
- slprintf(nt_name, sizeof(fstring)-1, "\\%s\\%s",
- ntdomain, ntname);
-}
-