mirror of
https://github.com/samba-team/samba.git
synced 2025-01-14 19:24:43 +03:00
Change this code so that we don't do a lookup_name() on root.
This matches the lookup failure case in 2.2, and seems to make more sense than giving the printer to 'world'. (Avoiding this lookup makes some of my other changes - including winbind default domains - a little easier). In any case, tpot has promised to look at this and test it when he gets back to work. :-) Andrew Bartlett
This commit is contained in:
parent
7e5d7dfa83
commit
f0137ac126
@ -3544,20 +3544,12 @@ static SEC_DESC_BUF *construct_default_printer_sdb(TALLOC_CTX *ctx)
|
|||||||
if (winbind_lookup_name(lp_workgroup(), &owner_sid, &name_type)) {
|
if (winbind_lookup_name(lp_workgroup(), &owner_sid, &name_type)) {
|
||||||
sid_append_rid(&owner_sid, DOMAIN_USER_RID_ADMIN);
|
sid_append_rid(&owner_sid, DOMAIN_USER_RID_ADMIN);
|
||||||
} else {
|
} else {
|
||||||
uint32 owner_rid;
|
/* Backup plan - make printer owned by admins.
|
||||||
|
|
||||||
/* Backup plan - make printer owned by admins or root.
|
|
||||||
This should emulate a lanman printer as security
|
This should emulate a lanman printer as security
|
||||||
settings can't be changed. */
|
settings can't be changed. */
|
||||||
|
|
||||||
sid_peek_rid(&owner_sid, &owner_rid);
|
sid_copy(&owner_sid, &global_sam_sid);
|
||||||
|
sid_append_rid(&owner_sid, DOMAIN_USER_RID_ADMIN);
|
||||||
if (owner_rid != BUILTIN_ALIAS_RID_PRINT_OPS &&
|
|
||||||
owner_rid != BUILTIN_ALIAS_RID_ADMINS &&
|
|
||||||
owner_rid != DOMAIN_USER_RID_ADMIN &&
|
|
||||||
!lookup_name("root", &owner_sid, &name_type)) {
|
|
||||||
sid_copy(&owner_sid, &global_sid_World);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
init_sec_access(&sa, PRINTER_ACE_FULL_CONTROL);
|
init_sec_access(&sa, PRINTER_ACE_FULL_CONTROL);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user