WSADeleteSocketPeerTargetName, fonction (ws2tcpip.h)
La fonction WSADeleteSocketPeerTargetName supprime l’association entre un nom cible d’homologue et une adresse IP pour un socket. Après un retour réussi, il n’y aura plus d’association future entre l’adresse IP et le nom cible.
Syntaxe
INT WSAAPI WSADeleteSocketPeerTargetName(
[in] SOCKET Socket,
[in] const sockaddr *PeerAddr,
[in] ULONG PeerAddrLen,
[in, optional] LPWSAOVERLAPPED Overlapped,
[in, optional] LPWSAOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine
);
Paramètres
[in] Socket
Descripteur identifiant un socket sur lequel le nom cible de l’homologue est supprimé.
[in] PeerAddr
Adresse IP de l’homologue pour lequel le nom cible est en cours de suppression.
[in] PeerAddrLen
Taille, en octets, du paramètre PeerAddr .
[in, optional] Overlapped
Pointeur vers une structure WSAOVERLAPPED . Ce paramètre est ignoré pour les sockets qui ne se chevauchent pas.
[in, optional] CompletionRoutine
Pointeur vers la routine d’achèvement appelée une fois l’opération terminée. Ce paramètre est ignoré pour les sockets qui ne se chevauchent pas.
Valeur retournée
Si la fonction réussit, la valeur de retour est 0. Sinon, une valeur de SOCKET_ERROR est retournée et un code d’erreur spécifique peut être récupéré en appelant WSAGetLastError.
Certains codes d’erreur possibles sont répertoriés ci-dessous.
Code d'erreur | Signification |
---|---|
La famille d’adresses spécifiée n’est pas prise en charge. | |
Le système a détecté un pointeur d’adresse non valide lors de la tentative d’utilisation d’un argument pointeur d’un appel. Cette erreur est retournée si le paramètre PeerAddr était un pointeur NULL . | |
Un paramètre non valide a été passé. Cette erreur est retournée si le socket transmis dans le paramètre Socket n’a pas été créé avec une famille d’adresses du AF_INET ou AF_INET6 et un type de socket de SOCK_DGRAM ou SOCK_STREAM. | |
Une mémoire tampon passée était trop petite. | |
Le descripteur transmis dans le paramètre Socket n’est pas un socket valide. |
Remarques
La fonction WSADeleteSocketPeerTargetName fournit une méthode permettant de supprimer l’association entre un nom cible d’homologue et une adresse IP pour un socket. Cette fonction est utilisée pour supprimer un nom cible d’homologue précédemment défini avec la fonction WSASetSocketPeerTargetName . Une fois la fonction WSADeleteSocketPeerTargetName retournée, aucune authentification future à l’adresse IP n’utilisera le nom cible spécifié précédemment. Cette fonction est principalement conçue pour être utilisée par les clients sans connexion (par exemple, un socket créé avec le type défini sur SOCK_DGRAM ou le protocole défini sur IPPROTO_UDP) après avoir arrêté la connexion avec l’adresse IP associée au nom cible de l’homologue. Pour les clients orientés connexion (par exemple, un socket créé avec le type défini sur SOCK_STREAM ou un protocole défini sur IPPROTO_TCP), cette fonction ne doit pas être appelée.
La fonction WSADeleteSocketPeerTargetName simplifie l’appel de la fonction WSAIoctl avec un paramètre dwIoControlCode défini sur SIO_DELETE_PEER_TARGET_NAME.
Une erreur est retournée si les conditions suivantes ne sont pas remplies.
- La famille d’adresses du paramètre Socket doit être AF_INET ou AF_INET6.
- Le type de socket doit être SOCK_STREAM ou SOCK_DGRAM.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | ws2tcpip.h |
Bibliothèque | Fwpuclnt.lib |
DLL | Fwpuclnt.dll |
Voir aussi
Utilisation d’extensions de socket sécurisé
Plateforme de filtrage Windows