[DDK][NDK][RTL][WS2_32_NEW]

- Add missing and improve existing declarations of RtlIpv4StringToAddress*

svn path=/trunk/; revision=61707
This commit is contained in:
Thomas Faber 2014-01-19 14:56:13 +00:00
parent bccb083ae2
commit 57883c7aef
4 changed files with 52 additions and 19 deletions

View file

@ -87,15 +87,18 @@ WINAPI
ParseV4Address(IN PCWSTR AddressString,
OUT PDWORD pAddress)
{
DWORD Address;
LPWSTR Ip = 0;
IN_ADDR Address;
PCWSTR Terminator;
NTSTATUS Status;
/* Do the conversion, don't accept wildcard */
RtlIpv4StringToAddressW((LPWSTR)AddressString, 0, &Ip, (IN_ADDR *)&Address);
*pAddress = 0;
Status = RtlIpv4StringToAddressW(AddressString, FALSE, &Terminator, &Address);
/* Return the address and success */
*pAddress = Address;
return FALSE;
if (!NT_SUCCESS(Status))
return FALSE;
*pAddress = Address.S_un.S_addr;
return TRUE;
}
static

View file

@ -3991,16 +3991,46 @@ RtlComputeCrc32(
//
// Network Functions
//
NTSYSAPI
NTSTATUS
NTAPI
RtlIpv4StringToAddressA(
_In_ PCSTR String,
_In_ BOOLEAN Strict,
_Out_ PCSTR *Terminator,
_Out_ struct in_addr *Addr
);
NTSYSAPI
NTSTATUS
NTAPI
RtlIpv4StringToAddressW(
_In_ PCWSTR String,
_In_ BOOLEAN Strict,
_Out_ LPWSTR *Terminator,
_Out_ PCWSTR *Terminator,
_Out_ struct in_addr *Addr
);
NTSYSAPI
NTSTATUS
NTAPI
RtlIpv4StringToAddressExA(
_In_ PCSTR AddressString,
_In_ BOOLEAN Strict,
_Out_ struct in_addr *Address,
_Out_ PUSHORT Port
);
NTSYSAPI
NTSTATUS
NTAPI
RtlIpv4StringToAddressExW(
_In_ PCWSTR AddressString,
_In_ BOOLEAN Strict,
_Out_ struct in_addr *Address,
_Out_ PUSHORT Port
);
NTSYSAPI
NTSTATUS
NTAPI

View file

@ -1340,7 +1340,7 @@ NTSYSAPI
LONG
NTAPI
RtlIpv4StringToAddressA(
_In_ PCSTR S,
_In_ PCSTR String,
_In_ BOOLEAN Strict,
_Out_ PCSTR *Terminator,
_Out_ struct in_addr *Addr);
@ -1358,9 +1358,9 @@ NTSYSAPI
LONG
NTAPI
RtlIpv4StringToAddressW(
_In_ PCWSTR S,
_In_ PCWSTR String,
_In_ BOOLEAN Strict,
_Out_ LPCWSTR *Terminator,
_Out_ PCWSTR *Terminator,
_Out_ struct in_addr *Addr);
NTSYSAPI

View file

@ -32,7 +32,7 @@ RtlIpv4AddressToStringA(IN struct in_addr *Addr,
OUT PCHAR S)
{
INT Length;
if (!S) return (LPSTR)~0;
Length = sprintf(S, "%u.%u.%u.%u", Addr->S_un.S_un_b.s_b1,
@ -88,7 +88,7 @@ RtlIpv4AddressToStringW(IN struct in_addr *Addr,
INT Length;
if (!S) return (LPWSTR)~0;
Length = swprintf(S, L"%u.%u.%u.%u", Addr->S_un.S_un_b.s_b1,
Addr->S_un.S_un_b.s_b2,
Addr->S_un.S_un_b.s_b3,
@ -135,9 +135,9 @@ RtlIpv4AddressToStringExW(IN struct in_addr *Address,
*/
NTSTATUS
NTAPI
RtlIpv4StringToAddressA(IN PCHAR String,
RtlIpv4StringToAddressA(IN PCSTR String,
IN BOOLEAN Strict,
OUT PCHAR *Terminator,
OUT PCSTR *Terminator,
OUT struct in_addr *Addr)
{
UNIMPLEMENTED;
@ -149,10 +149,10 @@ RtlIpv4StringToAddressA(IN PCHAR String,
*/
NTSTATUS
NTAPI
RtlIpv4StringToAddressExA(IN PCHAR AddressString,
RtlIpv4StringToAddressExA(IN PCSTR AddressString,
IN BOOLEAN Strict,
OUT struct in_addr *Address,
IN PUSHORT Port)
OUT PUSHORT Port)
{
UNIMPLEMENTED;
return STATUS_NOT_IMPLEMENTED;
@ -165,7 +165,7 @@ NTSTATUS
NTAPI
RtlIpv4StringToAddressW(IN PCWSTR String,
IN BOOLEAN Strict,
OUT LPWSTR *Terminator,
OUT PCWSTR *Terminator,
OUT struct in_addr *Addr)
{
UNIMPLEMENTED;
@ -177,7 +177,7 @@ RtlIpv4StringToAddressW(IN PCWSTR String,
*/
NTSTATUS
NTAPI
RtlIpv4StringToAddressExW(IN PWCHAR AddressString,
RtlIpv4StringToAddressExW(IN PCWSTR AddressString,
IN BOOLEAN Strict,
OUT struct in_addr *Address,
OUT PUSHORT Port)