📄 group__npf__ioctl.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><title>WinPcap: NPF I/O control codes</title><link href="style.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.5.6 --><div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div></div><div class="contents"><h1>NPF I/O control codes<br><small>[<a class="el" href="group__NPF.html">NPF driver internals manual</a>]</small></h1><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Defines</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NPF__ioctl.html#g71817d3a52bf0ec819934a5f688a172c">BIOCSETBUFFERSIZE</a> 9592</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set kernel buffer size. <a href="#g71817d3a52bf0ec819934a5f688a172c"></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__ioctl.html#gf85f500f68404076ac60ffe6e08818da">BIOCSETF</a> 9030</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set packet filtering program. <a href="#gf85f500f68404076ac60ffe6e08818da"></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__ioctl.html#g8ae8be8faa281644d8be1cda38b826bd">BIOCGSTATS</a> 9031</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: get the capture stats. <a href="#g8ae8be8faa281644d8be1cda38b826bd"></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__ioctl.html#g327015c2b2e347212b571d1fa3aa2f54">BIOCSRTIMEOUT</a> 7416</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set the read timeout. <a href="#g327015c2b2e347212b571d1fa3aa2f54"></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__ioctl.html#gd1012b82859d09864d246b1fa99d48d6">BIOCSMODE</a> 7412</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set working mode. <a href="#gd1012b82859d09864d246b1fa99d48d6"></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__ioctl.html#g1436997ce2947bbbe22b5400254438a1">BIOCSWRITEREP</a> 7413</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set number of physical repetions of every packet written by the app. <a href="#g1436997ce2947bbbe22b5400254438a1"></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__ioctl.html#ga827e3441e3f84abc7df5e30fcee96d1">BIOCSMINTOCOPY</a> 7414</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set minimum amount of data in the kernel buffer that unlocks a read call. <a href="#ga827e3441e3f84abc7df5e30fcee96d1"></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__ioctl.html#gbf9a4779fd5281607510edc8b5d766dd">BIOCSETOID</a> 0x80000000</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set an OID value. <a href="#gbf9a4779fd5281607510edc8b5d766dd"></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__ioctl.html#g5a0ab3231052ff323817e288dab2f127">BIOCQUERYOID</a> 0x80000004</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: get an OID value. <a href="#g5a0ab3231052ff323817e288dab2f127"></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__ioctl.html#gc8b51f8abae12f57a2ea8e8e4c0cd53c">BIOCSETDUMPFILENAME</a> 9029</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set the name of a the file used by kernel dump mode. <a href="#gc8b51f8abae12f57a2ea8e8e4c0cd53c"></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__ioctl.html#gdd9e03a96d297a33d7cee4d750c34eff">BIOCGEVNAME</a> 7415</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: get the name of the event that the driver signals when some data is present in the buffer. <a href="#gdd9e03a96d297a33d7cee4d750c34eff"></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__ioctl.html#gc50830dc08762383dcb203a66e5c853d">BIOCSENDPACKETSNOSYNC</a> 9032</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: Send a buffer containing multiple packets to the network, ignoring the timestamps. <a href="#gc50830dc08762383dcb203a66e5c853d"></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__ioctl.html#gb4d41e91e460bb101ef8ddb622a8e010">BIOCSENDPACKETSSYNC</a> 9033</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: Send a buffer containing multiple packets to the network, considering the timestamps. <a href="#gb4d41e91e460bb101ef8ddb622a8e010"></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__ioctl.html#g3205efe3271948f253c4da5abf0e12c6">BIOCSETDUMPLIMITS</a> 9034</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: Set the dump file limits. <a href="#g3205efe3271948f253c4da5abf0e12c6"></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__ioctl.html#g874d333aca88363bc6fdcb3e8b1af05b">BIOCISDUMPENDED</a> 7411</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: Get the status of the kernel dump process. <a href="#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__ioctl.html#ge02ae71d6fe0bfb4b600f8027dc90ba3">BIOCISETLOBBEH</a> 7410</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">IOCTL code: set the loopback behavior. <a href="#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__ioctl.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="#g31c73f09a27bb38a6040a5841096576a"></a><br></td></tr></table><hr><h2>Define Documentation</h2><a class="anchor" name="gdd9e03a96d297a33d7cee4d750c34eff"></a><!-- doxytag: member="ioctls.h::BIOCGEVNAME" ref="gdd9e03a96d297a33d7cee4d750c34eff" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BIOCGEVNAME 7415 </td> </tr> </table></div><div class="memdoc"><p>IOCTL code: get the name of the event that the driver signals when some data is present in the buffer. <p>Command used by the application to retrieve the name of the global event associated with a NPF instance. The event is signaled by the driver when the kernel buffer contains enough data for a transfer. <p>Definition at line <a class="el" href="ioctls_8h-source.html#l00137">137</a> of file <a class="el" href="ioctls_8h-source.html">ioctls.h</a>.</p></div></div><p><a class="anchor" name="g8ae8be8faa281644d8be1cda38b826bd"></a><!-- doxytag: member="ioctls.h::BIOCGSTATS" ref="g8ae8be8faa281644d8be1cda38b826bd" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BIOCGSTATS 9031 </td> </tr> </table></div><div class="memdoc"><p>IOCTL code: get the capture stats. <p>This command returns to the application the number of packets received and the number of packets dropped by an instance of the driver. <p>Definition at line <a class="el" href="ioctls_8h-source.html#l00075">75</a> of file <a class="el" href="ioctls_8h-source.html">ioctls.h</a>.</p></div></div><p><a class="anchor" name="g874d333aca88363bc6fdcb3e8b1af05b"></a><!-- doxytag: member="ioctls.h::BIOCISDUMPENDED" ref="g874d333aca88363bc6fdcb3e8b1af05b" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BIOCISDUMPENDED 7411 </td> </tr> </table></div><div class="memdoc"><p>IOCTL code: Get the status of the kernel dump process. <p>This command returns TRUE if the kernel dump is ended, i.e if one of the limits set with BIOCSETDUMPLIMITS (amount of bytes or number of packets) has been reached. <p>Definition at line <a class="el" href="ioctls_8h-source.html#l00172">172</a> of file <a class="el" href="ioctls_8h-source.html">ioctls.h</a>.</p></div></div><p><a class="anchor" name="ge02ae71d6fe0bfb4b600f8027dc90ba3"></a><!-- doxytag: member="ioctls.h::BIOCISETLOBBEH" ref="ge02ae71d6fe0bfb4b600f8027dc90ba3" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BIOCISETLOBBEH 7410 </td> </tr> </table></div><div class="memdoc"><p>IOCTL code: set the loopback behavior. <p>This IOCTL sets the loopback behavior of the driver with packets sent by itself: capture or drop. <p>Definition at line <a class="el" href="ioctls_8h-source.html#l00179">179</a> of file <a class="el" href="ioctls_8h-source.html">ioctls.h</a>.</p></div></div><p><a class="anchor" name="g5a0ab3231052ff323817e288dab2f127"></a><!-- doxytag: member="ioctls.h::BIOCQUERYOID" ref="g5a0ab3231052ff323817e288dab2f127" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BIOCQUERYOID 0x80000004 </td> </tr> </table></div><div class="memdoc"><p>IOCTL code: get an OID value. <p>This IOCTL is used to perform an OID get operation on the NIC driver. <p>Definition at line <a class="el" href="ioctls_8h-source.html#l00120">120</a> of file <a class="el" href="ioctls_8h-source.html">ioctls.h</a>.</p></div></div><p><a class="anchor" name="gc50830dc08762383dcb203a66e5c853d"></a><!-- doxytag: member="ioctls.h::BIOCSENDPACKETSNOSYNC" ref="gc50830dc08762383dcb203a66e5c853d" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BIOCSENDPACKETSNOSYNC 9032 </td> </tr> </table></div><div class="memdoc"><p>IOCTL code: Send a buffer containing multiple packets to the network, ignoring the timestamps. <p>Command used to send a buffer of packets in a single system call. Every packet in the buffer is preceded by a <a class="el" href="structsf__pkthdr.html" title="Header associated to a packet in the driver's buffer when the driver is in dump...">sf_pkthdr</a> structure. The timestamps of the packets are ignored, i.e. the packets are sent as fast as possible. The <a class="el" href="group__NPF__code.html#g9a97dd25ae757da4bfed3723a4eb4bce" title="Writes a buffer of raw packets to the network.">NPF_BufferedWrite()</a> function is invoked to send the packets. <p>Definition at line <a class="el" href="ioctls_8h-source.html#l00146">146</a> of file <a class="el" href="ioctls_8h-source.html">ioctls.h</a>.</p></div></div><p><a class="anchor" name="gb4d41e91e460bb101ef8ddb622a8e010"></a><!-- doxytag: member="ioctls.h::BIOCSENDPACKETSSYNC" ref="gb4d41e91e460bb101ef8ddb622a8e010" args="" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BIOCSENDPACKETSSYNC 9033 </td> </tr> </table></div><div class="memdoc"><p>IOCTL code: Send a buffer containing multiple packets to the network, considering the timestamps.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -