Home › Forums › Discussions › General › TDI FILTER driver › Reply To: TDI FILTER driver
July 20, 2007 at 6:13 pm
#6333
перехватываю еще ClientEventChainedReceive сам перехват срабатывает, но данные почему-то из Tsdu немогу вытянуть.. Делаю так:
NTSTATUS HookedClientEventChainedReceive(IN PVOID TdiEventContext,
IN CONNECTION_CONTEXT ConnectionContext,
IN ULONG ReceiveFlags,
IN ULONG ReceiveLength,
IN ULONG StartingOffset,
IN PMDL Tsdu,
IN PVOID TsduDescriptor)
{
UCHAR *sduBuffer;
DbgPrint("tdi_sniffer:
***BEGIN TDI_EVENT_CHAINED_RECEIVE***
n");
sduBuffer = MmGetSystemAddressForMdlSafe (Tsdu, LowPagePriority);
DbgPrint(sduBuffer);
DbgPrint("tdi_sniffer:
***END TDI_EVENT_CHAINED_RECEIVE***
n");
return ((OLDCLIENTEVENTCHAINEDRECEIVE)((PCLIENTEVENTRECEIVECONTEXT)TdiEventContext)->EventHandler)(((PCLIENTEVENTRECEIVECONTEXT)TdiEventContext)->EventContext,
ConnectionContext,
ReceiveFlags,
ReceiveLength,
StartingOffset,
Tsdu,
TsduDescriptor);
}
т.к. в Tsdu содержится MDL адрес, вытягиваю данные функцией MmGetSystemAddressForMdlSafe.. и почему-то никакие принятые данные не отображаются..