mirror of
https://github.com/reactos/reactos.git
synced 2025-05-06 18:31:26 +00:00
- Fix a bug resulting in ROS discarding all gratuitous ARP packets
- Remove an unnecessary check svn path=/trunk/; revision=42453
This commit is contained in:
parent
3bcb06c85c
commit
353d0a8d27
1 changed files with 1 additions and 13 deletions
|
@ -179,7 +179,6 @@ VOID ARPReceive(
|
|||
IP_ADDRESS Address;
|
||||
PVOID SenderHWAddress;
|
||||
PVOID SenderProtoAddress;
|
||||
PVOID TargetProtoAddress;
|
||||
PNEIGHBOR_CACHE_ENTRY NCE;
|
||||
PNDIS_PACKET NdisPacket;
|
||||
PIP_INTERFACE Interface = (PIP_INTERFACE)Context;
|
||||
|
@ -203,17 +202,6 @@ VOID ARPReceive(
|
|||
SenderHWAddress = (PVOID)((ULONG_PTR)Header + sizeof(ARP_HEADER));
|
||||
SenderProtoAddress = (PVOID)((ULONG_PTR)SenderHWAddress + Header->HWAddrLen);
|
||||
|
||||
/* Check if we have the target protocol address */
|
||||
|
||||
TargetProtoAddress = (PVOID)((ULONG_PTR)SenderProtoAddress +
|
||||
Header->ProtoAddrLen + Header->HWAddrLen);
|
||||
|
||||
if( !AddrLocateADEv4( *((PIPv4_RAW_ADDRESS)TargetProtoAddress),
|
||||
&Address) ) {
|
||||
TI_DbgPrint(DEBUG_ARP, ("Target address (0x%X) is not mine.\n", *((PULONG)TargetProtoAddress)));
|
||||
return;
|
||||
}
|
||||
|
||||
/* Check if we know the sender */
|
||||
|
||||
AddrInitIPv4(&Address, *((PULONG)SenderProtoAddress));
|
||||
|
@ -230,7 +218,7 @@ VOID ARPReceive(
|
|||
Header->HWAddrLen, NUD_REACHABLE);
|
||||
}
|
||||
|
||||
if (Header->Opcode != ARP_OPCODE_REQUEST || !NCE)
|
||||
if (Header->Opcode != ARP_OPCODE_REQUEST)
|
||||
return;
|
||||
|
||||
/* This is a request for our address. Swap the addresses and
|
||||
|
|
Loading…
Reference in a new issue