NDIS_PORT_STATE 结构 (ntddndis.h)

NDIS_PORT_STATE 结构指定 NDIS 端口的端口状态信息。

语法

typedef struct _NDIS_PORT_STATE {
  NDIS_OBJECT_HEADER            Header;
  NDIS_MEDIA_CONNECT_STATE      MediaConnectState;
  ULONG64                       XmitLinkSpeed;
  ULONG64                       RcvLinkSpeed;
  NET_IF_DIRECTION_TYPE         Direction;
  NDIS_PORT_CONTROL_STATE       SendControlState;
  NDIS_PORT_CONTROL_STATE       RcvControlState;
  NDIS_PORT_AUTHORIZATION_STATE SendAuthorizationState;
  NDIS_PORT_AUTHORIZATION_STATE RcvAuthorizationState;
  ULONG                         Flags;
} NDIS_PORT_STATE, *PNDIS_PORT_STATE;

成员

Header

NDIS_PORT_STATE 结构的NDIS_OBJECT_HEADER结构。 将 Header 指定的结构的 Type 成员设置为 NDIS_OBJECT_TYPE_ DEFAULT,将 Revision 成员设置为 NDIS_PORT_STATE_REVISION_1,将 Size 成员设置为 NDIS_SIZEOF_PORT_STATE_REVISION_1。

MediaConnectState

端口的媒体连接状态。 此状态与 OID_GEN_MEDIA_CONNECT_STATUS_EX OID 返回。

XmitLinkSpeed

端口的传输链路速度(以位/秒为单位)。 此成员中的值 -1 表示传输链接速度未知。

RcvLinkSpeed

端口的接收链接速度(以位/秒为单位)。 此成员中的值 -1 表示接收链接速度未知。

Direction

NET_IF_DIRECTION_TYPE NDIS 网络接口方向类型。

SendControlState

发送操作的端口的当前控制状态。 此成员必须包含以下值之一:

NdisPortControlStateUnknown

端口的发送操作控制状态未知。

NdisPortControlStateControlled

对于发送操作,端口处于受控状态。 也就是说,端口需要授权。

NdisPortControlStateUncontrolled

对于发送操作,端口处于不受控制状态。 也就是说,端口不需要授权。

RcvControlState

接收操作的端口的当前控制状态。 此成员必须包含以下值之一:

NdisPortControlStateUnknown

端口对接收操作的控制状态未知。

NdisPortControlStateControlled

端口处于受控状态,用于接收操作。 也就是说,端口需要授权。

NdisPortControlStateUncontrolled

对于接收操作,端口处于不受控制状态。 也就是说,端口不需要授权。

SendAuthorizationState

发送操作的端口的当前授权状态。 如果 SendControlState 成员设置为 NdisPortControlStateUncontrolled,请忽略此成员。

SendAuthorizationState 必须包含以下值之一:

NdisPortAuthorizationUnknown

端口的发送操作授权状态未知。

NdisPortAuthorized

该端口已获得发送操作的授权。

NdisPortUnauthorized

端口无权执行发送操作。

NdisPortReauthorizing

端口正在重新授权发送操作。

RcvAuthorizationState

接收操作的端口的当前授权状态。 如果 RcvControlState 成员设置为 NdisPortControlStateUncontrolled,请忽略此成员。

RcvAuthorizationState 必须包含以下值之一:

NdisPortAuthorizationUnknown

端口的接收操作的授权状态未知。

NdisPortAuthorized

该端口已获得接收操作的授权。

NdisPortUnauthorized

端口无权执行接收操作。

NdisPortReauthorizing

端口正在为接收操作重新授权。

Flags

保留给 NDIS。

注解

NDIS_PORT_STATE 结构用于 NDIS_STATUS_PORT_STATE 状态指示端口的状态更改,并用于响应 OID_GEN_PORT_STATE OID 查询。

要求

要求
最低受支持的客户端 在 NDIS 6.0 及更高版本中受支持。
标头 ntddndis.h (包括 Ndis.h)

另请参阅

NDIS_OBJECT_HEADER

NDIS_STATUS_PORT_STATE

NET_IF_DIRECTION_TYPE

OID_GEN_MEDIA_CONNECT_STATUS_EX

OID_GEN_PORT_STATE