Author: pschweitzer Date: Fri Dec 11 22:30:02 2015 New Revision: 70323
URL: http://svn.reactos.org/svn/reactos?rev=70323&view=rev Log: [TCPIP] Fix the last failing tests of iphlpapi_apitest:SendARP
Modified: trunk/reactos/drivers/network/tcpip/tcpip/dispatch.c
Modified: trunk/reactos/drivers/network/tcpip/tcpip/dispatch.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/tcpip/tcpip... ============================================================================== --- trunk/reactos/drivers/network/tcpip/tcpip/dispatch.c [iso-8859-1] (original) +++ trunk/reactos/drivers/network/tcpip/tcpip/dispatch.c [iso-8859-1] Fri Dec 11 22:30:02 2015 @@ -1645,7 +1645,7 @@ PVOID OutputBuffer;
if (NCE->LinkAddressLength > WorkItem->IrpSp->Parameters.DeviceIoControl.OutputBufferLength) { - Status = STATUS_INVALID_BUFFER_SIZE; + Status = STATUS_INSUFFICIENT_RESOURCES; } else { OutputBuffer = Irp->AssociatedIrp.SystemBuffer; RtlCopyMemory(OutputBuffer, NCE->LinkAddress, NCE->LinkAddressLength); @@ -1691,13 +1691,8 @@ if (Interface) { PVOID OutputBuffer;
- if (!AddrIsUnspecified(&Local) && IPs[0] != IPs[1]) { - Status = STATUS_UNSUCCESSFUL; - goto Exit; - } - if (Interface->AddressLength > IrpSp->Parameters.DeviceIoControl.OutputBufferLength) { - Status = STATUS_INVALID_BUFFER_SIZE; + Status = STATUS_INSUFFICIENT_RESOURCES; goto Exit; }
@@ -1720,8 +1715,11 @@ else { Interface = AddrLocateInterface(&Local); if (Interface == NULL) { - Status = STATUS_NETWORK_UNREACHABLE; - goto Exit; + Interface = GetDefaultInterface(); + if (Interface == NULL) { + Status = STATUS_NETWORK_UNREACHABLE; + goto Exit; + } } }