Cygwin: fork: fix child process permissions, take 3
Per MSDN VirtualQueryEx requires PROCESS_QUERY_INFORMATION. Testing showed that PROCESS_QUERY_LIMITED_INFORMATION is sufficient since Windows 8.1. The assumption that Windows 8 is the same as Windows 8 was not correct, it requires PROCESS_QUERY_INFORMATION as well. Fix that by splitting the Windows 8 wincaps into one for Windows 8 and one for Windows 8.1. Set needs_query_information for Windows 8. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
4abac62193
commit
38dde5f4c4
|
@ -69,6 +69,31 @@ wincaps wincap_7 __attribute__((section (".cygwin_dll_common"), shared)) = {
|
|||
};
|
||||
|
||||
wincaps wincap_8 __attribute__((section (".cygwin_dll_common"), shared)) = {
|
||||
def_guard_pages:2,
|
||||
{
|
||||
is_server:false,
|
||||
needs_count_in_si_lpres2:false,
|
||||
needs_query_information:true,
|
||||
has_gaa_largeaddress_bug:false,
|
||||
has_broken_alloc_console:true,
|
||||
has_console_logon_sid:true,
|
||||
has_precise_system_time:true,
|
||||
has_microsoft_accounts:true,
|
||||
has_processor_groups:true,
|
||||
has_broken_prefetchvm:false,
|
||||
has_new_pebteb_region:false,
|
||||
has_broken_whoami:false,
|
||||
has_unprivileged_createsymlink:false,
|
||||
has_unbiased_interrupt_time:true,
|
||||
has_precise_interrupt_time:false,
|
||||
has_posix_unlink_semantics:false,
|
||||
has_case_sensitive_dirs:false,
|
||||
has_posix_rename_semantics:false,
|
||||
no_msv1_0_s4u_logon_in_wow64:false,
|
||||
},
|
||||
};
|
||||
|
||||
wincaps wincap_8_1 __attribute__((section (".cygwin_dll_common"), shared)) = {
|
||||
def_guard_pages:2,
|
||||
{
|
||||
is_server:false,
|
||||
|
@ -273,9 +298,11 @@ wincapc::init ()
|
|||
caps = &wincap_7;
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
caps = &wincap_8;
|
||||
break;
|
||||
case 3:
|
||||
caps = &wincap_8_1;
|
||||
break;
|
||||
default:
|
||||
caps = &wincap_10_1507;
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue