You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Rebase against d744f367d263a131feee96e103fb8220e8400b53
This commit is contained in:
@@ -1,17 +1,16 @@
|
||||
From a08076678e154c913713221f8eea87c70c11d788 Mon Sep 17 00:00:00 2001
|
||||
From 04aceb5470fc9ca9133f7a6269144eb7aa8d6a10 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Sat, 13 Jun 2015 05:03:54 +0200
|
||||
Subject: iphlpapi: Fallback to system ping when ICMP permissions are not
|
||||
present.
|
||||
Subject: [PATCH] iphlpapi: Fallback to system ping when ICMP permissions are
|
||||
not present.
|
||||
|
||||
Based on an idea by Bruno Jesus.
|
||||
---
|
||||
dlls/iphlpapi/icmp.c | 256 ++++++++++++++++++++++++++++++++++++++++-
|
||||
dlls/iphlpapi/tests/iphlpapi.c | 2 +-
|
||||
2 files changed, 251 insertions(+), 7 deletions(-)
|
||||
dlls/iphlpapi/icmp.c | 256 +++++++++++++++++++++++++++++++++++++++++++++++++--
|
||||
1 file changed, 250 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/dlls/iphlpapi/icmp.c b/dlls/iphlpapi/icmp.c
|
||||
index ebc2f2b..330dd73a 100644
|
||||
index 0dc2f12..da3850b 100644
|
||||
--- a/dlls/iphlpapi/icmp.c
|
||||
+++ b/dlls/iphlpapi/icmp.c
|
||||
@@ -5,6 +5,7 @@
|
||||
@@ -50,7 +49,7 @@ index ebc2f2b..330dd73a 100644
|
||||
|
||||
#define USE_WS_PREFIX
|
||||
|
||||
@@ -209,6 +216,7 @@ DWORD WINAPI Icmp6SendEcho2(
|
||||
@@ -212,6 +219,7 @@ DWORD WINAPI Icmp6SendEcho2(
|
||||
*/
|
||||
HANDLE WINAPI IcmpCreateFile(VOID)
|
||||
{
|
||||
@@ -58,7 +57,7 @@ index ebc2f2b..330dd73a 100644
|
||||
icmp_t* icp;
|
||||
|
||||
int sid=socket(AF_INET,SOCK_RAW,IPPROTO_ICMP);
|
||||
@@ -217,15 +225,14 @@ HANDLE WINAPI IcmpCreateFile(VOID)
|
||||
@@ -220,15 +228,14 @@ HANDLE WINAPI IcmpCreateFile(VOID)
|
||||
/* Mac OS X supports non-privileged ICMP via SOCK_DGRAM type. */
|
||||
sid=socket(AF_INET,SOCK_DGRAM,IPPROTO_ICMP);
|
||||
}
|
||||
@@ -78,7 +77,7 @@ index ebc2f2b..330dd73a 100644
|
||||
SetLastError(IP_NO_RESOURCES);
|
||||
return INVALID_HANDLE_VALUE;
|
||||
}
|
||||
@@ -247,11 +254,242 @@ BOOL WINAPI IcmpCloseHandle(HANDLE IcmpHandle)
|
||||
@@ -250,11 +257,242 @@ BOOL WINAPI IcmpCloseHandle(HANDLE IcmpHandle)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -322,7 +321,7 @@ index ebc2f2b..330dd73a 100644
|
||||
|
||||
/***********************************************************************
|
||||
* IcmpSendEcho (IPHLPAPI.@)
|
||||
@@ -301,6 +539,12 @@ DWORD WINAPI IcmpSendEcho(
|
||||
@@ -308,6 +546,12 @@ DWORD WINAPI IcmpSendEcho(
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -335,25 +334,6 @@ index ebc2f2b..330dd73a 100644
|
||||
/* Prepare the request */
|
||||
id=getpid() & 0xFFFF;
|
||||
seq=InterlockedIncrement(&icmp_sequence) & 0xFFFF;
|
||||
diff --git a/dlls/iphlpapi/tests/iphlpapi.c b/dlls/iphlpapi/tests/iphlpapi.c
|
||||
index 73e4302..f9c6b99 100644
|
||||
--- a/dlls/iphlpapi/tests/iphlpapi.c
|
||||
+++ b/dlls/iphlpapi/tests/iphlpapi.c
|
||||
@@ -1028,13 +1028,13 @@ todo_wine
|
||||
replysz = sizeof(ICMP_ECHO_REPLY) + ICMP_MINLEN;
|
||||
ret = pIcmpSendEcho(icmp, address, senddata, ICMP_MINLEN, NULL, replydata, replysz, 1000);
|
||||
error = GetLastError();
|
||||
-todo_wine
|
||||
ok (ret, "IcmpSendEcho failed unexpectedly with error %d\n", error);
|
||||
|
||||
SetLastError(0xdeadbeef);
|
||||
replysz = sizeof(ICMP_ECHO_REPLY) + ICMP_MINLEN;
|
||||
ret = pIcmpSendEcho(icmp, address, senddata, ICMP_MINLEN + 1, NULL, replydata, replysz, 1000);
|
||||
error = GetLastError();
|
||||
+todo_wine
|
||||
ok (!ret, "IcmpSendEcho succeeded unexpectedly\n");
|
||||
todo_wine
|
||||
ok (error == IP_GENERAL_FAILURE
|
||||
--
|
||||
2.8.0
|
||||
1.9.1
|
||||
|
||||
|
Reference in New Issue
Block a user