changeset 33620:6733c5359e8a v9.0.2052

patch 9.0.2052: win32: using deprecated wsock32 api Commit: https://github.com/vim/vim/commit/c6944913f0aa56cdfd9ad7464ab05d2815d9d815 Author: Ken Takata <kentkt@csc.jp> Date: Thu Oct 19 17:22:24 2023 +0200 patch 9.0.2052: win32: using deprecated wsock32 api Problem: win32: using deprecated wsock32 api Solution: Use winsock2 (ws2_32) consistently win32: Stop using wsock32 We have already used ws2_32 (winsock2) and already dropped support for Windows 95 and NT4. So, we don't need to care about wsock32. Use ws2_32 consistently. closes: #13383 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Ken Takata <kentkt@csc.jp>
author Christian Brabandt <cb@256bit.org>
date Thu, 19 Oct 2023 17:30:07 +0200
parents b8b93fef9f60
children 36ddcf6b516a
files src/Make_cyg_ming.mak src/Make_mvc.mak src/channel.c src/if_perl.xs src/os_win32.h src/version.c
diffstat 6 files changed, 8 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/src/Make_cyg_ming.mak
+++ b/src/Make_cyg_ming.mak
@@ -923,7 +923,7 @@ endif
 
 ifeq ($(CHANNEL),yes)
 OBJ += $(OUTDIR)/job.o $(OUTDIR)/channel.o
-LIB += -lwsock32 -lws2_32
+LIB += -lws2_32
 endif
 
 ifeq ($(DIRECTX),yes)
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -420,7 +420,6 @@ NBDEBUG_DEFS	= -DNBDEBUG
 NBDEBUG_INCL	= nbdebug.h
 NBDEBUG_SRC	= nbdebug.c
 !  endif
-NETBEANS_LIB	= WSock32.lib
 ! endif
 
 # DirectWrite (DirectX)
@@ -473,7 +472,7 @@ CHANNEL_PRO	= proto/job.pro proto/channe
 CHANNEL_OBJ	= $(OBJDIR)/job.obj $(OBJDIR)/channel.obj
 CHANNEL_DEFS	= -DFEAT_JOB_CHANNEL -DFEAT_IPV6 -DHAVE_INET_NTOP
 
-NETBEANS_LIB	= WSock32.lib Ws2_32.lib
+NETBEANS_LIB	= Ws2_32.lib
 !endif
 
 # need advapi32.lib for GetUserName()
--- a/src/channel.c
+++ b/src/channel.c
@@ -10,13 +10,6 @@
  * Implements communication through a socket or any file handle.
  */
 
-#ifdef WIN32
-// Must include winsock2.h before windows.h since it conflicts with winsock.h
-// (included in windows.h).
-# include <winsock2.h>
-# include <ws2tcpip.h>
-#endif
-
 #include "vim.h"
 
 #if defined(FEAT_JOB_CHANNEL) || defined(PROTO)
--- a/src/if_perl.xs
+++ b/src/if_perl.xs
@@ -24,17 +24,6 @@
 # define _USE_32BIT_TIME_T
 #endif
 
-/*
- * Prevent including winsock.h.  perl.h tries to detect whether winsock.h is
- * already included before including winsock2.h, because winsock2.h isn't
- * compatible with winsock.h.  However the detection doesn't work with some
- * versions of MinGW.  If WIN32_LEAN_AND_MEAN is defined, windows.h will not
- * include winsock.h.
- */
-#ifdef WIN32
-# define WIN32_LEAN_AND_MEAN
-#endif
-
 #include "vim.h"
 
 #ifdef _MSC_VER
--- a/src/os_win32.h
+++ b/src/os_win32.h
@@ -85,6 +85,10 @@
 # define COBJMACROS	// For OLE: Enable "friendlier" access to objects
 #endif
 #ifndef PROTO
+// Must include winsock2.h before windows.h since it conflicts with winsock.h
+// (included in windows.h).
+# include <winsock2.h>
+# include <ws2tcpip.h>
 # include <windows.h>
 
 // Weird: rpcndr.h defines "small" to "char", which causes trouble
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2052,
+/**/
     2051,
 /**/
     2050,