mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-01-28 22:04:43 -08:00
Updated ntdll-RtlIpv4StringToAddress patchset
This commit is contained in:
parent
be8a670b5b
commit
39678da196
@ -1,16 +1,16 @@
|
||||
From f78b1b06730406eb802afa87e602a3cf4211a170 Mon Sep 17 00:00:00 2001
|
||||
From f2ecf7649cac98316c6e7345c78c66b7afce4b27 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Henrie <alexhenrie24@gmail.com>
|
||||
Date: Thu, 19 Mar 2020 15:37:50 -0600
|
||||
Date: Tue, 7 Apr 2020 21:22:52 -0600
|
||||
Subject: [PATCH] ntdll: Implement RtlIpv6StringToAddress(Ex)[AW]
|
||||
|
||||
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
|
||||
---
|
||||
dlls/ntdll/ntdll.spec | 6 +-
|
||||
dlls/ntdll/rtl.c | 219 +++++++++++++++++++++++++++++++++++++++---
|
||||
2 files changed, 211 insertions(+), 14 deletions(-)
|
||||
dlls/ntdll/rtl.c | 221 +++++++++++++++++++++++++++++++++++++++---
|
||||
2 files changed, 213 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
|
||||
index 13b0317744a..66271f67884 100644
|
||||
index e61a2578da..b887e82b47 100644
|
||||
--- a/dlls/ntdll/ntdll.spec
|
||||
+++ b/dlls/ntdll/ntdll.spec
|
||||
@@ -781,10 +781,10 @@
|
||||
@ -28,7 +28,7 @@ index 13b0317744a..66271f67884 100644
|
||||
@ stdcall RtlIsCriticalSectionLocked(ptr)
|
||||
@ stdcall RtlIsCriticalSectionLockedByThread(ptr)
|
||||
diff --git a/dlls/ntdll/rtl.c b/dlls/ntdll/rtl.c
|
||||
index 64853369a36..6f19216e85b 100644
|
||||
index 64853369a3..a4e220bcf2 100644
|
||||
--- a/dlls/ntdll/rtl.c
|
||||
+++ b/dlls/ntdll/rtl.c
|
||||
@@ -97,6 +97,16 @@ static const DWORD CRC_table[256] =
|
||||
@ -64,7 +64,7 @@ index 64853369a36..6f19216e85b 100644
|
||||
int base = 10, d;
|
||||
WCHAR c;
|
||||
ULONG cur_value, prev_value = 0;
|
||||
@@ -1073,13 +1074,209 @@ NTSTATUS WINAPI RtlIpv4StringToAddressA(const char *str, BOOLEAN strict, const c
|
||||
@@ -1073,13 +1074,211 @@ NTSTATUS WINAPI RtlIpv4StringToAddressA(const char *str, BOOLEAN strict, const c
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -73,7 +73,8 @@ index 64853369a36..6f19216e85b 100644
|
||||
+ WCHAR *terminator;
|
||||
+ if (**str >= ARRAY_SIZE(hex_table) || hex_table[**str] == -1) return FALSE;
|
||||
+ *value = min(wcstoul(*str, &terminator, base), 0x7FFFFFFF);
|
||||
+ if (terminator == *str) return FALSE;
|
||||
+ if (*terminator == '0') terminator++; /* "0x" but nothing valid after */
|
||||
+ else if (terminator == *str) return FALSE;
|
||||
+ *str = terminator;
|
||||
+ return TRUE;
|
||||
+}
|
||||
@ -228,6 +229,7 @@ index 64853369a36..6f19216e85b 100644
|
||||
- FIXME("(%s, %p, %p, %p): stub\n", debugstr_w(str), address, scope, port);
|
||||
- return STATUS_NOT_IMPLEMENTED;
|
||||
+ TRACE("(%s, %p, %p, %p)\n", debugstr_w(str), address, scope, port);
|
||||
+ if (!str || !address || !scope || !port) return STATUS_INVALID_PARAMETER;
|
||||
+ return ipv6_string_to_address(str, TRUE, NULL, address, scope, port);
|
||||
+}
|
||||
+
|
||||
|
Loading…
x
Reference in New Issue
Block a user