NDIS_STATUS_LINK_STATE
Miniport drivers use the NDIS_STATUS_LINK_STATE status indication to notify NDIS and overlying drivers that there has been a change in the physical characteristics of a medium.
Remarks
Overlying drivers should not use the OID_GEN_LINK_STATE OID to determine the link state. Instead, use the NDIS_STATUS_LINK_STATE status indication for link state updates.
The StatusBuffer member of the NDIS_STATUS_INDICATION structure contains the NDIS_LINK_STATE structure. This structure specifies the physical state of the medium.
Miniport drivers should avoid sending the NDIS_STATUS_LINK_STATE status indication if there have been no changes in the physical state of the medium. However, avoiding this status indication is not a requirement.
If a miniport adapter transitions to a low power state, NDIS 6.0 and later miniport drivers should indicate a connection status of MediaConnectStateUnknown. When the miniport adapter transitions back to the working power state, the miniport driver should indicate a status of MediaConnectStateConnected after the link has been re-established. NDIS 6.30 miniport drivers should indicate MediaConnectStateUnknown during a low power transition only when a wake on link change and selective suspend are disabled. In other words, a miniport driver must indicate a connection state of MediaConnectStateUnknown during a low power transition, if it is impossible to detect and wake on a connection state change from a low power state.
NDIS might not pass a status indication to overlying drivers if there are no changes in the link state as specified in the previously indicated link state. However, this behavior is not guaranteed. Overlying drivers that receive this status indication must determine which characteristics of the medium, if any, have changed.
If an overlying driver is an NDIS 5.x or earlier protocol driver, NDIS translates the NDIS_STATUS_LINK_STATE status indication to appropriate NDIS 5.1 status indications. NDIS indicates link speed changes with the NDIS_STATUS_LINK_SPEED_CHANGE status indication. NDIS indicates changes in the connection state with NDIS_STATUS_MEDIA_CONNECT and NDIS_STATUS_MEDIA_DISCONNECT status indications.
NDIS also translates the NDIS 5.x miniport driver status for overlying NDIS 6.0 and later drivers. NDIS uses status indications or media state changes that NDIS identified in an NDIS 5.x OID query to create NDIS_STATUS_LINK_STATE status indications. NDIS performs the following translations:
The NDIS_STATUS_MEDIA_CONNECT status indication is translated to MediaConnectStateConnected in the NDIS_LINK_STATE structure.
The NDIS_STATUS_MEDIA_DISCONNECT status indication is translated to MediaConnectStateDisconnected in the NDIS_LINK_STATE structure.
The NDIS_STATUS_LINK_SPEED_CHANGE status indication and the OID_GEN_LINK_SPEED OID are used to generate the link speed status.
For more information about link status, see OID_GEN_LINK_STATE.
Requirements
Version |
Supported in NDIS 6.0 and later. |
Header |
Ndis.h (include Ndis.h) |