FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0 콜백 함수(fwpsk.h)

필터 엔진은 vSwitchLifetimeNotifyFn (FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0) 설명선 함수를 호출하여 설명선 드라이버에 가상 스위치에 대한 이벤트 만들기 및 삭제에 대해 알립니다.

FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0 특정 버전의 FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK. 자세한 내용은 WFP Version-Independent 이름 및 특정 버전의 Windows 대상 지정 을 참조하세요.
 

구문

FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0 FwpsVswitchLifetimeEventCallback0;

NTSTATUS FwpsVswitchLifetimeEventCallback0(
  [in, optional] void *notifyContext,
  [in]           FWPS_VSWITCH_EVENT_TYPE eventType,
  [in]           const NDIS_SWITCH_PARAMETERS *vSwitch,
  [in, optional] const NDIS_SWITCH_PORT_ARRAY *vSwitchPorts,
  [in, optional] const NDIS_SWITCH_NIC_ARRAY *vSwitchInterfaces
)
{...}

매개 변수

[in, optional] notifyContext

설명선 드라이버에서 제공하는 컨텍스트에 대한 포인터입니다. 드라이버는 FwpsvSwitchEventsSubscribe0 함수의 notifyContext 매개 변수에 이 포인터를 전달했습니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

[in] eventType

FWPS_VSWITCH_EVENT_TYPE 열거형 값 중 하나로 지정된 가상 스위치 이벤트의 형식입니다. 자세한 내용은 설명 부분을 참조하세요.

[in] vSwitch

가상 스위치에 대한 정보를 포함하는 NDIS_SWITCH_PARAMETERS 구조체에 대한 포인터입니다.

참고NDIS_SWITCH_PARAMETERS 구조체의 정보는 가상 스위치의 초기 상태를 반영하며 반드시 현재 상태는 아닙니다. 특히 가상 스위치 PnP 이벤트가 트리거되지 않는 한 NumSwitchPortsIsActive 멤버의 초기 값은 0일 수 있습니다. 현재 상태 정보는 이 콜백 함수의 다른 매개 변수에서 찾을 수 있습니다.
 

[in, optional] vSwitchPorts

포트 구성 매개 변수의 배열을 지정하는 NDIS_SWITCH_PORT_ARRAY 구조체에 대한 포인터입니다. 배열의 각 요소는 가상 스위치의 포트에 대한 매개 변수를 지정합니다.

[in, optional] vSwitchInterfaces

미니포트 어댑터 구성 매개 변수의 배열을 지정하는 NDIS_SWITCH_NIC_ARRAY 구조체에 대한 포인터입니다. 배열의 각 요소는 가상 스위치의 포트에 연결된 가상 또는 물리적 미니포트 어댑터에 대한 매개 변수를 지정합니다.

반환 값

콜아웃의

FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0 함수는 다음 NTSTATUS 코드 중 하나를 반환합니다.

반환 코드 설명
STATUS_SUCCESS
설명선 드라이버는 필터 엔진의 알림을 수락합니다.
기타 상태 코드
오류가 발생했습니다.

설명

설명선 드라이버가 호출하여 vSwitchLifetimeNotifyFn 콜백 함수를 등록합니다.
FwpsvSwitchEventsSubscribe0 함수입니다.

vSwitchLifetimeNotifyFn 콜백이 등록된 경우 가상 스위치 instance 만들 때 WFP 필터 드라이버가 설명선 드라이버에 알린 것입니다. 가상 스위치의 여러 인스턴스가 동시에 Hyper-V 호스트에 있을 수 있습니다.

WFP 필터 드라이버는 FilterRestart 함수의 OID_SWITCH_PARAMETERS OID를 쿼리하여 가상 스위치의 현재 instance 연결된 가상 스위치 식별자를 가져옵니다. 또한 WFP 필터 드라이버는 OID_SWITCH_NIC_ARRAYOID_SWITCH_PORT_ARRAY OID를 쿼리하여 구성된 가상 NIC 및 가상 포트의 초기 집합을 가져옵니다. WFP 필터 드라이버는 eventType 매개 변수에 설정된 FWPS_VSWITCH_EVENT_VSWITCH_CREATE 사용하여 NDIS_SWITCH_PORT_ARRAYNDIS_SWITCH_NIC_ARRAY 구조 정보를 OID에서 vSwitchLifetimeNotifyFn으로 전달합니다.

WFP 필터 드라이버의 FilterDetach에서 필터는 eventTypevSwitchLifetimeNotifyFn 매개 변수에 설정된 FWPS_VSWITCH_EVENT_VSWITCH_DELETE 사용하여 를 호출합니다.

설명선 드라이버는 vSwitchLifetimeNotifyFn에서 STATUS_PENDING 반환할 수 없습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 사용하여 사용할 수 있습니다.
대상 플랫폼 Windows
헤더 fwpsk.h(Fwpsk.h 포함)
IRQL <= DISPATCH_LEVEL

추가 정보

설명선 드라이버 설명선 함수

FWPS_VSWITCH_EVENT_TYPE

FWPS_VSWITCH_PORT_EVENT_CALLBACK0

FilterDetach

FilterRestart

FwpsvSwitchEventsSubscribe0

FwpsvSwitchNotifyComplete0

NDIS_SWITCH_NIC_ARRAY

NDIS_SWITCH_PARAMETERS

NDIS_SWITCH_PORT_ARRAY

NdisFRestartComplete

OID_SWITCH_NIC_ARRAY

OID_SWITCH_PARAMETERS

OID_SWITCH_PORT_ARRAY