Watch, Follow, &
Connect with Us
Public Report
Report From: Delphi-BCB/RTL/Delphi/WinAPI    [ Add a report in this area ]  
Report #:  106379   Status: Closed
GetSecurityInfo() incorrect definition
Project:  Delphi Build #:  16.0.4504.48759
Version:    16.4 Submitted By:   Ivayllo Georgiev
Report Type:  Basic functionality failure Date Reported:  6/13/2012 4:44:59 AM
Severity:    Serious / Highly visible problem Last Updated: 9/5/2012 7:48:26 PM
Platform:    All versions Internal Tracking #:   28989
Resolution: Fixed (Resolution Comments) Resolved in Build: : 17.0.4625.53395
Duplicate of:  None
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: None
Description
Winapi.AclAPI.pas lines 72-74:

function GetSecurityInfo(handle: THandle; ObjectType: SE_OBJECT_TYPE;
         SecurityInfo: SECURITY_INFORMATION; ppsidOwner, ppsidGroup: PPSID; ppDacl, ppSacl: PACL;
         var ppSecurityDescriptor: PPSECURITY_DESCRIPTOR): DWORD; stdcall; {use localfree to release ppSecurityDescriptor}

ppDacl and ppSacl should be either var or pointer to PACL type (second preffered as nil could be passed).
Last parameter should be either var of type PSecurityDescriptor or remove var.

Source:

Aclapi.h lines 175-187 from Windows SDK 7.1

WINADVAPI
DWORD
WINAPI
GetSecurityInfo(
    __in  HANDLE                 handle,
    __in  SE_OBJECT_TYPE         ObjectType,
    __in  SECURITY_INFORMATION   SecurityInfo,
    __out_opt PSID                 * ppsidOwner,
    __out_opt PSID                 * ppsidGroup,
    __out_opt PACL                 * ppDacl,
    __out_opt PACL                 * ppSacl,
    __out_opt PSECURITY_DESCRIPTOR * ppSecurityDescriptor
    );
Steps to Reproduce:
Added by Sysop
<<<<<<
This issue is related to QC#88236.

[Delphi 2007: Wrong GetSecurityInfo() declarations in AclAPI.pas]
http://www.otherchirps.net/2009/11/delphi-2007-wrong-getsecurityinfo.html
>>>>>>
Workarounds
reimport the function
Attachment
None
Comments

Tomohiro Takahashi at 6/13/2012 9:40:33 PM -
Is your issue same as this blog article?
[Delphi 2007: Wrong GetSecurityInfo() declarations in AclAPI.pas]
http://www.otherchirps.net/2009/11/delphi-2007-wrong-getsecurityinfo.html

Ivayllo Georgiev at 6/18/2012 3:28:32 AM -
Seems the same. Sorry for delayed response.

Tomohiro Takahashi at 6/14/2012 7:46:30 PM -
This report was opened with valid Internal Tracking Number.
Thanks.

Server Response from: ETNACODE01