Greg Turner wrote:
On Tuesday 19 November 2002 07:18 pm, Sylvain Petreolle wrote:
Cygwin bash currently fails to execute due to OpenProcessToken.
Looking in source, I see that advapi32.OpenProcessToken calls ntdll.NtOpenProcessToken.
This functions is a stub that returns always false today.
OpenProcessToken is an NT-only feature, right? What does Cygwin do for windows 9x?
Cygwin has a struct, wincap, which indicates what Windows capabilities are present. This has a member, has_security, which is checked before any security functions like OpenProcessToken are used. The struct is initialized in wincap.cc which calls GetVersionEx to determine the version of Windows being used, then copies a const version of the wincap struct for that Windows version onto the actual struct used. This has has_security set to false for non-NT versions of Windows. So presumably setting the Wine version should avoid this... haven't checked though, just looked at the cygwin sources
David