188 PCHAR SenderHWAddress, SenderProtoAddress, TargetProtoAddress;
259 SenderHWAddress = (
PVOID)(DataBuffer);
260 SenderProtoAddress = (
PVOID)(SenderHWAddress +
Header->HWAddrLen);
261 TargetProtoAddress = (
PVOID)(SenderProtoAddress +
Header->ProtoAddrLen +
Header->HWAddrLen);
#define TI_DbgPrint(_t_, _x_)
PNDIS_PACKET PrepareARPPacket(PIP_INTERFACE IF, USHORT HardwareType, USHORT ProtocolType, UCHAR LinkAddressLength, UCHAR ProtoAddressLength, PVOID SenderLinkAddress, PVOID SenderProtoAddress, PVOID TargetLinkAddress, PVOID TargetProtoAddress, USHORT Opcode)
_In_ NDIS_HANDLE _In_ PNDIS_PACKET Packet
struct _IP_INTERFACE * PIP_INTERFACE
PNEIGHBOR_CACHE_ENTRY NBLocateNeighbor(PIP_ADDRESS Address, PIP_INTERFACE Interface)
VOID ARPTransmitComplete(PVOID Context, PNDIS_PACKET NdisPacket, NDIS_STATUS NdisStatus)
_In_ UINT _In_ UINT _In_ PNDIS_PACKET _In_ UINT _Out_ PUINT BytesCopied
VOID NBUpdateNeighbor(PNEIGHBOR_CACHE_ENTRY NCE, PVOID LinkAddress, UCHAR State)
#define ARP_COMPLETE_TIMEOUT
#define AddrInitIPv4(IPAddress, RawAddress)
#define ExAllocatePoolWithTag(hernya, size, tag)
BOOLEAN AddrIsEqual(PIP_ADDRESS Address1, PIP_ADDRESS Address2)
#define ExAllocatePool(type, size)
PNEIGHBOR_CACHE_ENTRY NBAddNeighbor(PIP_INTERFACE Interface, PIP_ADDRESS Address, PVOID LinkAddress, UINT LinkAddressLength, UCHAR Type, UINT EventTimer)
IN PVOID IN PVOID IN USHORT IN USHORT IN PINTERFACE Interface
UINT CopyPacketToBuffer(PUCHAR DstData, PNDIS_PACKET SrcPacket, UINT SrcOffset, UINT Length)
#define ARP_OPCODE_REQUEST
struct ARP_HEADER * PARP_HEADER
_In_ NDIS_STATUS _In_ ULONG _In_ USHORT _In_opt_ PVOID _In_ ULONG DataSize