NDIS_PORT_CHARACTERISTICS结构(ntddndis.h)

NDIS_PORT_CHARACTERISTICS 结构指定 NDIS 端口的特征。 有关 NDIS 端口的详细信息,请参阅 NDIS 端口

语法

typedef struct _NDIS_PORT_CHARACTERISTICS {
  NDIS_OBJECT_HEADER            Header;
  NDIS_PORT_NUMBER              PortNumber;
  ULONG                         Flags;
  NDIS_PORT_TYPE                Type;
  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;
} NDIS_PORT_CHARACTERISTICS, *PNDIS_PORT_CHARACTERISTICS;

成员

Header

NDIS_PORT_CHARACTERISTICS 结构的 NDIS_OBJECT_HEADER 结构。 将 标头 指定为NDIS_OBJECT_TYPE_DEFAULT的结构 类型 成员,将 修订 成员设置为NDIS_PORT_CHARACTERISTICS_REVISION_1,并将 大小 成员设置为NDIS_SIZEOF_PORT_CHARACTERISTICS_REVISION_1。

PortNumber

与此 NDIS_PORT_CHARACTERISTICS 结构关联的 NDIS 端口数。 PortNumber 值是一个NDIS_PORT_NUMBER值,其数据类型为 ULONG,并且从零到 0xffffff 有效,其中为默认端口保留零。

Flags

端口特征标志的按位 OR 组合,如果未设置任何标志,则为零。 当前有一个标志。

如果设置了NDIS_PORT_CHAR_USE_DEFAULT_AUTH_SETTINGS标志,NDIS 将忽略身份验证状态设置,并改用默认身份验证状态。 微型端口驱动程序可以使用此标志来请求 NDIS 使用它分配和激活的端口的默认身份验证状态设置。 如果微型端口驱动程序控制默认端口,当微型端口驱动程序激活默认端口时,驱动程序可以设置NDIS_PORT_CHAR_USE_DEFAULT_AUTH_SETTINGS以使用默认身份验证状态设置激活默认端口。

Type

NDIS 端口的类型。 有关详细信息,请参阅 类型 NDIS 端口。 此类型可以是以下值之一:

NdisPortTypeUndefined

默认端口类型。

NdisPortTypeBridge

保留供系统使用。

NdisPortTypeRasConnection

远程访问服务 (RAS) 连接。

NdisPortType8021xSupplicant

与此主计算机上的接入点关联的远程无线工作站。

NdisPortTypeNdisImPlatform

保留供系统使用。

注意 此值仅在 NDIS 6.30 及更高版本中受支持。
 

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

端口处于接收作(即端口需要授权)的受控状态,SendAuthorizationState 成员中的值决定了身份验证状态。

NdisPortControlStateUncontrolled

端口处于未控制状态,用于接收作。 因此,身份验证不适用于此端口。

SendAuthorizationState

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

SendAuthorizationState 必须包含以下值之一:

NdisPortAuthorizationUnknown

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

NdisPortAuthorized

端口已授权用于发送作。

NdisPortUnauthorized

端口无权用于发送作。

NdisPortReauthorizing

端口重新授权用于发送作。

RcvAuthorizationState

用于接收作的端口的授权状态。 如果 RcvControlState 成员设置为 NdisPortControlStateUncontrolled,则忽略此成员。

RcvAuthorizationState 必须包含以下值之一:

NdisPortAuthorizationUnknown

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

NdisPortAuthorized

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

NdisPortUnauthorized

该端口无权用于接收作。

NdisPortReauthorizing

端口重新授权用于接收作。

言论

NDIS_PORT_CHARACTERISTICS 结构指定 NDIS 端口的特征。 此结构显示在与 OID_GEN_ENUMERATE_PORTS OID 一起使用的 NDIS_PORT_ARRAY 结构中提供的端口特征列表中。

若要分配 NDIS 端口,驱动程序初始化 NDIS_PORT_CHARACTERISTICS 结构,并将其传递给 NdisMAllocatePort 函数。 NdisMAllocatePort 成功返回时,NDIS 会将 NDIS_PORT_CHARACTERISTICSPortNumber 成员设置为分配给该端口的 NDIS 的端口号。

NDIS 使用端口激活即插即用 (PnP) 事件中的端口链接列表。 NDIS 使用 NDIS_PORT 结构创建端口链接列表,每个 NDIS_PORT 结构都包含一个 NDIS_PORT_CHARACTERISTICS 结构。

要求

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

另请参阅

NDIS 端口

NDIS_OBJECT_HEADER

NDIS_PORT

NDIS_PORT_ARRAY

NET_IF_DIRECTION_TYPE

NdisMAllocatePort

OID_GEN_ENUMERATE_PORTS

OID_GEN_MEDIA_CONNECT_STATUS_EX

的 NDIS 端口 类型