PFN_WSK_ABORT_EVENT fonction de rappel (wsk.h)

La fonction de rappel d’événement WskAbortEvent avertit une application WSK qu’une demande de connexion entrante sur un socket d’écoute pour lequel le mode d’acceptation conditionnel est activé a été supprimé.

Syntaxe

PFN_WSK_ABORT_EVENT PfnWskAbortEvent;

NTSTATUS PfnWskAbortEvent(
  [in, optional] PVOID SocketContext,
  [in]           PWSK_INSPECT_ID InspectID
)
{...}

Paramètres

[in, optional] SocketContext

Pointeur vers le contexte de socket pour le socket d’écoute sur lequel la demande de connexion entrante a été reçue. L’application WSK a fourni ce pointeur vers le sous-système WSK lorsqu’elle a appelé la fonction WskSocket pour créer le socket d’écoute.

[in] InspectID

Pointeur vers une structure WSK_INSPECT_ID . Le contenu de la structure identifie la demande de connexion entrante qui a été supprimée.

Valeur retournée

La fonction de rappel d’événement WskAbortEvent d’une application WSK doit toujours retourner STATUS_SUCCESS.

Remarques

Le sous-système WSK appelle la fonction de rappel d’événement WskAbortEvent d’une application WSK uniquement lorsque les conditions suivantes sont remplies :

  • L’application WSK a créé un socket d’écoute pour lequel le mode d’acceptation conditionnelle est activé.
  • Une demande de connexion entrante a été reçue sur le socket d’écoute, et le sous-système WSK a appelé la fonction de rappel d’événement WskInspectEvent de l’application WSK.
  • L’application WSK a renvoyé WskInspectPend ou WskInspectAccept à partir de sa fonction de rappel d’événement WskAbortEvent pour la demande de connexion entrante.
  • La demande de connexion entrante a été supprimée localement ou à distance avant d’être entièrement établie.
Lorsque le sous-système WSK appelle la fonction de rappel d’événement WskAbortEvent d’une application WSK, l’application doit mettre fin à l’inspection de la demande de connexion entrante. La demande de connexion est identifiée par le contenu de la structure WSK_INSPECT_ID pointée par le paramètre InspectID .

Si l’application WSK appelle la fonction WskInspectComplete sur une demande de connexion entrante qui a été abandonnée, la connexion n’est pas établie même si WskInspectAccept est spécifié dans le paramètre Action .

Une application WSK peut activer le mode d’acceptation conditionnelle sur un socket d’écoute en activant l’option de socket SO_CONDITIONAL_ACCEPT . Pour plus d’informations sur l’acceptation conditionnelle des connexions entrantes, consultez Écoute et acceptation des Connections entrantes.

Le sous-système WSK appelle la fonction de rappel d’événement WskAbortEvent d’une application WSK à l’adresse IRQL <= DISPATCH_LEVEL.

La fonction de rappel d’événement WskAbortEvent d’une application WSK ne doit pas attendre l’achèvement d’autres demandes WSK dans le contexte de l’achèvement WSK ou des fonctions de rappel d’événements. Le rappel peut lancer d’autres demandes WSK (en supposant qu’il ne passe pas trop de temps à DISPATCH_LEVEL), mais il ne doit pas attendre leur achèvement même lorsque le rappel est appelé à IRQL = PASSIVE_LEVEL.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows Vista et les versions ultérieures des systèmes d’exploitation Windows.
Plateforme cible Windows
En-tête wsk.h (inclure Wsk.h)
IRQL <= DISPATCH_LEVEL

Voir aussi

WSK_CLIENT_LISTEN_DISPATCH

WSK_INSPECT_ID

WskControlSocket

WskInspectComplete

WskInspectEvent

WskSocket