Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

455 lines
22 KiB

  1. <html xmlns:v="urn:schemas-microsoft-com:vml"
  2. xmlns:o="urn:schemas-microsoft-com:office:office"
  3. xmlns:w="urn:schemas-microsoft-com:office:word"
  4. xmlns="http://www.w3.org/TR/REC-html40">
  5. <head>
  6. <meta http-equiv=Content-Type content="text/html; charset=windows-1252">
  7. <meta name=ProgId content=Word.Document>
  8. <meta name=Generator content="Microsoft Word 10">
  9. <meta name=Originator content="Microsoft Word 10">
  10. <link rel=File-List href="uiosample_files/filelist.xml">
  11. <title>NDIS connection-less protocol driver sample</title>
  12. <!--[if gte mso 9]><xml>
  13. <w:WordDocument>
  14. <w:SpellingState>Clean</w:SpellingState>
  15. <w:GrammarState>Clean</w:GrammarState>
  16. <w:Compatibility>
  17. <w:UseFELayout/>
  18. </w:Compatibility>
  19. <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
  20. </w:WordDocument>
  21. </xml><![endif]-->
  22. <style>
  23. <!--
  24. /* Font Definitions */
  25. @font-face
  26. {font-family:Courier;
  27. panose-1:2 7 4 9 2 2 5 2 4 4;
  28. mso-font-charset:0;
  29. mso-generic-font-family:modern;
  30. mso-font-format:other;
  31. mso-font-pitch:fixed;
  32. mso-font-signature:3 0 0 0 1 0;}
  33. @font-face
  34. {font-family:SimSun;
  35. panose-1:2 1 6 0 3 1 1 1 1 1;
  36. mso-font-alt:SimSun;
  37. mso-font-charset:134;
  38. mso-generic-font-family:auto;
  39. mso-font-pitch:variable;
  40. mso-font-signature:3 135135232 16 0 262145 0;}
  41. @font-face
  42. {font-family:Verdana;
  43. panose-1:2 11 6 4 3 5 4 4 2 4;
  44. mso-font-charset:0;
  45. mso-generic-font-family:swiss;
  46. mso-font-pitch:variable;
  47. mso-font-signature:536871559 0 0 0 415 0;}
  48. @font-face
  49. {font-family:"MS Sans Serif";
  50. mso-font-alt:"Times New Roman";
  51. mso-font-charset:0;
  52. mso-generic-font-family:auto;
  53. mso-font-pitch:auto;
  54. mso-font-signature:0 0 0 0 0 0;}
  55. @font-face
  56. {font-family:SimSun;
  57. panose-1:2 1 6 0 3 1 1 1 1 1;
  58. mso-font-charset:134;
  59. mso-generic-font-family:auto;
  60. mso-font-pitch:variable;
  61. mso-font-signature:3 135135232 16 0 262145 0;}
  62. /* Style Definitions */
  63. p.MsoNormal, li.MsoNormal, div.MsoNormal
  64. {mso-style-parent:"";
  65. margin:0in;
  66. margin-bottom:.0001pt;
  67. mso-pagination:widow-orphan;
  68. font-size:12.0pt;
  69. font-family:"Times New Roman";
  70. mso-fareast-font-family:"Times New Roman";}
  71. h2
  72. {mso-margin-top-alt:auto;
  73. margin-right:0in;
  74. mso-margin-bottom-alt:auto;
  75. margin-left:0in;
  76. mso-pagination:widow-orphan;
  77. mso-outline-level:2;
  78. font-size:18.0pt;
  79. font-family:"Times New Roman";
  80. mso-fareast-font-family:SimSun;
  81. font-weight:bold;}
  82. h3
  83. {mso-margin-top-alt:auto;
  84. margin-right:0in;
  85. mso-margin-bottom-alt:auto;
  86. margin-left:0in;
  87. mso-pagination:widow-orphan;
  88. mso-outline-level:3;
  89. font-size:13.5pt;
  90. font-family:"Times New Roman";
  91. mso-fareast-font-family:SimSun;
  92. font-weight:bold;}
  93. h4
  94. {mso-margin-top-alt:auto;
  95. margin-right:0in;
  96. mso-margin-bottom-alt:auto;
  97. margin-left:0in;
  98. mso-pagination:widow-orphan;
  99. mso-outline-level:4;
  100. font-size:12.0pt;
  101. font-family:"Times New Roman";
  102. mso-fareast-font-family:SimSun;
  103. font-weight:bold;}
  104. p.MsoBodyText, li.MsoBodyText, div.MsoBodyText
  105. {margin:0in;
  106. margin-bottom:.0001pt;
  107. mso-pagination:widow-orphan;
  108. font-size:10.0pt;
  109. font-family:Verdana;
  110. mso-fareast-font-family:"Times New Roman";
  111. mso-bidi-font-family:"Times New Roman";}
  112. a:link, span.MsoHyperlink
  113. {color:blue;
  114. text-decoration:underline;
  115. text-underline:single;}
  116. a:visited, span.MsoHyperlinkFollowed
  117. {color:blue;
  118. text-decoration:underline;
  119. text-underline:single;}
  120. p
  121. {mso-margin-top-alt:auto;
  122. margin-right:0in;
  123. mso-margin-bottom-alt:auto;
  124. margin-left:0in;
  125. mso-pagination:widow-orphan;
  126. font-size:12.0pt;
  127. font-family:"Times New Roman";
  128. mso-fareast-font-family:"Times New Roman";}
  129. pre
  130. {margin:0in;
  131. margin-bottom:.0001pt;
  132. mso-pagination:widow-orphan;
  133. tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;
  134. font-size:10.0pt;
  135. font-family:"Courier New";
  136. mso-fareast-font-family:"Courier New";}
  137. span.SpellE
  138. {mso-style-name:"";
  139. mso-spl-e:yes;}
  140. @page Section1
  141. {size:8.5in 11.0in;
  142. margin:1.0in 1.25in 1.0in 1.25in;
  143. mso-header-margin:.5in;
  144. mso-footer-margin:.5in;
  145. mso-paper-source:0;}
  146. div.Section1
  147. {page:Section1;}
  148. /* List Definitions */
  149. @list l0
  150. {mso-list-id:460344179;
  151. mso-list-type:hybrid;
  152. mso-list-template-ids:1661754128 -1479363788 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
  153. @list l0:level1
  154. {mso-level-tab-stop:.75in;
  155. mso-level-number-position:left;
  156. margin-left:.75in;
  157. text-indent:-.25in;}
  158. @list l0:level2
  159. {mso-level-tab-stop:1.0in;
  160. mso-level-number-position:left;
  161. text-indent:-.25in;}
  162. @list l0:level3
  163. {mso-level-tab-stop:1.5in;
  164. mso-level-number-position:left;
  165. text-indent:-.25in;}
  166. @list l0:level4
  167. {mso-level-tab-stop:2.0in;
  168. mso-level-number-position:left;
  169. text-indent:-.25in;}
  170. @list l0:level5
  171. {mso-level-tab-stop:2.5in;
  172. mso-level-number-position:left;
  173. text-indent:-.25in;}
  174. @list l0:level6
  175. {mso-level-tab-stop:3.0in;
  176. mso-level-number-position:left;
  177. text-indent:-.25in;}
  178. @list l0:level7
  179. {mso-level-tab-stop:3.5in;
  180. mso-level-number-position:left;
  181. text-indent:-.25in;}
  182. @list l0:level8
  183. {mso-level-tab-stop:4.0in;
  184. mso-level-number-position:left;
  185. text-indent:-.25in;}
  186. @list l0:level9
  187. {mso-level-tab-stop:4.5in;
  188. mso-level-number-position:left;
  189. text-indent:-.25in;}
  190. ol
  191. {margin-bottom:0in;}
  192. ul
  193. {margin-bottom:0in;}
  194. -->
  195. </style>
  196. <!--[if gte mso 10]>
  197. <style>
  198. /* Style Definitions */
  199. table.MsoNormalTable
  200. {mso-style-name:"Table Normal";
  201. mso-tstyle-rowband-size:0;
  202. mso-tstyle-colband-size:0;
  203. mso-style-noshow:yes;
  204. mso-style-parent:"";
  205. mso-padding-alt:0in 5.4pt 0in 5.4pt;
  206. mso-para-margin:0in;
  207. mso-para-margin-bottom:.0001pt;
  208. mso-pagination:widow-orphan;
  209. font-size:10.0pt;
  210. font-family:"Times New Roman";}
  211. </style>
  212. <![endif]-->
  213. </head>
  214. <body lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
  215. <div class=Section1>
  216. <h2><span style='font-family:Verdana'>NDIS User mode I/O Protocol<o:p></o:p></span></h2>
  217. <p><span style='font-size:10.0pt;font-family:Arial;color:red'>[This is
  218. preliminary documentation and subject to change.]</span><span style='font-size:
  219. 10.0pt;font-family:Verdana'><o:p></o:p></span></p>
  220. <h3><span style='font-family:Verdana'>SUMMARY<o:p></o:p></span></h3>
  221. <p><span style='font-size:10.0pt;font-family:Verdana'>This sample demonstrates
  222. a connection-less NDIS 5.0/5.1 protocol driver. The driver supports sending and
  223. receiving raw Ethernet frames using ReadFile/WriteFile calls from user-mode. It
  224. only receives frames with a specific (run-time configurable) EtherType field.
  225. As an NDIS protocol, it illustrates how to establish and tear down bindings to
  226. Ethernet adapters, i.e. those that export medium type <i>NdisMedium802_3</i>.
  227. It shows how to set a packet filter, send and receive data, and handle
  228. plug-and-play events. It also shows use of the following NDIS 5.1
  229. features/APIs:<o:p></o:p></span></p>
  230. <p style='margin-left:.75in;text-indent:-.25in;mso-list:l0 level1 lfo2;
  231. tab-stops:list .75in'><![if !supportLists]><span style='font-size:10.0pt;
  232. font-family:Verdana;mso-fareast-font-family:Verdana;mso-bidi-font-family:Verdana'><span
  233. style='mso-list:Ignore'>1.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  234. </span></span></span><![endif]><span style='font-size:10.0pt;font-family:Verdana'>Canceling
  235. sends<o:p></o:p></span></p>
  236. <p style='margin-left:.75in;text-indent:-.25in;mso-list:l0 level1 lfo2;
  237. tab-stops:list .75in'><![if !supportLists]><span style='font-size:10.0pt;
  238. font-family:Verdana;mso-fareast-font-family:Verdana;mso-bidi-font-family:Verdana'><span
  239. style='mso-list:Ignore'>2.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  240. </span></span></span><![endif]><span style='font-size:10.0pt;font-family:Verdana'>NdisQueryPendingIOCount()<o:p></o:p></span></p>
  241. <p><span style='font-size:10.0pt;font-family:Verdana'>The sample works on
  242. Windows 2000, 32-bit and 64-bit platforms, and Windows XP. Both checked and
  243. free builds are available.<o:p></o:p></span></p>
  244. <h3><span style='font-family:Verdana'>BUILDING THE SAMPLE<o:p></o:p></span></h3>
  245. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'>From the
  246. Free or Checked Build environment, execute <b>build</b> in the ndisuio
  247. directory. <o:p></o:p></span></p>
  248. <h3><span style='font-family:Verdana'>INSTALLATION<o:p></o:p></span></h3>
  249. <p><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Verdana'>This
  250. step can be omitted on Windows XP where this driver is installed by default, as
  251. a hidden protocol. <b style='mso-bidi-font-weight:normal'>NOTE </b>that the
  252. functionality present in the in-build version of NDISUIO on Windows XP is
  253. subject to change. Developers should not assume availability of this functionality
  254. for user-mode applications on Windows XP.</span></p>
  255. <p><span style='font-size:10.0pt;font-family:Verdana'>The driver is installed
  256. using the INF file ndisuio.inf, which is provided in the driver directory. In
  257. Network Connections UI, select an adapter and open <b>Properties</b>.<o:p></o:p></span></p>
  258. <p><span style='font-size:10.0pt;font-family:Verdana'>Click <b>Install</b>,
  259. then <b>Protocol</b>, then <b>Add</b>, and then <b>Have disk</b>. Then point to
  260. the location of the .inf and driver.<o:p></o:p></span></p>
  261. <p><span style='font-size:10.0pt;font-family:Verdana'>Select <b>NDIS Usermode
  262. I/O Protocol </b>and click <b>OK</b>. After installing the protocol, copy over
  263. the test application uiotest.exe to a convenient location.<o:p></o:p></span></p>
  264. <h3><span style='font-family:Verdana'>USAGE<o:p></o:p></span></h3>
  265. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'>To start
  266. the driver, type<o:p></o:p></span></p>
  267. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'><span
  268. style='mso-tab-count:1'>��������� </span>Net start ndisuio<o:p></o:p></span></p>
  269. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'><o:p>&nbsp;</o:p></span></p>
  270. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'>To stop
  271. the driver, type<o:p></o:p></span></p>
  272. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'><span
  273. style='mso-tab-count:1'>��������� </span>Net stop ndisuio<o:p></o:p></span></p>
  274. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'><o:p>&nbsp;</o:p></span></p>
  275. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'>To test
  276. the driver, run uiotest. For help on usage, run uiotest -?<o:p></o:p></span></p>
  277. <p class=MsoNormal><span style='font-size:10.0pt;font-family:Verdana'><o:p>&nbsp;</o:p></span></p>
  278. <pre style='margin-left:.5in'>usage: UIOTEST [options] &lt;devicename&gt;</pre><pre
  279. style='margin-left:.5in'>options:</pre><pre style='margin-left:.5in'><span style='mso-spacerun:yes'>������ </span>-e: Enumerate devices</pre><pre
  280. style='margin-left:.5in'><span style='mso-spacerun:yes'>������ </span>-r: Read</pre><pre
  281. style='margin-left:.5in'><span style='mso-spacerun:yes'>������ </span>-w: Write (default)</pre><pre
  282. style='margin-left:.5in'><span style='mso-spacerun:yes'>������ </span>-l &lt;length&gt;: length of each packet (default: 100)</pre><pre
  283. style='margin-left:.5in'><span style='mso-spacerun:yes'>������ </span>-n &lt;count&gt;: number of packets (defaults to infinity)</pre><pre
  284. style='margin-left:.5in'><span style='mso-spacerun:yes'>������ </span>-m &lt;MAC address&gt; (defaults to local MAC)</pre>
  285. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  286. style='font-size:10.0pt;font-family:Verdana'><o:p>&nbsp;</o:p></span></p>
  287. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  288. style='font-size:10.0pt;font-family:Verdana'>Uiotest exercises the IOCTLs
  289. supported by NDISUIO, and sends and/or receives data on the selected device. In
  290. order to use uiotest, the user must have administrative privilege. Users should
  291. pass down a big enough buffer in order to receive the entire received data. If
  292. the length of the buffer passed down is smaller than the length of the received
  293. data, NDISUIO will only copy part of the data and discard the rest when the
  294. given buffer is full.<o:p></o:p></span></p>
  295. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  296. style='font-size:10.0pt;font-family:Verdana'><o:p>&nbsp;</o:p></span></p>
  297. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><b
  298. style='mso-bidi-font-weight:normal'><span style='font-size:10.0pt;font-family:
  299. Verdana'>NOTE</span></b><span style='font-size:10.0pt;font-family:Verdana'>: On
  300. Windows XP, <span class=SpellE>uiotest</span> may fail to access devices since
  301. other processes could have open handles to NDISUIO for those devices. To work
  302. around this, stop and restart NDISUIO as shown above. You will be prompted to
  303. stop services that depend on NDISUIO as well.<o:p></o:p></span></p>
  304. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  305. style='font-size:10.0pt;font-family:Verdana'><o:p>&nbsp;</o:p></span></p>
  306. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  307. style='font-size:10.0pt;font-family:Verdana'>Use the �e option to enumerate all
  308. devices to which NDISUIO is bound:<o:p></o:p></span></p>
  309. <pre style='margin-left:.5in'>C:\uio&gt;uiotest -e</pre><pre style='margin-left:
  310. .5in'> 0. \DEVICE\{9273DA7D-5275-4B9A-AC56-68A49D121F1F}</pre><pre
  311. style='margin-left:.5in'><span style='mso-spacerun:yes'>���� </span>- Intel-Based 10/100 Ethernet Card</pre>
  312. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  313. style='font-size:10.0pt;font-family:Verdana'><o:p>&nbsp;</o:p></span></p>
  314. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  315. style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Verdana'>The
  316. following command sends and receives 2 packets on a device</span><span
  317. style='font-size:10.0pt;font-family:Verdana'>). Since these packets are sent to
  318. the local MAC address (default), both packets are received.</span><span
  319. style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Verdana'> The
  320. device name parameter to uiotest is picked up from the output of uiotest �e
  321. (see above).<o:p></o:p></span></p>
  322. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  323. style='font-size:10.0pt;font-family:Verdana'><o:p>&nbsp;</o:p></span></p>
  324. <pre style='margin-left:.5in'>C:\uio&gt;uiotest -n 2 \DEVICE\{9273DA7D-5275-4B9A-AC56-68A49D121F1F}</pre><pre
  325. style='margin-left:.5in'>DoWriteProc: finished sending 2 packets of 100 bytes each</pre><pre
  326. style='margin-left:.5in'>DoReadProc finished: read 2 packets</pre>
  327. <h3 style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  328. style='font-family:Verdana'>TIPS<o:p></o:p></span></h3>
  329. <p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  330. style='font-size:10.0pt;font-family:Verdana'>With a checked version of
  331. ndisuio.sys, you can control the volume of debug information generated by
  332. changing the variable ndisuioDebugLevel. Refer to debug.h for more information.
  333. <o:p></o:p></span></p>
  334. <h3 style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  335. style='font-family:Verdana'>CODE TOUR<o:p></o:p></span></h3>
  336. <h4 style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  337. style='font-family:Verdana'>File Manifest<o:p></o:p></span></h4>
  338. <pre><b><span style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>Directory: Test</span></b><span
  339. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><br
  340. style='mso-special-character:line-break'>
  341. <![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
  342. <![endif]><o:p></o:p></span></pre><pre><span style='font-size:9.0pt;mso-bidi-font-size:
  343. 7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  344. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  345. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  346. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  347. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><u><span
  348. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>File</span></u><span
  349. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><span
  350. style='mso-tab-count:2'>������������ </span><u>Description</u><span
  351. style='mso-tab-count:1'>����� </span><o:p></o:p></span></pre><pre><span
  352. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>uiotest.c<span
  353. style='mso-tab-count:1'>������� </span>User-mode test application<o:p></o:p></span></pre><pre><span
  354. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  355. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><b><span
  356. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>Directory: Sys</span></b><span
  357. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><br
  358. style='mso-special-character:line-break'>
  359. <![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
  360. <![endif]><o:p></o:p></span></pre><pre><span style='font-size:9.0pt;mso-bidi-font-size:
  361. 7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  362. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  363. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  364. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><span
  365. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre><pre><u><span
  366. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>File</span></u><span
  367. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'><span
  368. style='mso-tab-count:2'>������������ </span><u>Description</u><span
  369. style='mso-tab-count:1'>����� </span><o:p></o:p></span></pre><pre><span
  370. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>debug.c<span
  371. style='mso-tab-count:2'>��������� </span>Routines to aid debugging<o:p></o:p></span></pre><pre><span
  372. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>debug.h<span
  373. style='mso-tab-count:2'>��������� </span>Debug macro definitions<o:p></o:p></span></pre><pre><span
  374. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>macros.h<span
  375. style='mso-tab-count:2'>�������� </span>Spinlock, event, referencing macros<o:p></o:p></span></pre><pre><span
  376. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>ndisbind.c<span
  377. style='mso-tab-count:1'>������ </span>NDIS protocol entry points to handle binding/unbinding from adapters<o:p></o:p></span></pre><pre><span
  378. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>ndisuio.h<span
  379. style='mso-tab-count:1'>������� </span>Data structure definitions<o:p></o:p></span></pre><pre><span
  380. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>ndisuio.inf<span
  381. style='mso-tab-count:1'>����� </span>INF file for installing NDISUIO<o:p></o:p></span></pre><pre><span
  382. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>ntdisp.c<span
  383. style='mso-tab-count:2'>�������� </span>NT Entry points and dispatch routines for NDISUIO<o:p></o:p></span></pre><pre><span
  384. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>nuiouser.h<span
  385. style='mso-tab-count:1'>������ </span>IOCTL and associated structure definitions<o:p></o:p></span></pre><pre><span
  386. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>recv.c<span
  387. style='mso-tab-count:2'>���������� </span>NDIS protocol entry points for receiving data, and IRP_MJ_READ processing<o:p></o:p></span></pre><pre><span
  388. style='font-size:9.0pt;mso-bidi-font-size:7.5pt;font-family:Courier'>send.c<span
  389. style='mso-tab-count:2'>���������� </span>NDIS protocol routines for sending data, and IRP_MJ_WRITE processing<o:p></o:p></span></pre><pre><span
  390. style='font-size:7.5pt;font-family:Courier'><o:p>&nbsp;</o:p></span></pre>
  391. <p align=center style='text-align:center;tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  392. style='font-size:10.0pt;font-family:Verdana'><a href="#top">Top of page</a> <o:p></o:p></span></p>
  393. <table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0 width=624
  394. style='width:6.5in;mso-cellspacing:0in;mso-padding-alt:0in 0in 0in 0in'>
  395. <tr style='mso-yfti-irow:0;mso-yfti-lastrow:yes;height:1.5pt'>
  396. <td style='background:aqua;padding:.75pt .75pt .75pt .75pt;height:1.5pt'>
  397. <p class=MsoNormal><o:p>&nbsp;</o:p></p>
  398. </td>
  399. </tr>
  400. </table>
  401. <p style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  402. style='font-size:7.5pt;font-family:"MS Sans Serif"'>� Microsoft Corporation
  403. 2000</span><span style='font-size:10.0pt;font-family:Verdana'> <o:p></o:p></span></p>
  404. </div>
  405. </body>
  406. </html>