Freigeben über


FWPS_CALLOUT_NOTIFY_FN3 Rückruffunktion (fwpsk.h)

Version 3 der Funktion, die während der Klassifizierung aufgerufen wird, wenn ein Popupfilter übereinstimmt. Der Unterschied besteht darin, dass dieser Rückruf eine FWPS_FILTER3 Struktur zurückgibt.

Syntax

FWPS_CALLOUT_NOTIFY_FN3 FwpsCalloutNotifyFn3;

NTSTATUS FwpsCalloutNotifyFn3(
  FWPS_CALLOUT_NOTIFY_TYPE notifyType,
  const GUID *filterKey,
  FWPS_FILTER3 *filter
)
{...}

Parameter

notifyType

Ein Wert, der den Typ der Benachrichtigung angibt, die das Filtermodul an die Legende sendet. Gültige Werte für diesen Parameter sind:

  • FWPS_CALLOUT_NOTIFY_ADD_FILTER: Dem Filtermodul wird ein Filter hinzugefügt, der die Legende für die Aktion des Filters angibt.
  • FWPS_CALLOUT_NOTIFY_DELETE_FILTER: Ein Filter wird aus dem Filtermodul gelöscht, der die Legende für die Aktion des Filters angibt.
  • FWPS_CALLOUT_NOTIFY_TYPE_MAX: Ein Maximalwert für Testzwecke.

filterKey

Ein Zeiger auf den Verwaltungsbezeichner für den Filter, wie durch die Anwendung oder den Treiber angegeben, die den Filter hinzufügen oder löschen. Muss NULL- sein, wenn der notifyType Parameter auf FWPS_CALLOUT_NOTIFY_DELETE_FILTERfestgelegt ist. Weitere Informationen finden Sie unter Anmerkungen.

filter

Ein Zeiger auf eine FWPS_FILTER3 Struktur. Diese Struktur beschreibt den Filter, der dem Filtermodul hinzugefügt oder gelöscht wird.

Die notifyFn3 Legendenfunktion eines Popups kann das Kontextelement dieser Struktur so festlegen, dass er auf eine vom Beschriftungstreiber bereitgestellte Kontextstruktur zeigt, wenn der Filter dem Filtermodul hinzugefügt wird. Diese Kontextstruktur ist für das Filtermodul undurchsichtig und kann vom klassifizierenFn3 Beschriftungsfunktion des Legendentreibers verwendet werden, um treiberspezifische Daten oder Zustandsinformationen zwischen Aufrufen des Filtermoduls für die klassifizierungFn3 Legendenfunktion des Popuptreibers beizubehalten.

Die notifyFn3 Legendenfunktion einer Legende kann jeden Kontext bereinigen, der dem Filter zugeordnet ist, wenn der Filter aus dem Filtermodul gelöscht wird.

Rückgabewert

Die notifyFn3-Funktion eines Popups gibt einen der folgenden NTSTATUS- Codes zurück.

Rückgabecode Beschreibung
STATUS_SUCCESS Der Popuptreiber akzeptiert die Benachrichtigung vom Filtermodul.
Andere Statuscodes Fehler. Wenn der notifyType Parameter FWPS_CALLOUT_NOTIFY_ADD_FILTERist, wird der Filter nicht zum Filtermodul hinzugefügt. Wenn der notifyType Parameter FWPS_CALLOUT_NOTIFY_DELETE_FILTERist, wird der Filter weiterhin aus dem Filtermodul gelöscht.

Bemerkungen

Ein Legendentreiber registriert die Legendenfunktionen einer Legende mit dem Filtermodul, indem die FwpsCalloutRegister2-Funktion aufgerufen wird.

Das Filtermodul ruft die notifyFn3 Legendenfunktion eines Popups auf, um den Popuptreiber über Ereignisse zu benachrichtigen, die der Legende zugeordnet sind. Wenn die Popuptreiberfunktion notifyFn3 Legendenfunktion nicht den Typ der Benachrichtigung erkennt, die im parameter notifyType übergeben wird, ignoriert sie die Benachrichtigung und gibt STATUS_SUCCESSzurück.

Wenn ein Beschriftungstreiber eine Legende mit dem Filtermodul registriert, nachdem Filter, die die Legende für die Aktion des Filters angeben, bereits dem Filtermodul hinzugefügt wurden, ruft das Filtermodul die notifyFn3 Popupfunktion nicht auf, um die Legende über alle vorhandenen Filter zu benachrichtigen. Das Filtermodul ruft die notifyFn3 Popupfunktion des Legendentreibers auf, um die Legende zu benachrichtigen, wenn neue Filter, die die Beschriftung für die Aktion des Filters angeben, dem Filtermodul hinzugefügt werden. In diesem Fall wird die notifyFn3 eines Popups Popupfunktion möglicherweise nicht für jeden Filter im Filtermodul aufgerufen, der die Legende für die Aktion des Filters angibt. Wenn ein Beschriftungstreiber eine Legende registriert, nachdem das Filtermodul gestartet wurde und die Legende über jeden Filter im Filtermodul informiert werden muss, der die Legende für die Aktion des Filters angibt, muss der Legendentreiber die entsprechenden Verwaltungsfunktionen aufrufen, um alle Filter im Filtermodul aufzählen und die resultierende Liste der Filter zu sortieren, um diejenigen zu finden, die die Legende für die Aktion des Filters angeben. Weitere Informationen zum Aufrufen dieser Funktionen finden Sie unter Aufrufen anderer Windows-Filterplattformfunktionen.

Wenn ein Filter, der eine Legende für die Aktion des Filters angibt, aus dem Filtermodul gelöscht wird, ruft das Filtermodul die popuptreiber notifyFn3 Legendenfunktion auf und übergibt FWP_CALLOUT_NOTIFY_DELETE_FILTER im notifyType Parameter und NULL- im parameter filterKey. Weitere Informationen finden Sie unter Verarbeiten von Benachrichtigungslegenden.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar ab Windows Vista.
Header- fwpsk.h
IRQL- <= DISPATCH_LEVEL

Siehe auch