mirror of
https://github.com/samba-team/samba.git
synced 2025-02-04 17:47:26 +03:00
r505: Break out algorithmic_gid_to_sid so that those of us who need it can use it.
(This used to be commit 5d7ee320cca80558a4b71295ef8b7de02f21554a)
This commit is contained in:
parent
fc62b9fcc1
commit
7cb9ca16f6
@ -1176,6 +1176,24 @@ BOOL local_sid_to_uid(uid_t *puid, const DOM_SID *psid, enum SID_NAME_USE *name_
|
||||
return True;
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
Convert a gid to SID - algorithmic.
|
||||
****************************************************************************/
|
||||
|
||||
DOM_SID *algorithmic_gid_to_sid(DOM_SID *psid, uid_t gid)
|
||||
{
|
||||
if ( !lp_enable_rid_algorithm() )
|
||||
return NULL;
|
||||
|
||||
DEBUG(8,("algorithmic_gid_to_sid: falling back to RID algorithm\n"));
|
||||
sid_copy( psid, get_global_sam_sid() );
|
||||
sid_append_rid( psid, pdb_gid_to_group_rid(gid) );
|
||||
DEBUG(10,("algorithmic_gid_to_sid: gid (%d) -> SID %s.\n",
|
||||
(unsigned int)gid, sid_string_static(psid) ));
|
||||
|
||||
return psid;
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
Convert a gid to SID - locally.
|
||||
****************************************************************************/
|
||||
@ -1199,13 +1217,11 @@ DOM_SID *local_gid_to_sid(DOM_SID *psid, gid_t gid)
|
||||
/* fallback to rid mapping if enabled */
|
||||
|
||||
if ( lp_enable_rid_algorithm() ) {
|
||||
sid_copy(psid, get_global_sam_sid());
|
||||
sid_append_rid(psid, pdb_gid_to_group_rid(gid));
|
||||
|
||||
DEBUG(10,("local_gid_to_sid: Fall back to algorithmic mapping: %u -> %s\n",
|
||||
(unsigned int)gid, sid_string_static(psid)));
|
||||
|
||||
return psid;
|
||||
return algorithmic_gid_to_sid(psid, gid);
|
||||
}
|
||||
else
|
||||
return NULL;
|
||||
|
Loading…
x
Reference in New Issue
Block a user