From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2155) id ED251385781F; Fri, 29 Oct 2021 19:03:52 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org ED251385781F Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Corinna Vinschen To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin] Cygwin: remove support for Vista entirely X-Act-Checkin: newlib-cygwin X-Git-Author: Corinna Vinschen X-Git-Refname: refs/heads/master X-Git-Oldrev: 080eae709f41e9e5d194bcc59014cf1c03526ec4 X-Git-Newrev: a4efb2a6698fa7e3b431f595081fdd381722f394 Message-Id: <20211029190352.ED251385781F@sourceware.org> Date: Fri, 29 Oct 2021 19:03:52 +0000 (GMT) X-BeenThere: cygwin-cvs@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin core component git logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 29 Oct 2021 19:03:53 -0000 https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=a4efb2a6698fa7e3b431f595081fdd381722f394 commit a4efb2a6698fa7e3b431f595081fdd381722f394 Author: Corinna Vinschen Date: Fri Oct 29 18:18:24 2021 +0200 Cygwin: remove support for Vista entirely Fix up a few comments while at it Signed-off-by: Corinna Vinschen Diff: --- winsup/cygwin/cygheap.h | 2 +- winsup/cygwin/fhandler_pipe.cc | 2 +- winsup/cygwin/fhandler_socket_inet.cc | 2 +- winsup/cygwin/net.cc | 12 ++++++------ winsup/cygwin/sec_auth.cc | 8 +++----- winsup/cygwin/syscalls.cc | 4 ++-- winsup/cygwin/wincap.cc | 34 ---------------------------------- 7 files changed, 14 insertions(+), 50 deletions(-) diff --git a/winsup/cygwin/cygheap.h b/winsup/cygwin/cygheap.h index 8877cc358..b90c9e84b 100644 --- a/winsup/cygwin/cygheap.h +++ b/winsup/cygwin/cygheap.h @@ -222,7 +222,7 @@ class fcwd_access_t { LONG FSCharacteristics; /* Taken from FileFsDeviceInformation */ WCHAR Buffer[MAX_PATH] __attribute ((aligned (8))); }; - /* This is the layout used in Windows 7 and Vista. */ + /* This is the layout used in Windows 7. */ struct FAST_CWD_7 { UNICODE_STRING Path; /* Path's Buffer member always refers to the following Buffer array. */ diff --git a/winsup/cygwin/fhandler_pipe.cc b/winsup/cygwin/fhandler_pipe.cc index 63e432160..43771e8f7 100644 --- a/winsup/cygwin/fhandler_pipe.cc +++ b/winsup/cygwin/fhandler_pipe.cc @@ -1179,7 +1179,7 @@ cache_err: if (wincap.has_query_process_handle_info ()) return get_query_hdl_per_process (name, ntfn); /* Since Win8 */ else - return get_query_hdl_per_system (name, ntfn); /* Vista or Win7 */ + return get_query_hdl_per_system (name, ntfn); /* Win7 */ } /* This function is faster than get_query_hdl_per_system(), however, diff --git a/winsup/cygwin/fhandler_socket_inet.cc b/winsup/cygwin/fhandler_socket_inet.cc index 30eab4099..72103d20d 100644 --- a/winsup/cygwin/fhandler_socket_inet.cc +++ b/winsup/cygwin/fhandler_socket_inet.cc @@ -2180,7 +2180,7 @@ fhandler_socket_inet::getsockopt (int level, int optname, const void *optval, if (onebyte) { - /* Regression in Vista and later: instead of a 4 byte BOOL value, a + /* Regression in 6.0 kernel and later: instead of a 4 byte BOOL value, a 1 byte BOOLEAN value is returned, in contrast to older systems and the documentation. Since an int type is expected by the calling application, we convert the result here. */ diff --git a/winsup/cygwin/net.cc b/winsup/cygwin/net.cc index 9ff155c22..2209f4bde 100644 --- a/winsup/cygwin/net.cc +++ b/winsup/cygwin/net.cc @@ -1488,12 +1488,12 @@ get_adapters_addresses (PIP_ADAPTER_ADDRESSES *pa_ret, ULONG family) if (wincap.has_gaa_largeaddress_bug () && (uintptr_t) ¶m >= (uintptr_t) 0x80000000L) { - /* In Windows Vista and Windows 7 under WOW64, GetAdaptersAddresses fails - if it's running in a thread with a stack located in the large address - area. So, if we're running in a pthread with such a stack, we call - GetAdaptersAddresses in a child thread with an OS-allocated stack. - The OS allocates stacks bottom up, so chances are good that the new - stack will be located in the lower address area. */ + /* In Windows 7 under WOW64, GetAdaptersAddresses fails if it's running + in a thread with a stack located in the large address area. If we're + running in a pthread with such a stack, we call GetAdaptersAddresses + in a child thread with an OS-allocated stack. The OS allocates stacks + bottom up, so chances are good that the new stack will be located in + the lower address area. */ HANDLE thr = CreateThread (NULL, 0, call_gaa, ¶m, 0, NULL); SetThreadName (GetThreadId (thr), "__call_gaa"); if (!thr) diff --git a/winsup/cygwin/sec_auth.cc b/winsup/cygwin/sec_auth.cc index 9aae7c1d5..ed03f9b48 100644 --- a/winsup/cygwin/sec_auth.cc +++ b/winsup/cygwin/sec_auth.cc @@ -1617,8 +1617,6 @@ s4uauth (bool logon, PCWSTR domain, PCWSTR user, NTSTATUS &ret_status) } else { - /* Per MSDN MsV1_0S4ULogon is not implemented on Vista, but surprisingly - it works. */ MSV1_0_S4U_LOGON *s4u_logon; USHORT user_len, domain_len; @@ -1671,9 +1669,9 @@ out: if (token && logon) { - /* Convert to primary token. Strictly speaking this is only - required on Vista/2008. CreateProcessAsUser also takes - impersonation tokens since Windows 7. */ + /* Convert to primary token. CreateProcessAsUser takes impersonation + tokens since Windows 7 but MSDN still claims a primary token is + required. Better safe than sorry. */ HANDLE tmp_token; if (DuplicateTokenEx (token, MAXIMUM_ALLOWED, &sec_none, diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc index a3ffe3532..7a48e422e 100644 --- a/winsup/cygwin/syscalls.cc +++ b/winsup/cygwin/syscalls.cc @@ -3627,8 +3627,8 @@ seteuid32 (uid_t uid) } /* If s4uauth fails with status code STATUS_INVALID_PARAMETER, we're running on a system not implementing MsV1_0S4ULogon - (Windows 7 WOW64, Vista?). Fall back to create_token in - this single case only. */ + (Windows 7 WOW64). Fall back to create_token in this single + case only. */ debug_printf ("s4uauth failed, try create_token."); if (!(new_token = create_token (usersid, groups))) { diff --git a/winsup/cygwin/wincap.cc b/winsup/cygwin/wincap.cc index 5c923277e..83a49eb8e 100644 --- a/winsup/cygwin/wincap.cc +++ b/winsup/cygwin/wincap.cc @@ -18,37 +18,6 @@ details. */ in the same session. I'm only writing this longish comment because I'm puzzled that this has never been noticed before... */ -wincaps wincap_vista __attribute__((section (".cygwin_dll_common"), shared)) = { - def_guard_pages:1, - mmap_storage_high:0x070000000000LL, - { - is_server:false, - needs_query_information:true, - has_gaa_largeaddress_bug:true, - has_precise_system_time:false, - has_microsoft_accounts:false, - has_broken_prefetchvm:false, - has_new_pebteb_region:false, - has_broken_whoami:true, - has_unprivileged_createsymlink:false, - has_precise_interrupt_time:false, - has_posix_unlink_semantics:false, - has_posix_unlink_semantics_with_ignore_readonly:false, - has_case_sensitive_dirs:false, - has_posix_rename_semantics:false, - no_msv1_0_s4u_logon_in_wow64:true, - has_con_24bit_colors:false, - has_con_broken_csi3j:false, - has_con_broken_il_dl:false, - has_con_esc_rep:false, - has_extended_mem_api:false, - has_tcp_fastopen:false, - has_linux_tcp_keepalive_sockopts:false, - has_tcp_maxrtms:false, - has_query_process_handle_info:false, - }, -}; - wincaps wincap_7 __attribute__((section (".cygwin_dll_common"), shared)) = { def_guard_pages:1, mmap_storage_high:0x070000000000LL, @@ -382,9 +351,6 @@ wincapc::init () case 6: switch (version.dwMinorVersion) { - case 0: - caps = &wincap_vista; - break; case 1: caps = &wincap_7; break;