From 2aeff2c98849f0c0fde100a3020e1df7dd147c7f Mon Sep 17 00:00:00 2001 From: David CARLIER Date: Wed, 17 Jul 2024 14:17:29 +0100 Subject: [PATCH] main: update Winsock api version to 2.2 (#14909) not been updated since php 4 whereas 2.2 is available even in Win2000. --- main/main.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/main/main.c b/main/main.c index aa80837f657..f93ae526c8a 100644 --- a/main/main.c +++ b/main/main.c @@ -2073,7 +2073,7 @@ zend_result php_module_startup(sapi_module_struct *sf, zend_module_entry *additi zend_module_entry *module; #ifdef PHP_WIN32 - WORD wVersionRequested = MAKEWORD(2, 0); + WORD wVersionRequested = MAKEWORD(2, 2); WSADATA wsaData; old_invalid_parameter_handler = @@ -2162,6 +2162,12 @@ zend_result php_module_startup(sapi_module_struct *sf, zend_module_entry *additi fprintf(stderr, "\nwinsock.dll unusable. %d\n", WSAGetLastError()); return FAILURE; } + + if (UNEXPECTED(HIBYTE(wsaData.wVersion) != 2)) { + fprintf(stderr, "\nversion not found in winsock.dll. %d\n", WSAGetLastError()); + WSACleanup(); + return FAILURE; + } php_win32_signal_ctrl_handler_init(); #endif