Author: gd Date: 2007-10-25 11:12:02 +0000 (Thu, 25 Oct 2007) New Revision: 25730
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25730 Log: Fix IDL for incorrect winreg_SetKeySecurity. Guenther Modified: branches/SAMBA_4_0/source/librpc/idl/winreg.idl branches/SAMBA_4_0/source/torture/rpc/winreg.c Changeset: Modified: branches/SAMBA_4_0/source/librpc/idl/winreg.idl =================================================================== --- branches/SAMBA_4_0/source/librpc/idl/winreg.idl 2007-10-25 11:07:30 UTC (rev 25729) +++ branches/SAMBA_4_0/source/librpc/idl/winreg.idl 2007-10-25 11:12:02 UTC (rev 25730) @@ -273,7 +273,7 @@ /* Function: 0x15 */ WERROR winreg_SetKeySecurity( [in,ref] policy_handle *handle, - [in] winreg_AccessMask access_mask, + [in] security_secinfo sec_info, [in,ref] KeySecurityData *sd ); Modified: branches/SAMBA_4_0/source/torture/rpc/winreg.c =================================================================== --- branches/SAMBA_4_0/source/torture/rpc/winreg.c 2007-10-25 11:07:30 UTC (rev 25729) +++ branches/SAMBA_4_0/source/torture/rpc/winreg.c 2007-10-25 11:12:02 UTC (rev 25730) @@ -228,6 +228,7 @@ struct winreg_SetKeySecurity r; struct KeySecurityData *sdata = NULL; DATA_BLOB sdblob; + uint32_t sec_info; ZERO_STRUCT(r); @@ -245,8 +246,23 @@ sdata->size = sdblob.length; sdata->len = sdblob.length; + sec_info = SECINFO_UNPROTECTED_SACL | SECINFO_UNPROTECTED_DACL; + + if (sd->owner_sid) { + sec_info |= SECINFO_OWNER; + } + if (sd->group_sid) { + sec_info |= SECINFO_GROUP; + } + if (sd->sacl) { + sec_info |= SECINFO_SACL; + } + if (sd->dacl) { + sec_info |= SECINFO_DACL; + } + r.in.handle = handle; - r.in.access_mask = SEC_FLAG_MAXIMUM_ALLOWED; + r.in.sec_info = sec_info; r.in.sd = sdata; torture_assert_ntstatus_ok(tctx,