NET_IF_INFORMATION 구조체(ndis.h)
NET_IF_INFORMATION 구조는 등록된 네트워크 인터페이스에 대한 정보를 NDIS에 제공합니다.
구문
typedef struct _NET_IF_INFORMATION {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
NET_PHYSICAL_LOCATION PhysicalLocation;
ULONG WanTunnelType;
ULONG PortNumber;
NET_IF_ACCESS_TYPE AccessType;
NET_IF_DIRECTION_TYPE DirectionType;
NET_IF_CONNECTION_TYPE ConnectionType;
BOOLEAN ifConnectorPresent;
USHORT PhysAddressLength;
USHORT PhysAddressOffset;
USHORT PermanentPhysAddressOffset;
USHORT FriendlyNameLength;
USHORT FriendlyNameOffset;
GUID InterfaceGuid;
NET_IF_NETWORK_GUID NetworkGuid;
ULONG SupportedStatistics;
NDIS_MEDIUM MediaType;
NDIS_PHYSICAL_MEDIUM PhysicalMediumType;
} NET_IF_INFORMATION, *PNET_IF_INFORMATION;
멤버
Header
인터페이스 정보 구조( NET_IF_INFORMATION )에 대한 NDIS_OBJECT_HEADER 구조체입니다. 공급자는 Header가 NDIS_OBJECT_TYPE_DEFAULT 지정하는 구조체의 Type 멤버, NDIS_OBJECT_REVISION_1 수정 멤버 및 NDIS_SIZEOF_NET_IF_INFORMATION_REVISION_1 Size 멤버를 설정합니다.
Flags
이 구조체에서 설명하는 인터페이스에 대한 정보를 제공하는 플래그입니다. 이러한 플래그는 비트 OR 연산과 결합됩니다. 플래그가 적용되지 않는 경우 이 멤버를 0으로 설정합니다. 다음 플래그 값이 정의됩니다.
NIIF_HARDWARE_INTERFACE
네트워크 인터페이스가 하드웨어용인지 설정합니다.
NIIF_FILTER_INTERFACE
네트워크 인터페이스가 필터 모듈용인지 설정합니다.
NIIF_NDIS_RESERVED1
NDIS용으로 예약되었습니다.
NIIF_NDIS_RESERVED2
NDIS용으로 예약되었습니다.
NIIF_NDIS_RESERVED3
NDIS용으로 예약되었습니다.
PhysicalLocation
에 지정된 인터페이스와 연결된 하드웨어의 실제 위치입니다. NET_PHYSICAL_LOCATION 구조체입니다.
WanTunnelType
WAN 디바이스용 tunnelIfEncapsMethod(RFC 2667) WAN 터널 유형을 알 수 없는 경우 이 멤버를 NIIF_WAN_TUNNEL_TYPE_UNKNOWN 설정합니다.
PortNumber
인터페이스의 NDIS 포트 번호입니다.
AccessType
NET_IF_ACCESS_TYPE NDIS 네트워크 인터페이스 액세스 유형입니다.
DirectionType
NET_IF_DIRECTION_TYPE NDIS 네트워크 인터페이스 방향 유형입니다.
ConnectionType
NET_IF_CONNECTION_TYPE NDIS 네트워크 인터페이스 연결 형식입니다.
ifConnectorPresent
커넥터가 있는지 여부를 나타내는 부울 값입니다. 실제 어댑터가 있는 경우 이 값을 TRUE 로 설정하거나 실제 어댑터가 없는 경우 FALSE 로 설정합니다.
PhysAddressLength
실제 주소 또는 MAC 주소의 길이(바이트)입니다. 이 길이는 PhysAddressOffset 및 PermanentPhysAddressOffset 멤버가 지정하는 오프셋에 있는 바이트 배열의 길이입니다.
PhysAddressOffset
이 구조체의 시작부터 현재 실제 주소의 오프셋(바이트)입니다. 현재 실제 주소는 바이트 배열입니다. 배열의 길이는 PhysAddressLength 멤버에 지정됩니다. 현재 실제 주소는 OID_802_3_CURRENT_ADDRESS OID가 반환하는 값과 동일합니다.
PermanentPhysAddressOffset
이 구조체의 시작부터 영구 물리적 주소의 오프셋(바이트)입니다. 영구 물리적 주소는 바이트 배열입니다. 배열의 길이는 PhysAddressLength 멤버에 지정됩니다. 영구 물리적 주소는 OID_802_3_PERMANENT_ADDRESS OID가 반환하는 값과 동일합니다.
FriendlyNameLength
이 구조체에서 설명하는 인터페이스의 이름 길이(바이트)입니다. 이 길이는 FriendlyNameOffset 멤버의 오프셋에 있는 WCHAR 배열의 길이입니다.
FriendlyNameOffset
이 구조체의 시작 부분에서 식별 이름 시작 부분의 오프셋(바이트)입니다. 이 이름에는 제조업체의 이름, 제품 및 인터페이스 하드웨어 및 소프트웨어 버전이 포함되어야 합니다. 이름은 WCHAR 값의 배열로 지정됩니다. FriendlyNameLength 멤버는 배열의 길이를 지정합니다.
InterfaceGuid
인터페이스와 연결된 GUID입니다. 인터페이스 공급자는 인터페이스에 대한 인터페이스 GUID를 생성합니다. 공급자는 ExUuidCreate 루틴을 호출하여 GUID를 만들 수 있습니다. 인터페이스 GUID는 인터페이스에 할당된 NET_LUID 값과 연결되어야 합니다. 공급자가 영구 스토리지에 인터페이스에 대한 정보를 유지하는 경우 GUID를 저장하고 컴퓨터를 다시 시작한 후 인터페이스를 다시 등록할 때 GUID를 다시 사용해야 합니다.
NetworkGuid
인터페이스가 속한 네트워크와 연결된 GUID입니다. 인터페이스 공급자가 네트워크 GUID를 제공할 수 없는 경우 0 GUID를 전달할 수 있습니다. 이 경우 NDIS는 기본 구획의 기본 네트워크에 인터페이스를 등록합니다.
SupportedStatistics
인터페이스에서 지원하는 통계입니다. 자세한 내용은 의 SupportedStatistics 멤버를 참조하세요. NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 구조입니다.
MediaType
인터페이스 에서 지원하는 NdisMediumXxx 형식입니다. 자세한 내용은 NDIS_MEDIUM.
PhysicalMediumType
인터페이스의 실제 중간 형식입니다. 자세한 내용은 OID_GEN_PHYSICAL_MEDIUM
설명
네트워크 인터페이스 공급자는 등록된 인터페이스에 대한 정보를 NDIS에 제공하기 위해 NET_IF_INFORMATION 구조를 초기화합니다. 인터페이스를 등록하기 위해 공급자는 NET_IF_INFORMATION 구조체에 대한 포인터를 에 전달합니다. NdisIfRegisterInterface 함수입니다.
인터페이스 공급자는 구조체 및 PhysAddressOffset, PermanentPhysAddressOffset 및 FriendlyNameOffset 멤버가 지정하는 배열에 충분한 메모리를 할당해야 합니다. 공급자는 구조체 다음에 배열의 값을 제공하고 배열의 위치를 식별하도록 오프셋 멤버를 설정해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | NDIS 6.0 이상에서 지원됩니다. |
머리글 | ndis.h(Ndis.h 포함) |