diff --git a/reactos/drivers/network/ndis/ndis/miniport.c b/reactos/drivers/network/ndis/ndis/miniport.c index 1df053152ba..794e5d45650 100644 --- a/reactos/drivers/network/ndis/ndis/miniport.c +++ b/reactos/drivers/network/ndis/ndis/miniport.c @@ -1000,7 +1000,8 @@ MiniportWorker(IN PDEVICE_OBJECT DeviceObject, IN PVOID Context) { NDIS_DbgPrint(MAX_TRACE, ("Calling miniport's Send handler\n")); NdisStatus = (*Adapter->NdisMiniportBlock.DriverHandle->MiniportCharacteristics.SendHandler)( - Adapter->NdisMiniportBlock.MiniportAdapterContext, (PNDIS_PACKET)WorkItemContext, 0); + Adapter->NdisMiniportBlock.MiniportAdapterContext, (PNDIS_PACKET)WorkItemContext, + ((PNDIS_PACKET)WorkItemContext)->Private.Flags); NDIS_DbgPrint(MAX_TRACE, ("back from miniport's send handler\n")); } else @@ -1009,7 +1010,8 @@ MiniportWorker(IN PDEVICE_OBJECT DeviceObject, IN PVOID Context) KeRaiseIrql(DISPATCH_LEVEL, &RaiseOldIrql); NDIS_DbgPrint(MAX_TRACE, ("Calling miniport's Send handler\n")); NdisStatus = (*Adapter->NdisMiniportBlock.DriverHandle->MiniportCharacteristics.SendHandler)( - Adapter->NdisMiniportBlock.MiniportAdapterContext, (PNDIS_PACKET)WorkItemContext, 0); + Adapter->NdisMiniportBlock.MiniportAdapterContext, (PNDIS_PACKET)WorkItemContext, + ((PNDIS_PACKET)WorkItemContext)->Private.Flags); NDIS_DbgPrint(MAX_TRACE, ("back from miniport's send handler\n")); KeLowerIrql(RaiseOldIrql); if( NdisStatus == NDIS_STATUS_RESOURCES ) { diff --git a/reactos/drivers/network/ndis/ndis/protocol.c b/reactos/drivers/network/ndis/ndis/protocol.c index ff1895aed93..532601b9965 100644 --- a/reactos/drivers/network/ndis/ndis/protocol.c +++ b/reactos/drivers/network/ndis/ndis/protocol.c @@ -225,14 +225,14 @@ proSendPacketToMiniport(PLOGICAL_ADAPTER Adapter, PNDIS_PACKET Packet) { NDIS_DbgPrint(MAX_TRACE, ("Calling miniport's Send handler\n")); NdisStatus = (*Adapter->NdisMiniportBlock.DriverHandle->MiniportCharacteristics.SendHandler)( - Adapter->NdisMiniportBlock.MiniportAdapterContext, Packet, 0); + Adapter->NdisMiniportBlock.MiniportAdapterContext, Packet, Packet->Private.Flags); NDIS_DbgPrint(MAX_TRACE, ("back from miniport's send handler\n")); } else { /* Send is called at DISPATCH_LEVEL for all serialized miniports */ KeRaiseIrql(DISPATCH_LEVEL, &RaiseOldIrql); NDIS_DbgPrint(MAX_TRACE, ("Calling miniport's Send handler\n")); NdisStatus = (*Adapter->NdisMiniportBlock.DriverHandle->MiniportCharacteristics.SendHandler)( - Adapter->NdisMiniportBlock.MiniportAdapterContext, Packet, 0); + Adapter->NdisMiniportBlock.MiniportAdapterContext, Packet, Packet->Private.Flags); NDIS_DbgPrint(MAX_TRACE, ("back from miniport's send handler\n")); KeLowerIrql(RaiseOldIrql); @@ -351,7 +351,7 @@ ProSendPackets( for (i = 0; i < NumberOfPackets; i++) { NdisStatus = (*Adapter->NdisMiniportBlock.DriverHandle->MiniportCharacteristics.SendHandler)( - Adapter->NdisMiniportBlock.MiniportAdapterContext, PacketArray[i], 0); + Adapter->NdisMiniportBlock.MiniportAdapterContext, PacketArray[i], PacketArray[i]->Private.Flags); if (NdisStatus != NDIS_STATUS_PENDING) MiniSendComplete(Adapter, PacketArray[i], NdisStatus); } @@ -363,7 +363,7 @@ ProSendPackets( for (i = 0; i < NumberOfPackets; i++) { NdisStatus = (*Adapter->NdisMiniportBlock.DriverHandle->MiniportCharacteristics.SendHandler)( - Adapter->NdisMiniportBlock.MiniportAdapterContext, PacketArray[i], 0); + Adapter->NdisMiniportBlock.MiniportAdapterContext, PacketArray[i], PacketArray[i]->Private.Flags); if (NdisStatus != NDIS_STATUS_PENDING) MiniSendComplete(Adapter, PacketArray[i], NdisStatus); }