CSocketAddr, classe
Cette classe fournit des méthodes pour convertir des noms d’hôtes en adresses hôtes, prenant en charge les formats IPv4 et IPV6.
class CSocketAddr
Nom | Description |
---|---|
CSocketAddr ::CSocketAddr | Constructeur . |
Nom | Description |
---|---|
CSocketAddr ::FindAddr | Appelez cette méthode pour convertir le nom d’hôte fourni en adresse hôte. |
CSocketAddr ::FindINET4Addr | Appelez cette méthode pour convertir le nom d’hôte IPv4 en adresse hôte. |
CSocketAddr ::FindINET6Addr | Appelez cette méthode pour convertir le nom d’hôte IPv6 en l’adresse de l’hôte. |
CSocketAddr ::GetAddrInfo | Appelez cette méthode pour renvoyer un pointeur vers un élément spécifique de la addrinfo liste. |
CSocketAddr ::GetAddrInfoList | Appelez cette méthode pour retourner un pointeur vers la addrinfo liste. |
Cette classe fournit une approche indépendante de la version IP pour rechercher des adresses réseau à utiliser avec les fonctions API de sockets Windows et les wrappers de sockets dans les bibliothèques.
Les membres de cette classe utilisés pour rechercher des adresses réseau utilisent la fonction d’API Win32 getaddrinfo. La version ANSI ou UNICODE de la fonction est appelée selon que votre code est compilé pour ANSI ou UNICODE.
Cette classe prend en charge les adresses réseau IPv4 etIPv6.
En-tête : atlsocket.h
Constructeur .
CSocketAddr();
Crée un CSocketAddr
objet et initialise la liste liée contenant des informations de réponse sur l’hôte.
Appelez cette méthode pour convertir le nom d’hôte fourni en adresse hôte.
int FindAddr(
const TCHAR *szHost,
const TCHAR *szPortOrServiceName,
int flags,
int addr_family,
int sock_type,
int ai_proto);
int FindAddr(
const TCHAR *szHost,
int nPortNo,
int flags,
int addr_family,
int sock_type,
int ai_proto);
szHost
Nom d’hôte ou adresse IP en pointillé.
szPortOrServiceName
Numéro de port ou nom du service sur l’hôte.
nPortNo
Numéro de port.
flags
0 ou combinaison de AI_PASSIVE, de AI_CANONNAME ou de AI_NUMERICHOST.
addr_family
Famille d’adresses (par exemple, PF_INET).
sock_type
Type de socket (par exemple, SOCK_STREAM).
ai_proto
Protocole (par exemple, IPPROTO_IP ou IPPROTO_IPV6).
Retourne zéro si l’adresse est calculée avec succès. Retourne un code d’erreur de socket Windows différent de zéro en cas d’échec. Si elle réussit, l’adresse calculée est stockée dans une liste liée qui peut être référencée à l’aide CSocketAddr::GetAddrInfoList
et CSocketAddr::GetAddrInfo
.
Le paramètre de nom d’hôte peut être au format IPv4 ou IPv6. Cette méthode appelle la fonction API Win32 getaddrinfo pour effectuer la conversion.
Appelez cette méthode pour convertir le nom d’hôte IPv4 en adresse hôte.
int FindINET4Addr(
const TCHAR *szHost,
int nPortNo,
int flags = 0,
int sock_type = SOCK_STREAM);
szHost
Nom d’hôte ou adresse IP en pointillé.
nPortNo
Numéro de port.
flags
0 ou combinaison de AI_PASSIVE, de AI_CANONNAME ou de AI_NUMERICHOST.
sock_type
Type de socket (par exemple, SOCK_STREAM).
Retourne zéro si l’adresse est calculée avec succès. Retourne un code d’erreur de socket Windows différent de zéro en cas d’échec. Si elle réussit, l’adresse calculée est stockée dans une liste liée qui peut être référencée à l’aide CSocketAddr::GetAddrInfoList
et CSocketAddr::GetAddrInfo
.
Cette méthode appelle la fonction API Win32 getaddrinfo pour effectuer la conversion.
Appelez cette méthode pour convertir le nom d’hôte IPv6 en l’adresse de l’hôte.
int FindINET6Addr(
const TCHAR *szHost,
int nPortNo,
int flags = 0,
int sock_type = SOCK_STREAM);
szHost
Nom d’hôte ou adresse IP en pointillé.
nPortNo
Numéro de port.
flags
0 ou combinaison de AI_PASSIVE, de AI_CANONNAME ou de AI_NUMERICHOST.
sock_type
Type de socket (par exemple, SOCK_STREAM).
Retourne zéro si l’adresse est calculée avec succès. Retourne un code d’erreur de socket Windows différent de zéro en cas d’échec. Si elle réussit, l’adresse calculée est stockée dans une liste liée qui peut être référencée à l’aide CSocketAddr::GetAddrInfoList
et CSocketAddr::GetAddrInfo
.
Cette méthode appelle la fonction API Win32 getaddrinfo pour effectuer la conversion.
Appelez cette méthode pour renvoyer un pointeur vers un élément spécifique de la addrinfo
liste.
addrinfo* const GetAddrInfo(int nIndex = 0) const;
nIndex
Référence à un élément spécifique dans la liste addrinfo .
Retourne un pointeur vers la addrinfo
structure référencée par nIndex dans la liste liée contenant des informations de réponse sur l’hôte.
Appelez cette méthode pour retourner un pointeur vers la addrinfo
liste.
addrinfo* const GetAddrInfoList() const;
Pointeur vers une liste liée d’une ou plusieurs addrinfo
structures contenant des informations de réponse sur l’hôte. Pour plus d’informations, consultez la structure addrinfo.