BOOL CNdisApi::SendPacketsToMstcp ( PETH_M_REQUEST pPacket ) const;
Return Value:TRUE if call was successful, FALSE otherwise
Parameters:pPacket
Pointer to the user allocated and initialized ETH_M_REQUEST structure.
Remarks:
The following fields of ETH_M_REQUEST must be initialized:
ETH_M_REQUEST.hAdapterHandlemust be set to the interface handle (obtained via call to CNdisApi::GetTcpipBoundAdaptersInfo) from which you would like to simulate receive.ETH_M_REQUEST.dwPacketsNumbermust be set to the number of initializedNDISRD_ETH_Packetstructures inEthPacketarrayETH_M_REQUEST.EthPacket[].Buffermust point to the user allocated and initializedINTERMEDIATE_BUFFERstructure
The following fields of the INTERMEDIATE_BUFFER should be initialized:
INTERMEDIATE_BUFFER.m_IBuffershould contain Ethernet packetINTERMEDIATE_BUFFER.m_Lengthshould be initialized to the actual length of the packet
This member calls the filter driver with IOCTL_NDISRD_SEND_PACKETS_TO_MSTCP control code (see details below).
IOCTL_NDISRD_SEND_PACKETS_TO_MSTCP
| Input Buffer | _ETH_M_REQUEST |
| Input Buffer Size | sizeof(ETH_M_REQUEST) + sizeof(NDISRD_ETH_Packet) * (dwPacketsNumber - 1) |
| Output Buffer | None |
| Output Buffer Size | 0 |
For a WOW64 caller, the library constructs the corresponding ETH_M_REQUEST_WOW64 and NDISRD_ETH_Packet_WOW64 payloads and converts adapter handles and packet buffers.