diff options
Diffstat (limited to 'source/passdb/util_sam_sid.c')
-rw-r--r-- | source/passdb/util_sam_sid.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/source/passdb/util_sam_sid.c b/source/passdb/util_sam_sid.c index a9e1921e0d0..1fddfc79255 100644 --- a/source/passdb/util_sam_sid.c +++ b/source/passdb/util_sam_sid.c @@ -32,11 +32,17 @@ typedef struct _known_sid_users { static struct sid_name_map_info { - const DOM_SID *sid; + DOM_SID *sid; const char *name; const known_sid_users *known_users; } sid_name_map[MAX_SID_NAMES]; +extern DOM_SID global_sid_Builtin; /* Local well-known domain */ +extern DOM_SID global_sid_World_Domain; /* Everyone domain */ +extern DOM_SID global_sid_Creator_Owner_Domain; /* Creator Owner domain */ +extern DOM_SID global_sid_NT_Authority; /* NT Authority */ + + static BOOL sid_name_map_initialized = False; /* static known_sid_users no_users[] = {{0, 0, NULL}}; */ @@ -93,6 +99,8 @@ static void init_sid_name_map (void) if (sid_name_map_initialized) return; + generate_wellknown_sids(); + if ((lp_security() == SEC_USER) && lp_domain_logons()) { sid_name_map[i].sid = get_global_sam_sid(); /* This is not lp_workgroup() for good reason: |