REMOTE_NDIS_INDICATE_STATUS_MSG

This message is sent from a Remote NDIS device to a host to indicate a change in the status of the device. A REMOTE_NDIS_INDICATE_STATUS_MSG message can also be used to indicate an error event, such as an unrecognized message. The Remote NDIS device may send this message at any time that it is in a state initialized by Remote NDIS. There is no response to this message.

Offset Size Field Description

0

4

MessageType

Specifies the type of message being sent. Set to 0x00000007.

4

4

MessageLength

Specifies, in bytes, the total length of this message, from the beginning of the message.

8

4

Status

Specifies the current status of the host request.

12

4

StatusBufferLength

Specifies the length of the status data, in bytes.

16

4

StatusBufferOffset

Specifies the byte offset, from the beginning of this message, at which Rndis_Diagnostic_Info status data for the device indication is located.

 

Remarks

The most common use of REMOTE_NDIS_INDICATE_STATUS_MSG is to indicate the state of the link for an 802.3 device. A status value of RNDIS_STATUS_MEDIA_CONNECT indicates a transition from disconnected (for example no 802.3 link pulse) to connected state (802.3 link pulse detected). A status value of RNDIS_STATUS_MEDIA_DISCONNECT indicates a transition from connected to disconnected state. The device must send REMOTE_NDIS_INDICATE_STATUS_MSG with one of these values every time the 802.3 link state changes. No status buffer is required to return these two common indications.

In the specific case where this message is sent in response to a host message that the device could not handle, the Status field must be set to RNDIS_STATUS_INVALID_DATA, and the Rndis_Diagnostic_Info status buffer is formatted as follows.

Offset Size Field Description

0

4

DiagStatus

Contains status information about the error itself (for example, RNDIS_STATUS_NOT_SUPPORTED)

4

4

ErrorOffset

Specifies the zero-based byte offset in the original message at which the error was detected.

 

If the error condition was caused by an Remote NDIS message (for example, the device can't recognize a particular RNDIS message), then the device should append the original message at the end of the status message defined above.

This message is used to report an error condition only in circumstances where the device is not able to generate a response message with appropriate status. Examples of appropriate usage are:

  • On receiving a message with unsupported message type.

  • On receiving a REMOTE_NDIS_PACKET_MSG with unacceptable contents.

Requirements

Version

Available in Microsoft Windows XP and later versions of the Windows operating systems. Also available in Windows 2000 as redistributable binaries.

Header

Rndis.h (include Rndis.h)

 

 

Send comments about this topic to Microsoft