![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IXP425 USB RNDIS Codelet (IxUSBRNDIS) APIIXP425 codelet USB RNDIS API.
More... |
Modules | |
IXP425 USB RNDIS End Driver Codelet (IxUSBRNDIS) API | |
IXP425 codelet for RNDIS End API. | |
IXP425 USB RNDIS Vendor Codelet (IxUSBRNDIS) | |
IXP425 codelet for RNDIS Vendor information. | |
Functions | |
PUBLIC IX_STATUS | ixUSBRNDISSignalEncapsulatedCommand (void) |
Function prototype for signalling encapsulation command. | |
PUBLIC IX_STATUS | ixUSBRNDISProcessEncapsulatedCommand (IX_USB_MBLK *) |
Function prototype for processing encapsulation command. | |
PUBLIC IX_STATUS | ixUSBRNDISProcessDataPacket (IX_USB_MBLK *) |
Function prototype for processing data packet. | |
PUBLIC IX_STATUS | ixUSBRNDISLayerInit (void *pDrvCtrl) |
Function prototype for layer initialization. | |
PUBLIC IX_STATUS | ixUSBRNDISInit (void) |
Function prototype for initializing RNDIS. | |
PUBLIC void | ixUSBRNDISUnload (void) |
Function prototype for releasing the I/O memory and disconnecting the interrupt. | |
PUBLIC IX_USB_MBLK * | ixUSBRNDISCreateMBuf (UINT8 *buffer, UINT32 len) |
Function prototype for creating MBufs. | |
PUBLIC IX_STATUS | ixUSBRNDISSendDataPacket (RNDIS_BUF *packet) |
Function prototype for sending data packet. It is the hook for the RNDIS END. | |
void | ixUSBRNDISIpHdrDump (const char *const mData) |
const char * | ixUSBRNDISIpProtoStrGet (const UINT8 ipProto) |
const char * | ixUSBRNDISEthernetTypeStrGet (const UINT16 etherType) |
void | ixUSBRNDISEthernetHdrDump (const char *const mData, BOOL *nonIpHdrDetected) |
How to use the USB RNDIS codelet:
You should see the "usb" network interface in the output generated by the ifShow command.
Plug the board into the USB port of a Windows 98/ME/2000 machine and selected the driver provided with the codelet when queried for it.
Note:
Currently the END MAC address is 00:00:00:00:00:02 and the RNDIS MAC address is 00:00:00:00:00:01. The IP address of the END is 192.168.1.1, therefore you should use a compatible address for the RNDIS controller on the Windows side (such as 192.168.1.2) and set the END IP address as gateway address for the RNDIS network device, or change them to suitable values.
The codelet was tested with Windows 2000 only, and telnet and ftp traffic was passed by routing the PC through the IXP425 into a network.
Warning: this codelet is for demonstration purposes only, it should not be considered a fully working application.
|
Function prototype for creating MBufs.
|
|
Function prototype for initializing RNDIS.
|
|
Function prototype for layer initialization.
|
|
Function prototype for processing data packet.
|
|
Function prototype for processing encapsulation command.
|
|
Function prototype for sending data packet. It is the hook for the RNDIS END.
|
|
Function prototype for signalling encapsulation command.
|
|
Function prototype for releasing the I/O memory and disconnecting the interrupt.
|