Dmitry Timoshkov wrote:
"Paul Bryan Roberts" pbronline-wine@yahoo.co.uk wrote:
It appears that GetNamedSecurityInfoExA signature doesn't match the MSDN/PSDK one. Also it's a common practice to simultaneously add both A and W versions, and add prototypes to an appropriate .h file.
Ah, right you are, thanks.
I guess that should have read 'most obviously incorrect'.
I cannot find any reference to GetNamedSecurityInfoEx with or without the A or W on http://www.msdn.microsoft.com. I have looked several times over the last six months or so. Is there another MSDN somewhere ?
That's the one. I made the statement that GetNamedSecurityInfoEx doesn't match the MSDN/PSDK signature just looking at the existing GetNamedSecurityInfo one. It appears that there are some unofficial GetNamedSecurityInfoEx docs, but if you are using them, you should clearly point out to teh source in the patch comment, and not copy the API description from that source.
Does simple uncommenting of GetNamedSecurityInfoExA/W stubs in the .spec file help? Or the installer actually calls the APIs?
GetSecurityInfoExW and (there is no stub for) GetSecurityInfoExA have prototypes in include/aclapi.h. Would that be an appropriate .h to add prototypes for GetNamedSecurityInfoExA and GetNamedSecurityInfoExW to ?
I guess so.
If you would like I could add a stub for GetSecurityInfoExA too. One patch or two ?
A single patch is fine.
I confirmed that the installer actually calls GetNamedSecurityInfoExA during a normal install under native WindowsTM. I set break points on the routine in the debugger that comes with the MS Debugging Tools. The debugger broke the expected 9 times between two reference break points.
I first guessed the number of parameters by counting the number of push statements executed by the Wine debugger before making a call. I later used WINEDEBUG=+snoop with WINEDLLOVERRIDES=advapi32 to corroborate.
I triangulated (biangulated ?) the function prototype from the prototypes for GetSecurityInfoExW() and GetNamedSecurityInfoA() that appear in wine/dlls/advapi32/security.c and took the return value from the first of those two.
This is all my own work inspired by what Wine folks who have gone before me have done.
Before I mustered the courage to submit the stub for the second time, I compared my prototype with that to be found at:
http://www.piclist.com/techref/os/win/api/win32/func/src/f35_10.htm
The third submission would not have occurred without the encouragement of Dan Kegel. I also owe thanks to Dmitry Timoshkov (oh, that's you - hi! ) for pointing me in the direction of the MS Debugging Tools.
I did reference the piclist web-page in the analysis I attached to bug 14334 but accept that no one is ever likely to read it.
Please confirm you don't actually want a web-page reference in the Wine source. Would that not raise "copyright-tracking" issues ?