You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2022/06/15 11:28:49 UTC
[tomcat-native] 01/03: IPv6 patches no longer required
This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat-native.git
commit 058f6ffa6c73546d63317eb170e153d106e54ad5
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Wed Jun 15 11:34:02 2022 +0100
IPv6 patches no longer required
Tomcat Native 2.0.x doesn't perform any network IO, only TLS encryption
and decryption.
---
native/srclib/apr/apr-enable-ipv6.patch | 11 ---
native/srclib/apr/win-ipv6.patch | 125 --------------------------------
2 files changed, 136 deletions(-)
diff --git a/native/srclib/apr/apr-enable-ipv6.patch b/native/srclib/apr/apr-enable-ipv6.patch
deleted file mode 100644
index a58721c01..000000000
--- a/native/srclib/apr/apr-enable-ipv6.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- /include/apr.hw
-+++ /include/apr.hw
-@@ -367,7 +367,7 @@
- /* If we have a TCP implementation that can be "corked", what flag
- * do we use?
- */
--#define APR_TCP_NOPUSH_FLAG @apr_tcp_nopush_flag@
-+#define APR_TCP_NOPUSH_FLAG 0
-
- /* Is the TCP_NODELAY socket option inherited from listening sockets?
- */
diff --git a/native/srclib/apr/win-ipv6.patch b/native/srclib/apr/win-ipv6.patch
deleted file mode 100644
index 103987242..000000000
--- a/native/srclib/apr/win-ipv6.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-Index: apr/apr/branches/1.7.x/include/arch/win32/apr_arch_misc.h
-===================================================================
---- apr/apr/branches/1.7.x/include/arch/win32/apr_arch_misc.h (revision 1890229)
-+++ apr/apr/branches/1.7.x/include/arch/win32/apr_arch_misc.h (revision 1890230)
-@@ -110,7 +110,11 @@
- APR_WIN_XP_SP2 = 62,
- APR_WIN_2003 = 70,
- APR_WIN_VISTA = 80,
-- APR_WIN_7 = 90
-+ APR_WIN_7 = 90,
-+ APR_WIN_7_SP1 = 91,
-+ APR_WIN_8 = 100,
-+ APR_WIN_8_1 = 110,
-+ APR_WIN_10 = 120
- } apr_oslevel_e;
-
- extern APR_DECLARE_DATA apr_oslevel_e apr_os_level;
-Index: apr/apr/branches/1.7.x/misc/win32/misc.c
-===================================================================
---- apr/apr/branches/1.7.x/misc/win32/misc.c (revision 1890229)
-+++ apr/apr/branches/1.7.x/misc/win32/misc.c (revision 1890230)
-@@ -27,25 +27,15 @@
- {
- if (apr_os_level == APR_WIN_UNK)
- {
-- static OSVERSIONINFO oslev;
-- oslev.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
-- GetVersionEx(&oslev);
-+ OSVERSIONINFOEXW oslev;
-+ oslev.dwOSVersionInfoSize = sizeof(oslev);
-+ if (!GetVersionExW((OSVERSIONINFOW*) &oslev)) {
-+ return apr_get_os_error();
-+ }
-
- if (oslev.dwPlatformId == VER_PLATFORM_WIN32_NT)
- {
-- static unsigned int servpack = 0;
-- TCHAR *pservpack;
-- if ((pservpack = oslev.szCSDVersion)) {
-- while (*pservpack && !apr_isdigit(*pservpack)) {
-- pservpack++;
-- }
-- if (*pservpack)
--#ifdef _UNICODE
-- servpack = _wtoi(pservpack);
--#else
-- servpack = atoi(pservpack);
--#endif
-- }
-+ unsigned int servpack = oslev.wServicePackMajor;
-
- if (oslev.dwMajorVersion < 3) {
- apr_os_level = APR_WIN_UNSUP;
-@@ -99,11 +89,19 @@
- else if (oslev.dwMajorVersion == 6) {
- if (oslev.dwMinorVersion == 0)
- apr_os_level = APR_WIN_VISTA;
-+ else if (oslev.dwMinorVersion == 1) {
-+ if (servpack < 1)
-+ apr_os_level = APR_WIN_7;
-+ else
-+ apr_os_level = APR_WIN_7_SP1;
-+ }
-+ else if (oslev.dwMinorVersion == 2)
-+ apr_os_level = APR_WIN_8;
- else
-- apr_os_level = APR_WIN_7;
-+ apr_os_level = APR_WIN_8_1;
- }
- else {
-- apr_os_level = APR_WIN_XP;
-+ apr_os_level = APR_WIN_10;
- }
- }
- #ifndef WINNT
-@@ -151,7 +149,7 @@
-
- *level = apr_os_level;
-
-- if (apr_os_level < APR_WIN_UNSUP) {
-+ if (apr_os_level <= APR_WIN_UNSUP) {
- return APR_EGENERAL;
- }
-
-Index: apr/apr/branches/1.7.x/network_io/win32/sockets.c
-===================================================================
---- apr/apr/branches/1.7.x/network_io/win32/sockets.c (revision 1890229)
-+++ apr/apr/branches/1.7.x/network_io/win32/sockets.c (revision 1890230)
-@@ -24,6 +24,13 @@
- #include "apr_arch_inherit.h"
- #include "apr_arch_misc.h"
-
-+/* Borrow the definition of SOMAXCONN_HINT() from Windows SDK 8,
-+ * in case the SDK we are building against doesn't have it.
-+ */
-+#ifndef SOMAXCONN_HINT
-+#define SOMAXCONN_HINT(b) (-(b))
-+#endif
-+
- static char generic_inaddr_any[16] = {0}; /* big enough for IPv4 or IPv6 */
-
- static apr_status_t socket_cleanup(void *sock)
-@@ -223,7 +230,21 @@
- APR_DECLARE(apr_status_t) apr_socket_listen(apr_socket_t *sock,
- apr_int32_t backlog)
- {
-- if (listen(sock->socketdes, backlog) == SOCKET_ERROR)
-+ int backlog_val;
-+
-+ if (apr_os_level >= APR_WIN_8) {
-+ /* Starting from Windows 8, listen() accepts a special SOMAXCONN_HINT()
-+ * arg that allows setting the listen backlog value to a larger
-+ * value than the predefined Winsock 2 limit (several hundred).
-+ * https://blogs.msdn.microsoft.com/winsdk/2015/06/01/winsocks-listen-backlog-offers-more-flexibility-in-windows-8/
-+ */
-+ backlog_val = SOMAXCONN_HINT(backlog);
-+ }
-+ else {
-+ backlog_val = backlog;
-+ }
-+
-+ if (listen(sock->socketdes, backlog_val) == SOCKET_ERROR)
- return apr_get_netos_error();
- else
- return APR_SUCCESS;
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org