Added patch to implement inet_pton.

This commit is contained in:
Erich E. Hoover 2014-07-27 09:42:05 -06:00
parent dd68855d30
commit 98fb8a1c69
5 changed files with 82 additions and 1 deletions

View File

@ -35,6 +35,7 @@ Wine-compholio contains fixes for the following Wine bugs:
* Support for inherited file ACLs ([Wine Bug #34406](http://bugs.winehq.org/show_bug.cgi?id=34406 "Finale Notepad 2012 doesn't copy/create user files on program start"))
* SHCreateSessionKey not implemented ([Wine Bug #35630](http://bugs.winehq.org/show_bug.cgi?id=35630 "SHCreateSessionKey is unimplemented"))
* Add Dynamic DST exceptions for Israel Standard Time ([Wine Bug #36374](http://bugs.winehq.org/show_bug.cgi?id=36374 "Israel timezone handled incorrectly"))
* Support for ws2_32.inet_pton ([Wine Bug #36713](http://bugs.winehq.org/show_bug.cgi?id=36713 "Watch_Dogs requires ws2_32.inet_pton"))
Besides that the following additional changes are included:

3
debian/changelog vendored
View File

@ -1,9 +1,10 @@
wine-compholio (1.7.24) UNRELEASED; urgency=low
* Added patch to implement inet_pton.
* Added patch to implement SHCreateSessionKey.
* Added patch to implement AllocateAndGetTcpExTableFromStack.
* Added patch to fix ConnectNamedPort return value in overlapped mode.
* Added patch to store IOCS data in a property instead of GWLP_USERDATA.
-- Erich E. Hoover <erich.e.hoover@gmail.com> Sat, 26 Jul 2014 15:49:33 -0600
-- Erich E. Hoover <erich.e.hoover@gmail.com> Sun, 27 Jul 2014 09:41:44 -0600
wine-compholio (1.7.23) unstable; urgency=low
* Rewrite of patch system to simplify maintaining large patchsets.

View File

@ -33,6 +33,7 @@ PATCHLIST := Miscellaneous.ok \
winepulse-PulseAudio_Support.ok \
winex11-XEMBED.ok \
ws2_32-TransmitFile.ok \
ws2_32-inet_pton.ok \
wtsapi32-EnumerateProcesses.ok
.PHONY: install
@ -599,6 +600,23 @@ ws2_32-TransmitFile.ok:
echo '+ { "ws2_32-TransmitFile", "Erich E. Hoover", "Implement TransmitFile." },'; \
) > ws2_32-TransmitFile.ok
# Patchset ws2_32-inet_pton
# |
# | Included patches:
# | * Implement ws2_32.inet_pton. [by Erich E. Hoover]
# |
# | This patchset fixes the following Wine bugs:
# | * [#36713] Watch_Dogs requires ws2_32.inet_pton
# |
# | Modified files:
# | * dlls/ws2_32/socket.c, dlls/ws2_32/ws2_32.spec, include/ws2tcpip.h
# |
ws2_32-inet_pton.ok:
$(PATCH) < ws2_32-inet_pton/0001-ws2_32-Implement-inet_pton.patch
@( \
echo '+ { "ws2_32-inet_pton", "Erich E. Hoover", "Implement ws2_32.inet_pton." },'; \
) > ws2_32-inet_pton.ok
# Patchset wtsapi32-EnumerateProcesses
# |
# | Included patches:

View File

@ -0,0 +1,57 @@
From c787fe4fa34e952cdc77501c70db6d210f471814 Mon Sep 17 00:00:00 2001
From: Bruno Jesus <00cpxxx@gmail.com>
Date: Sun, 27 Jul 2014 09:38:18 -0600
Subject: ws2_32: Implement inet_pton.
---
dlls/ws2_32/socket.c | 10 ++++++++++
dlls/ws2_32/ws2_32.spec | 1 +
include/ws2tcpip.h | 2 +-
3 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c
index 5900c8f..75adae5 100644
--- a/dlls/ws2_32/socket.c
+++ b/dlls/ws2_32/socket.c
@@ -6904,6 +6904,16 @@ PCSTR WINAPI WS_inet_ntop( INT family, PVOID addr, PSTR buffer, SIZE_T len )
}
/***********************************************************************
+ * inet_pton (WS2_32.@)
+ */
+INT WINAPI WS_inet_pton( INT family, PCSTR addr, PVOID buffer)
+{
+ INT ret = inet_pton(family, addr, buffer);
+ if (ret == -1) SetLastError(wsaErrno());
+ return ret;
+}
+
+/***********************************************************************
* WSAStringToAddressA (WS2_32.80)
*/
INT WINAPI WSAStringToAddressA(LPSTR AddressString,
diff --git a/dlls/ws2_32/ws2_32.spec b/dlls/ws2_32/ws2_32.spec
index 0811b74..f7c6c2d 100644
--- a/dlls/ws2_32/ws2_32.spec
+++ b/dlls/ws2_32/ws2_32.spec
@@ -121,3 +121,4 @@
@ stdcall getaddrinfo(str str ptr ptr) WS_getaddrinfo
@ stdcall getnameinfo(ptr long ptr long ptr long long) WS_getnameinfo
@ stdcall inet_ntop(long ptr ptr long) WS_inet_ntop
+@ stdcall inet_pton(long ptr ptr) WS_inet_pton
diff --git a/include/ws2tcpip.h b/include/ws2tcpip.h
index b3a6a1f..6002433 100644
--- a/include/ws2tcpip.h
+++ b/include/ws2tcpip.h
@@ -177,7 +177,7 @@ PCSTR WINAPI WS(inet_ntop)(INT,PVOID,PSTR,SIZE_T);
#define InetNtopA WS(inet_ntop)
PCWSTR WINAPI InetNtopW(INT,PVOID,PWSTR,SIZE_T);
#define InetNtop WINELIB_NAME_AW(InetNtop)
-int WINAPI WS(inet_pton)(INT,PCSTR,PVOID);
+INT WINAPI WS(inet_pton)(INT,PCSTR,PVOID);
#define InetPtonA WS(inet_pton)
int WINAPI InetPtonW(INT,PCWSTR,PVOID);
#define InetPton WINELIB_NAME_AW(InetPton)
--
1.7.9.5

View File

@ -0,0 +1,4 @@
Author: Erich E. Hoover
Subject: Implement ws2_32.inet_pton.
Revision: 1
Fixes: [36713] Support for ws2_32.inet_pton