Share via


FwpsCalloutUnregisterByKey0 (Compact 2013)

3/26/2014

This function unregisters a callout from the WFP Filter Engine.

Syntax

NTSTATUS NTAPI
  FwpsCalloutUnregisterByKey0(
    IN const GUID  *calloutKey
    );

Parameters

  • calloutKey
    A pointer to a GUID that uniquely identifies the callout that is being unregistered from the filter engine. This must point to the same GUID that was specified when the callout driver called the FwpsCalloutRegister0 function to register the callout with the filter engine

Return Value

The FwpsCalloutUnregisterByKey0 function returns one of the following NTSTATUS codes:

Value

Description

STATUS_SUCCESS

The callout was successfully unregistered from the filter engine

STATUS_DEVICE_BUSY

One or more data flows that have an outstanding associated context are being processed by the callout.

STATUS_FWP_CALLOUT_NOT_FOUND

No callout that matches the GUID specified in the calloutKey parameter is registered by the filter engine.

STATUS_FWP_IN_USE

The callout is already being registered or unregistered by another thread

Other status codes

An error occurred.

Remarks

A callout driver calls the FwpsCalloutUnregisterByKey0 function to unregister a callout from the filter engine, by using the GUID key to identify the callout to be unregistered. This function will succeed even if there are filters in the filter engine that specify the callout for the filter's action. In this case, filters with an action type of FWP_ACTION_CALLOUT_TERMINATING or FWP_ACTION_CALLOUT_UNKNOWN are treated as FWP_ACTION_BLOCK. Filters with an action type of FWP_ACTION_CALLOUT_INSPECTION are ignored after the callout us unregistered from the filter engine.

A callout driver cannot be unloaded until all the callouts that were previously registered by using the filter engine are successfully unregistered.

Requirements

Header

fwpsk.h

See Also

Reference

Functions Called by Callout Drivers
FwpsCalloutRegister0
FwpsCalloutUnregisterById0
FwpsFlowRemoveContext0
WFP Callout Driver Functions