📄 packet_8h.html
字号:
<tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: Get the status of the kernel dump process. <a href="group__NPF__include.html#g874d333aca88363bc6fdcb3e8b1af05b"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#ge02ae71d6fe0bfb4b600f8027dc90ba3">BIOCISETLOBBEH</a> 7410</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set the loopback behavior. <a href="group__NPF__include.html#ge02ae71d6fe0bfb4b600f8027dc90ba3"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g31c73f09a27bb38a6040a5841096576a">BIOCSETEVENTHANDLE</a> 7920</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">This IOCTL passes the read event HANDLE allocated by the user (packet.dll) to kernel level. <a href="group__NPF__include.html#g31c73f09a27bb38a6040a5841096576a"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#gc93c0a6ad1d2a3143b1115bdab3ac04d">MODE_CAPT</a> 0x0</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Capture working mode. <a href="group__NPF__include.html#gc93c0a6ad1d2a3143b1115bdab3ac04d"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g503326906a62e96c147ae6af31fb5659">MODE_STAT</a> 0x1</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Statistical working mode. <a href="group__NPF__include.html#g503326906a62e96c147ae6af31fb5659"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g528e7e542cb1a028a10a3a318880dffb">MODE_MON</a> 0x2</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Kernel monitoring mode. <a href="group__NPF__include.html#g528e7e542cb1a028a10a3a318880dffb"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g89853f93dc8cc890b0665629d16d2831">MODE_DUMP</a> 0x10</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Kernel dump working mode. <a href="group__NPF__include.html#g89853f93dc8cc890b0665629d16d2831"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g4f6749b7708a411df2a3341a3fcef917">IMMEDIATE</a> 1</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Immediate timeout. Forces a read call to return immediately. <a href="group__NPF__include.html#g4f6749b7708a411df2a3341a3fcef917"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g0a110077bb4fcbcc75512d8988c90de8">NDIS_FLAGS_SKIP_LOOPBACK_W2K</a> 0x400</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">This is an undocumented flag for NdisSetPacketFlags() that allows to disable loopback reception. <a href="group__NPF__include.html#g0a110077bb4fcbcc75512d8988c90de8"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#gfedcc0aa0cf5abe7b20c68eefdfcb126">TCPDUMP_MAGIC</a> 0xa1b2c3d4</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Libpcap magic number. Used by programs like tcpdump to recognize a driver's generated dump file. <a href="group__NPF__include.html#gfedcc0aa0cf5abe7b20c68eefdfcb126"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#gac031371d41e21ff96e80409e05a7ddb">PCAP_VERSION_MAJOR</a> 2</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Major libpcap version of the dump file. Used by programs like tcpdump to recognize a driver's generated dump file. <a href="group__NPF__include.html#gac031371d41e21ff96e80409e05a7ddb"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g9c200b070c9f626d38184588b16849c2">PCAP_VERSION_MINOR</a> 4</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Minor libpcap version of the dump file. Used by programs like tcpdump to recognize a driver's generated dump file. <a href="group__NPF__include.html#g9c200b070c9f626d38184588b16849c2"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g7ccc8974741059b5ae25231a56dbed09">NPF_DISABLE_LOOPBACK</a> 1</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Tells the driver to drop the packets sent by itself. This is usefult when building applications like bridges. <a href="group__NPF__include.html#g7ccc8974741059b5ae25231a56dbed09"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g4a60d1f215d5b2af2b3b86a0f2a90ae2">NPF_ENABLE_LOOPBACK</a> 2</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Tells the driver to capture the packets sent by itself. <a href="group__NPF__include.html#g4a60d1f215d5b2af2b3b86a0f2a90ae2"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g048ba8dfabc6ac16c602a1ca6fe994fc">RESERVED</a>(_p) ((<a class="el" href="struct__PACKET__RESERVED.html">PPACKET_RESERVED</a>)((_p)->ProtocolReserved))</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Macro to obtain a NDIS_PACKET from a PACKET_RESERVED. <a href="group__NPF__include.html#g048ba8dfabc6ac16c602a1ca6fe994fc"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g652e6173ee1441712652d74a5533e042">TRANSMIT_PACKETS</a> 256</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">of packets that can be transmitted at the same time or with a single call to NdisSendPackets. <a href="group__NPF__include.html#g652e6173ee1441712652d74a5533e042"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#gcabf25322566f3bcd1e564e4939f5821">EXIT_SUCCESS</a>(quantity)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Macro used in the I/O routines to return the control to user-mode with a success status. <a href="group__NPF__include.html#gcabf25322566f3bcd1e564e4939f5821"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#gd6d1f5522a147ddeb7d9b11916acd50a">EXIT_FAILURE</a>(quantity)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Macro used in the I/O routines to return the control to user-mode with a failure status. <a href="group__NPF__include.html#gd6d1f5522a147ddeb7d9b11916acd50a"></a><br></td></tr><tr><td colspan="2"><br><h2>Typedefs</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__INTERNAL__REQUEST.html">_INTERNAL_REQUEST</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g0bee4ca4dc129822e19478f88d991a31">INTERNAL_REQUEST</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Stores an OID request. <a href="group__NPF__include.html#g0bee4ca4dc129822e19478f88d991a31"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__INTERNAL__REQUEST.html">_INTERNAL_REQUEST</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g55591a7d14855359ed1e3995f7f025c3">PINTERNAL_REQUEST</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Stores an OID request. <a href="group__NPF__include.html#g55591a7d14855359ed1e3995f7f025c3"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__PACKET__RESERVED.html">_PACKET_RESERVED</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g2225b3cfa793593a1849aa0652846a5c">PACKET_RESERVED</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Contains a NDIS packet. <a href="group__NPF__include.html#g2225b3cfa793593a1849aa0652846a5c"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__PACKET__RESERVED.html">_PACKET_RESERVED</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g375d9973bbbe748c9722e8f546beb10c">PPACKET_RESERVED</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Contains a NDIS packet. <a href="group__NPF__include.html#g375d9973bbbe748c9722e8f546beb10c"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__DEVICE__EXTENSION.html">_DEVICE_EXTENSION</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g5091b7a273db5d38a71df5293eb52ccf">DEVICE_EXTENSION</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Port device extension. <a href="group__NPF__include.html#g5091b7a273db5d38a71df5293eb52ccf"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__DEVICE__EXTENSION.html">_DEVICE_EXTENSION</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#gc8ad25578be589c8352fc4e1a8a99be3">PDEVICE_EXTENSION</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Port device extension. <a href="group__NPF__include.html#gc8ad25578be589c8352fc4e1a8a99be3"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct____CPU__Private__Data.html">__CPU_Private_Data</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#g321d8c7f608d41e095ec3508cff10764">CpuPrivateData</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Kernel buffer of each CPU. <a href="group__NPF__include.html#g321d8c7f608d41e095ec3508cff10764"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__OPEN__INSTANCE.html">_OPEN_INSTANCE</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#gfeddf3a08e141d369532061f3f8cd939">OPEN_INSTANCE</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Contains the state of a running instance of the NPF driver. <a href="group__NPF__include.html#gfeddf3a08e141d369532061f3f8cd939"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="struct__OPEN__INSTANCE.html">_OPEN_INSTANCE</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#gd3b7ff25cfe0e8fd50666782f85e76cb">POPEN_INSTANCE</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Contains the state of a running instance of the NPF driver. <a href="group__NPF__include.html#gd3b7ff25cfe0e8fd50666782f85e76cb"></a><br></td></tr><tr><td colspan="2"><br><h2>Enumerations</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__include.html#ga80226df1c5ee18b01580d23ed4f31cb">ADAPTER_BINDING_STATUS</a> { <a class="el" href="group__NPF__include.html#gga80226df1c5ee18b01580d23ed4f31cb6e4cdf9f09abf447cffdfd5058357822">ADAPTER_UNBOUND</a>, <a class="el" href="group__NPF__include.html#gga80226df1c5ee18b01580d23ed4f31cb3e0c0f314d2e9dc41c205ab44bf087bc">ADAPTER_BOUND</a>, <a class="el" href="group__NPF__include.html#gga80226df1c5ee18b01580d23ed4f31cbdc92e852ef35fac0f033487a3be66a93">ADAPTER_UNBINDING</a> }</td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">NTSTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__code.html#g6502d781bd20234a06710b92d540baba">DriverEntry</a> (IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">The initialization routine of the driver. <a href="group__NPF__code.html#g6502d781bd20234a06710b92d540baba"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">PWCHAR </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__code.html#gfc395636686df00f554efbd2010f73cb">getAdaptersList</a> (VOID)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the list of the MACs available on the system. <a href="group__NPF__code.html#gfc395636686df00f554efbd2010f73cb"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">PKEY_VALUE_PARTIAL_INFORMATION </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__code.html#gcf0e32b371eb9283e5cf1de0dfb15629">getTcpBindings</a> (VOID)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the MACs that bind to TCP/IP. <a href="group__NPF__code.html#gcf0e32b371eb9283e5cf1de0dfb15629"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">BOOLEAN </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__code.html#g8b4f23818c00c1186aa0bc59b57ff6c6">createDevice</a> (IN OUT PDRIVER_OBJECT adriverObjectP, IN PUNICODE_STRING amacNameP, NDIS_HANDLE aProtoHandle)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a device for a given MAC. <a href="group__NPF__code.html#g8b4f23818c00c1186aa0bc59b57ff6c6"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">NTSTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__code.html#g82e557625e52fe4395bbe2e494fe8c4a">NPF_Open</a> (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Opens a new instance of the driver. <a href="group__NPF__code.html#g82e557625e52fe4395bbe2e494fe8c4a"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">VOID </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__code.html#g155ae51be29c6d36f8109781b8f6e7b2">NPF_OpenAdapterComplete</a> (IN NDIS_HANDLE ProtocolBindingContext, IN NDIS_STATUS Status, IN NDIS_STATUS OpenErrorStatus)</td></tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -