mirror of
https://github.com/reactos/reactos.git
synced 2025-02-22 16:36:33 +00:00
[TCPIP]
- Fix IPPacket double free in IPSendDatagram failure case svn path=/trunk/; revision=54620
This commit is contained in:
parent
798a3cfa96
commit
dfcc357969
4 changed files with 0 additions and 35 deletions
|
@ -24,29 +24,6 @@ NTSTATUS ICMPShutdown()
|
|||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
VOID SendICMPComplete(
|
||||
PVOID Context,
|
||||
PNDIS_PACKET Packet,
|
||||
NDIS_STATUS NdisStatus)
|
||||
/*
|
||||
* FUNCTION: ICMP datagram transmit completion handler
|
||||
* ARGUMENTS:
|
||||
* Context = Pointer to context infomation (IP_PACKET)
|
||||
* Packet = Pointer to NDIS packet
|
||||
* NdisStatus = Status of transmit operation
|
||||
* NOTES:
|
||||
* This routine is called by IP when a ICMP send completes
|
||||
*/
|
||||
{
|
||||
TI_DbgPrint(DEBUG_ICMP, ("Freeing NDIS packet (%X).\n", Packet));
|
||||
|
||||
/* Free packet */
|
||||
FreeNdisPacket(Packet);
|
||||
|
||||
TI_DbgPrint(DEBUG_ICMP, ("Done\n"));
|
||||
}
|
||||
|
||||
|
||||
BOOLEAN PrepareICMPPacket(
|
||||
PADDRESS_FILE AddrFile,
|
||||
PIP_INTERFACE Interface,
|
||||
|
@ -219,10 +196,7 @@ NTSTATUS ICMPSendDatagram(
|
|||
|
||||
Status = IPSendDatagram(&Packet, NCE);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
Packet.Free(&Packet);
|
||||
return Status;
|
||||
}
|
||||
|
||||
*DataUsed = DataSize;
|
||||
|
||||
|
|
|
@ -254,10 +254,7 @@ NTSTATUS RawIPSendDatagram(
|
|||
|
||||
Status = IPSendDatagram(&Packet, NCE);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
Packet.Free(&Packet);
|
||||
return Status;
|
||||
}
|
||||
|
||||
*DataUsed = DataSize;
|
||||
|
||||
|
|
|
@ -61,10 +61,7 @@ TCPSendDataCallback(struct netif *netif, struct pbuf *p, struct ip_addr *dest)
|
|||
|
||||
NdisStatus = IPSendDatagram(&Packet, NCE);
|
||||
if (!NT_SUCCESS(NdisStatus))
|
||||
{
|
||||
Packet.Free(&Packet);
|
||||
return ERR_RTE;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -230,10 +230,7 @@ NTSTATUS UDPSendDatagram(
|
|||
|
||||
Status = IPSendDatagram(&Packet, NCE);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
Packet.Free(&Packet);
|
||||
return Status;
|
||||
}
|
||||
|
||||
*DataUsed = DataSize;
|
||||
|
||||
|
|
Loading…
Reference in a new issue