From 213f406e67a70829c5e1a3ed15f1fc2968b48fc5 Mon Sep 17 00:00:00 2001 From: David Carlier Date: Wed, 10 Jul 2024 23:23:43 +0100 Subject: [PATCH] main: update Winsock api version to 2.2 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 aa80837f65745..f93ae526c8a29 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