- Merge aicom-network-fixes up to r35899

svn path=/trunk/; revision=35901
This commit is contained in:
Cameron Gutman 2008-09-03 00:32:07 +00:00
parent cae5d127c8
commit a84ca6d5c6
4 changed files with 12 additions and 1 deletions

View file

@ -150,6 +150,8 @@ BOOLEAN ARPTransmit(PIP_ADDRESS Address, PIP_INTERFACE Interface)
&Address->Address, /* Target's (remote) protocol address */
ARP_OPCODE_REQUEST); /* ARP request */
if( !NdisPacket ) return FALSE;
ASSERT_KM_POINTER(NdisPacket);
ASSERT_KM_POINTER(PC(NdisPacket));
PC(NdisPacket)->DLComplete = ARPTransmitComplete;

View file

@ -143,6 +143,13 @@ NTSTATUS BuildRawIpPacket(
break;
}
if( !NT_SUCCESS(Status) ) {
TI_DbgPrint(MIN_TRACE, ("Cannot add header. Status = (0x%X)\n",
Status));
FreeNdisPacket(Packet->NdisPacket);
return Status;
}
TI_DbgPrint(MID_TRACE, ("Copying data (hdr %x data %x (%d))\n",
Packet->Header, Packet->Data,
(PCHAR)Packet->Data - (PCHAR)Packet->Header));

View file

@ -34,9 +34,9 @@ PVOID TCPPrepareInterface( PIP_INTERFACE IF ) {
NTSTATUS Status;
POSK_IFADDR ifaddr = exAllocatePool
( NonPagedPool, sizeof(*ifaddr) + 2 * sizeof( struct sockaddr_in ) );
if( !ifaddr ) return NULL;
struct sockaddr_in *addr_in = (struct sockaddr_in *)&ifaddr[1];
struct sockaddr_in *dstaddr_in = (struct sockaddr_in *)&addr_in[1];
if( !ifaddr ) return NULL;
TI_DbgPrint(DEBUG_TCPIF,("Called\n"));

View file

@ -330,6 +330,8 @@ NTSTATUS UDPShutdown(
/* Deregister this protocol with IP layer */
IPRegisterProtocol(IPPROTO_UDP, NULL);
UDPInitialized = FALSE;
return STATUS_SUCCESS;
}