CNdisApi

The CNdisApi class is the official C++ wrapper for Windows Packet Filter, encapsulating driver handle management, adapter configuration, packet filtering, and kernel communications.

Class Methods Directory (Windows Packet Filter 3.6.x)

  • Driver Management: IsDriverLoaded, GetVersion, DeviceIoControl
  • Adapter Enumeration & Configuration: GetTcpipBoundAdaptersInfo, GetAdapterMode, SetAdapterMode, GetHwPacketFilter, SetHwPacketFilter, GetMTUDecrement, SetMTUDecrement, GetAdaptersStartupMode, SetAdaptersStartupMode
  • Events: SetPacketEvent, SetWANEvent, SetAdapterListChangeEvent, SetHwPacketFilterEvent
  • Packet Transfer: ReadPacket, ReadPackets, ReadPacketsUnsorted, SendPacketToAdapter, SendPacketsToAdapter, SendPacketsToAdaptersUnsorted, SendPacketToMstcp, SendPacketsToMstcp, SendPacketsToMstcpUnsorted, FlushAdapterPacketQueue, GetAdapterPacketQueueSize
  • Fast I/O: InitializeFastIo, AddSecondaryFastIo
  • Static Filters: SetPacketFilterTable, GetPacketFilterTable, GetPacketFilterTableSize, ResetPacketFilterTable, GetPacketFilterTableResetStats
  • Dynamic Filter Management (3.6.1+): AddStaticFilterFront, AddStaticFilterBack, InsertStaticFilter, RemoveStaticFilter
  • Kernel Caches (3.6.1+): EnablePacketFilterCache, DisablePacketFilterCache, EnablePacketFragmentCache, DisablePacketFragmentCache
  • Low-Level I/O (3.6.2+): DeviceIoControl, NdisrdRequest