FWPS_CALLOUT1 구조체(fwpsk.h)

FWPS_CALLOUT1 구조는 설명선 드라이버가 필터 엔진에 설명선 등록에 필요한 데이터를 정의합니다.

참고FWPS_CALLOUT1 Windows 7 이상에서 사용되는 특정 버전의 FWPS_CALLOUT . 자세한 내용은 WFP Version-Independent 이름 및 특정 버전의 Windows 대상 지정 을 참조하세요. Windows 8 경우 FWPS_CALLOUT2 사용할 수 있습니다. Windows Vista의 경우 FWPS_CALLOUT0 사용할 수 있습니다.
 

구문

typedef struct FWPS_CALLOUT1_ {
  GUID                                calloutKey;
  UINT32                              flags;
  FWPS_CALLOUT_CLASSIFY_FN1           classifyFn;
  FWPS_CALLOUT_NOTIFY_FN1             notifyFn;
  FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 flowDeleteFn;
} FWPS_CALLOUT1;

멤버

calloutKey

설명선이 고유하게 식별되는 설명선 드라이버 정의 GUID 입니다.

flags

설명선별 매개 변수를 지정하는 플래그입니다. 가능한 플래그는 다음과 같습니다.

의미
FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW
0x00000001
설명선 드라이버는 데이터 흐름을 지원하는 계층에 추가될 설명선 등록 시 이 플래그를 지정할 수 있습니다. 이 플래그를 지정하면 필터 엔진은 데이터 흐름과 연결된 컨텍스트가 있는 경우에만 설명선 드라이버의 classifyFn1 설명선 함수를 호출합니다. 설명선 드라이버는 FwpsFlowAssociateContext0 함수를 호출하여 컨텍스트를 데이터 흐름과 연결합니다.
FWP_CALLOUT_FLAG_ALLOW_OFFLOAD
0x00000002
콜아웃 드라이버는 이 플래그를 지정하여 콜아웃 드라이버의 classifyFn1 콜아웃 함수가 네트워크 데이터 처리를 오프로드 가능 NIC(네트워크 인터페이스 카드)로 오프로드하는 영향을 받지 않음을 나타냅니다. 이 플래그를 지정하지 않으면 필터 작업에 대한 설명선이 지정된 필터에서 처리되는 모든 트래픽에 대해 네트워크 데이터 처리의 오프로드가 비활성화됩니다.
FWP_CALLOUT_FLAG_ENABLE_COMMIT_ADD_NOTIFY
0x00000004
설명선 드라이버는 트랜잭션 내에 추가된 개체 및 필터에 대한 알림을 받을 수 있음을 나타내기 위해 이 플래그를 지정합니다. 필터 엔진은 트랜잭션이 커밋된 후 알림을 보냅니다.
FWP_CALLOUT_FLAG_ALLOW_MID_STREAM_INSPECTION
0x00000008
설명선 드라이버는 스트림 수준에서 데이터 흐름의 동적 스트림 검사를 수행할 수 있음을 나타내기 위해 이 플래그를 지정합니다. Stream 검사를 참조하세요.
FWP_CALLOUT_FLAG_ALLOW_RECLASSIFY
0x00000010
콜아웃 드라이버는 기존 소켓 작업이 재분류될 때 호출되도록 자신을 등록하도록 이 플래그를 지정합니다.

classifyFn

콜아웃 드라이버의 classifyFn1 콜아웃 함수에 대한 포인터입니다. 필터 엔진은 콜아웃에서 처리할 네트워크 데이터가 있을 때마다 이 함수를 호출합니다.

notifyFn

콜아웃 드라이버의 notifyFn1 함수에 대한 포인터입니다. 필터 엔진은 이 함수를 호출하여 콜아웃 드라이버에 콜아웃과 연결된 이벤트에 대해 알립니다.

flowDeleteFn

콜아웃 드라이버의 flowDeleteFn 콜아웃 함수에 대한 포인터입니다. 필터 엔진은 콜아웃에서 처리되는 데이터 흐름이 종료될 때마다 이 함수를 호출합니다.

설명선 드라이버가 컨텍스트를 설명선이 처리하는 데이터 흐름과 연결하지 않는 경우 이 멤버를 NULL로 설정해야 합니다.

설명

설명선 드라이버는 필터 엔진에 설명선이 등록될 때 초기화된 FWPS_CALLOUT1 구조체에 대한 포인터를 FwpsCalloutRegister1 함수에 전달합니다.

설명선은 드라이버가 스트림 검사를 수행하는 데 관심이 있는 연결에 대해서만 FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW 플래그를 설정할 수 있습니다. 이 설명선은 다른 모든 연결에서 무시됩니다. 성능이 향상되고 드라이버가 불필요한 상태 데이터를 유지 관리할 필요가 없습니다.

이 구조체는 기본적으로 이전 버전인 FWPS_CALLOUT0 동일합니다. 유일한 차이점은 이 버전의 멤버가 설명선 함수 포인터의 업데이트된 버전을 저장하고 설명선 드라이버가 설정할 수 있는 추가 플래그를 사용할 수 있다는 것입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7부터 사용할 수 있습니다.
머리글 fwpsk.h(Fwpsk.h 포함)

추가 정보

FWPS_CALLOUT0

FWPS_CALLOUT2

FwpsCalloutRegister1

classifyFn1

flowDeleteFn

notifyFn1