NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 구조체(ndis.h)
NDIS 미니포트 드라이버는 미니포트 어댑터와 연결된 일반 미니포트 드라이버 특성을 정의하는 NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 구조를 설정합니다.
통사론
typedef struct _NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
NDIS_MEDIUM MediaType;
NDIS_PHYSICAL_MEDIUM PhysicalMediumType;
ULONG MtuSize;
ULONG64 MaxXmitLinkSpeed;
ULONG64 XmitLinkSpeed;
ULONG64 MaxRcvLinkSpeed;
ULONG64 RcvLinkSpeed;
NDIS_MEDIA_CONNECT_STATE MediaConnectState;
NDIS_MEDIA_DUPLEX_STATE MediaDuplexState;
ULONG LookaheadSize;
PNDIS_PNP_CAPABILITIES PowerManagementCapabilities;
ULONG MacOptions;
ULONG SupportedPacketFilters;
ULONG MaxMulticastListSize;
USHORT MacAddressLength;
UCHAR PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
UCHAR CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
PNDIS_RECEIVE_SCALE_CAPABILITIES RecvScaleCapabilities;
NET_IF_ACCESS_TYPE AccessType;
NET_IF_DIRECTION_TYPE DirectionType;
NET_IF_CONNECTION_TYPE ConnectionType;
NET_IFTYPE IfType;
BOOLEAN IfConnectorPresent;
ULONG SupportedStatistics;
ULONG SupportedPauseFunctions;
ULONG DataBackFillSize;
ULONG ContextBackFillSize;
PNDIS_OID SupportedOidList;
ULONG SupportedOidListLength;
ULONG AutoNegotiationFlags;
PNDIS_PM_CAPABILITIES PowerManagementCapabilitiesEx;
} NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES, *PNDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES;
회원
Header
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 구조체의 NDIS_OBJECT_HEADER 구조체입니다. Header 지정하는 구조체의 Type 멤버를 NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES설정합니다.
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 구조체의 버전을 나타내려면 Revision 멤버를 다음 값 중 하나로 설정합니다.
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_2
NDIS 6.2에 대한 PowerManagementCapabilitiesEx 멤버가 추가되었습니다.
Size 멤버를 NDIS_SIZEOF_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_2설정합니다.
NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_1
NDIS 6.0 및 NDIS 6,1의 원래 버전입니다.
Size 멤버를 NDIS_SIZEOF_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES_REVISION_1설정합니다.
Flags
NDIS용으로 예약되었습니다.
MediaType
미니포트 어댑터가 지원하는 NdisMediumXxx 형식입니다. 자세한 내용은 NDIS_MEDIUM참조하세요.
PhysicalMediumType
미니포트 어댑터의 실제 중간 유형입니다. 자세한 내용은 OID_GEN_PHYSICAL_MEDIUM 참조하세요.
MtuSize
MTU(최대 전송 단위) 크기입니다. 자세한 내용은 OID_GEN_MAXIMUM_FRAME_SIZE참조하세요.
MaxXmitLinkSpeed
어댑터의 최대 전송 링크 속도(초당 비트)입니다. 자세한 내용은 OID_GEN_MAX_LINK_SPEED참조하세요.
XmitLinkSpeed
어댑터의 현재 전송 링크 속도(초당 비트)입니다. 자세한 내용은 OID_GEN_LINK_SPEED_EX참조하세요.
MaxRcvLinkSpeed
어댑터의 최대 수신 링크 속도(초당 비트)입니다. 자세한 내용은 OID_GEN_MAX_LINK_SPEED참조하세요.
RcvLinkSpeed
어댑터의 현재 수신 링크 속도(초당 비트)입니다. 자세한 내용은 OID_GEN_LINK_SPEED_EX참조하세요.
MediaConnectState
미니포트 어댑터의 미디어 연결 상태입니다. 자세한 내용은 다음을 참조하세요. OID_GEN_MEDIA_CONNECT_STATUS_EX.
MediaDuplexState
미니포트 어댑터의 미디어 이중 상태입니다. 자세한 내용은 OID_GEN_MEDIA_DUPLEX_STATE참조하세요.
LookaheadSize
미니포트 어댑터의 lookahead 크기입니다. 자세한 내용은 OID_GEN_CURRENT_LOOKAHEAD참조하세요.
PowerManagementCapabilities
미니포트 어댑터의 PnP(플러그 앤 플레이) 기능입니다. PnP 기능에 대한 자세한 내용은 OID_PNP_CAPABILITIES참조하세요. 미니포트 어댑터가 전원 관리를 인식하지 못하는 경우 미니포트 드라이버는 PowerManagementCapabilities NULL 설정해야 합니다. NDIS 6.20 이상 드라이버는 PowerManagementCapabilitiesEx 멤버를 대신 사용해야 합니다.
MacOptions
미니포트 어댑터에 대한 MAC 옵션입니다. 자세한 내용은 OID_GEN_MAC_OPTIONS참조하세요.
SupportedPacketFilters
미니포트 어댑터의 패킷 필터 플래그입니다.
MaxMulticastListSize
미니포트 어댑터의 멀티캐스트 주소 목록 크기입니다. 자세한 내용은 다음을 참조하세요. OID_802_3_MAXIMUM_LIST_SIZE.
MacAddressLength
MAC 주소 길이(바이트)입니다. MAC 주소 길이는 미디어 유형에 따라 다릅니다.
PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
영구 MAC 주소입니다. 예를 들어 OID_802_3_PERMANENT_ADDRESS OID는 IEEE 802.3 드라이버에 대한 영구 MAC 주소를 지정합니다.
CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
현재 MAC 주소입니다. 예를 들어 OID_802_3_CURRENT_ADDRESS OID는 IEEE 802.3 드라이버의 현재 MAC 주소를 지정합니다.
RecvScaleCapabilities
NIC의 RSS(수신측 크기 조정) 기능입니다. 미니포트 어댑터가 RSS 기능을 지원하지 않는 경우 RecvScaleCapabilities NULL 설정합니다. RSS에 대한 자세한 내용은 OID_GEN_RECEIVE_SCALE_CAPABILITIES.
AccessType
NET_IF_ACCESS_TYPE NDIS 네트워크 인터페이스 액세스 유형입니다.
DirectionType
NET_IF_DIRECTION_TYPE NDIS 네트워크 인터페이스 방향 형식입니다.
ConnectionType
NET_IF_CONNECTION_TYPE NDIS 네트워크 인터페이스 연결 형식입니다.
IfType
IANA(Internet Assigned Numbers Authority) 인터페이스 형식입니다. 예를 들어 IF_TYPE_ETHERNET_CSMACD(6)는 이더넷과 유사한 인터페이스에 할당된 IfType 값입니다. 인터페이스 형식인 경우 목록은 NDIS 인터페이스 형식참조하세요.
IfConnectorPresent
커넥터가 있는지 여부를 나타내는 부울 값입니다. 실제 어댑터가 있는 경우 이 값을 TRUE 설정합니다.
SupportedStatistics
지원되는 통계입니다.
NDIS_STATISTICS_DIRECTED_FRAMES_RCV_SUPPORTED
데이터가 유효한 경우HCInUcastPkts 멤버입니다.
NDIS_STATISTICS_MULTICAST_FRAMES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 멤버에 HCInMulticastPkts가 유효한 경우 데이터입니다.
NDIS_STATISTICS_BROADCAST_FRAMES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 멤버인 경우 데이터가 유효합니다.
NDIS_STATISTICS_BYTES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 멤버가 유효한 경우 데이터입니다.
NDIS_STATISTICS_RCV_DISCARDS_SUPPORTED
NDIS_STATISTICS_INFO InDiscards 멤버가 유효한 경우 데이터입니다.
NDIS_STATISTICS_RCV_ERROR_SUPPORTED
NDIS_STATISTICS_INFO 멤버인 경우 데이터가 유효합니다.
NDIS_STATISTICS_DIRECTED_FRAMES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 멤버가 유효한 경우 데이터입니다.
NDIS_STATISTICS_MULTICAST_FRAMES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 멤버HCOutMulticastPkts가 유효한 경우 데이터입니다.
NDIS_STATISTICS_BROADCAST_FRAMES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 멤버가 경우 데이터가 유효합니다.
NDIS_STATISTICS_BYTES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 멤버인 경우 데이터가 유효합니다.
NDIS_STATISTICS_XMIT_ERROR_SUPPORTED
NDIS_STATISTICS_INFO 멤버가 유효한 경우 데이터입니다.
NDIS_STATISTICS_XMIT_DISCARDS_SUPPORTED
NDIS_STATISTICS_INFO OutDiscards 멤버가 유효한 경우 데이터입니다.
NDIS_STATISTICS_DIRECTED_BYTES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 멤버가 경우 데이터가 유효합니다.
NDIS_STATISTICS_MULTICAST_BYTES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 멤버에 HCInMulticastOctets가 유효한 경우 데이터입니다.
NDIS_STATISTICS_BROADCAST_BYTES_RCV_SUPPORTED
NDIS_STATISTICS_INFO 멤버가 경우 데이터가 유효합니다.
NDIS_STATISTICS_DIRECTED_BYTES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 멤버가 경우 데이터가 유효합니다.
NDIS_STATISTICS_MULTICAST_BYTES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 멤버에 HCOutMulticastOctets가 유효한 경우 데이터입니다.
NDIS_STATISTICS_BROADCAST_BYTES_XMIT_SUPPORTED
NDIS_STATISTICS_INFO 멤버를 HCOutBroadcastOctets의 데이터가 유효합니다.
SupportedPauseFunctions
다음 일시 중지 함수 중 하나로 IEEE 802.3 일시 중지 프레임에 대한 지원:
NdisPauseFunctionsUnsupported
어댑터 또는 링크 파트너가 일시 중지 프레임을 지원하지 않음을 나타냅니다.
NdisPauseFunctionsSendOnly
어댑터 및 링크 파트너가 어댑터에서 링크 파트너로의 일시 중지 프레임 전송만 지원한다는 것을 나타냅니다.
NdisPauseFunctionsReceiveOnly
어댑터 및 링크 파트너가 링크 파트너에서 어댑터로 일시 중지 프레임 보내기만 지원한다는 것을 나타냅니다.
NdisPauseFunctionsSendAndReceive
어댑터 및 링크 파트너가 transint 및 수신 방향 모두에서 일시 중지 프레임 보내기 및 받기를 지원한다는 것을 나타냅니다.
NdisPauseFunctionsUnknown
프레임 일시 중지 협상이 진행 중임을 나타냅니다. 링크 파트너가 제공하는 일시 중지 프레임 지원을 알 수 없습니다.
DataBackFillSize
드라이버의 필수 데이터 백필 크기(바이트)입니다.
ContextBackFillSize
드라이버의 필요한 컨텍스트 백필 크기(바이트)입니다.
SupportedOidList
미니포트 드라이버에서 지원하는 OID 목록입니다. 자세한 내용은 OID_GEN_SUPPORTED_LIST참조하세요.
SupportedOidListLength
SupportedOidList OID 목록의 크기(바이트)입니다.
AutoNegotiationFlags
미니포트 어댑터에 대한 자동 협상 설정입니다. 이 멤버는 다음 플래그의 비트 OR에서 생성됩니다.
NDIS_LINK_STATE_XMIT_LINK_SPEED_AUTO_NEGOTIATED
어댑터는 링크 파트너와 전송 링크 속도를 자동으로 협상했습니다.
NDIS_LINK_STATE_RCV_LINK_SPEED_AUTO_NEGOTIATED
어댑터가 링크 파트너와 수신 링크 속도를 자동으로 협상했습니다.
NDIS_LINK_STATE_DUPLEX_AUTO_NEGOTIATED
어댑터가 링크 파트너와 이중 상태를 자동으로 협상했습니다.
NDIS_LINK_STATE_PAUSE_FUNCTIONS_AUTO_NEGOTIATED
어댑터가 링크 파트너와 일시 중지 함수를 자동으로 협상했습니다.
PowerManagementCapabilitiesEx
NDIS_PM_CAPABILITIES 구조체에 대한 포인터입니다. 이 구조는 미니포트 어댑터의 전원 관리 기능을 지정합니다. 이 멤버는 NDIS 6.20 이상 드라이버에 필수입니다.
발언
미니포트 드라이버는 MiniportAttributes 매개 변수의 NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 구조에 포인터를 전달합니다. NdisMSetMiniportAttributes 함수입니다. 미니포트 드라이버는 초기화 중에 MiniportInitializeEx 함수에서 NdisMSetMiniportAttributes를 호출합니다. 미니포트 드라이버는 다음에서 등록 특성을 설정한 후 이러한 특성을 설정해야 합니다. NDIS_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES 다른 특성을 설정하기 전에 구조체를 설정합니다. 이러한 특성을 설정해야 합니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | NDIS 6.0 이상에서 지원됩니다. |
헤더 | ndis.h(Ndis.h 포함) |