summaryrefslogtreecommitdiff
path: root/network/ndis/ndisprot
diff options
context:
space:
mode:
authorBarry Golden <[email protected]>2015-07-30 16:03:24 -0700
committerBarry Golden <[email protected]>2015-07-30 16:03:24 -0700
commit4dc90ad04d5e40851e2e370f487b7cc9a3be071b (patch)
treec2e74dd18a743893c555d311f29ad9fba77b60c6 /network/ndis/ndisprot
parentd3abcb10a801986a2956d6bbdfeb652bda1d9a74 (diff)
Update README.md
Diffstat (limited to 'network/ndis/ndisprot')
-rw-r--r--network/ndis/ndisprot/6x/ReadMe.md73
1 files changed, 26 insertions, 47 deletions
diff --git a/network/ndis/ndisprot/6x/ReadMe.md b/network/ndis/ndisprot/6x/ReadMe.md
index 63e3a5ec..cdf35d7c 100644
--- a/network/ndis/ndisprot/6x/ReadMe.md
+++ b/network/ndis/ndisprot/6x/ReadMe.md
@@ -3,9 +3,7 @@ NDIS Connection-less Protocol Driver Sample
This sample demonstrates a connection-less NDIS 6.0 protocol.The driver supports sending and receiving raw Ethernet frames using `ReadFile`/`WriteFile` calls from user-mode. It only receives frames with a specific EtherType field. As an NDIS protocol, it illustrates how to establish and tear down bindings to Ethernet adapters, i.e. those that export medium type **NdisMedium802\_3**. It shows how to set a packet filter, send and receive data, and handle plug-and-play events.
-
-INSTALLATION
-------------
+### INSTALLATION
The driver is installed using the INF file ndisprot.inf, which is provided in the driver directory. In Network Connections UI, select an adapter and open **Properties.**
@@ -13,8 +11,7 @@ Click **Install**, then **Protocol**, then **Add**, and then **Have disk**. Then
Select **Sample NDIS Protocol Driver** and click **OK**. After installing the protocol, copy over the test application prottest.exe to a convenient location. Please note that the driver service has been set to manual start in the INF file. As a result, it doesn't get loaded automatically when you install.
-Usage
------
+### Usage
To start the driver, type **Net start ndisprot**.
@@ -22,24 +19,16 @@ To stop the driver, type **Net stop ndisprot**.
To test the driver, run **prottest**. For help on usage, run **prottest -?**
-**usage: PROTTEST [options] \<devicename\>**
-
-**options:**
+**usage: PROTTEST [options] \\*devicename***
-<table>
-<colgroup>
-<col width="50%" />
-<col width="50%" />
-</colgroup>
-<tbody>
-<tr class="odd">
-<td align="left">-e
-Enumerate devices</td>
-<td align="left">-r
-Read</td>
-</tr>
-</tbody>
-</table>
+options | Description
+----------|------------
+-e | Enumerate devices
+-r | Read
+-w | Write (default)
+-l | <length>: length of each packet (default: 100)
+-n | <count>: number of packets (defaults to infinity)
+-m | <MAC address> (defaults to local MAC)
Prottest exercises the IOCTLs supported by NDISPROT, and sends and/or receives data on the selected device. In order to use prottest, the user must have administrative privilege. Users should pass down a big enough buffer in order to receive the entire received data. If the length of the buffer passed down is smaller than the length of the received data, NDISPROT will only copy part of the data and discard the rest when the given buffer is full.
@@ -51,34 +40,24 @@ Use the **–e** option to enumerate all devices to which NDISPROT is bound:
**DoReadProc finished: read 2 packets**
-**Note**  
-
-With a checked version of ndisprot.sys, you can control the volume of debug information generated by changing the variable `ndisprotDebugLevel`. Refer to debug.h for more information.
+**Note**  With a checked version of ndisprot.sys, you can control the volume of debug information generated by changing the variable `ndisprotDebugLevel`. Refer to debug.h for more information.
For more information, see [NDIS Protocol Drivers](http://msdn.microsoft.com/en-us/library/windows/hardware/ff566821) in the network devices design guide.
-File Manifest
--------------
+### File Manifest
-<table>
-<colgroup>
-<col width="50%" />
-<col width="50%" />
-</colgroup>
-<thead>
-<tr class="header">
-<th align="left">File
-Description</th>
-</tr>
-</thead>
-<tbody>
-<tr class="odd">
-<td align="left">prottest.c
-User-mode test application</td>
-<td align="left">debug.c
-Routines to aid debugging</td>
-</tr>
-</tbody>
-</table>
+File | Description
+-----|------------
+prottest.c | User-mode test application
+debug.c | Routines to aid debugging
+debug.h | Debug macro definitions
+macros.h | Spinlock, event, referencing macros
+ndisbind.c | NDIS protocol entry points to handle binding/unbinding from adapters
+ndisprot.h | Data structure definitions
+ndisprot.inf | INF file for installing NDISPROT
+ntdisp.c | NT Entry points and dispatch routines for NDISPROT
+protuser.h | IOCTL and associated structure definitions
+recv.c | NDIS protocol entry points for receiving data, and IRP_MJ_READ processing
+send.c | NDIS protocol routines for sending data, and IRP_MJ_WRITE processing