Getservbyport, fonction (winsock.h)

La fonction getservbyport récupère les informations de service correspondant à un port et un protocole.

Syntaxe

servent * getservbyport(
  [in] int        port,
  [in] const char *proto
);

Paramètres

[in] port

Port d’un service, dans l’ordre d’octets réseau.

[in] proto

Pointeur facultatif vers un nom de protocole. Si cette valeur est null, getservbyport retourne la première entrée de service pour laquelle le port correspond à la s_port de la structure des services . Sinon, getservbyport correspond à la fois au port et aux paramètres proto .

Valeur retournée

Si aucune erreur ne se produit, getservbyport retourne un pointeur vers la structure de service . Sinon, elle retourne un pointeur Null et un numéro d’erreur spécifique peut être récupéré en appelant WSAGetLastError.

Code d'erreur Signification
WSANOTINITIALISED
Un appel WSAStartup réussi doit se produire avant d’utiliser cette fonction.
WSAENETDOWN
Le sous-système réseau a échoué.
WSAHOST_NOT_FOUND
Service de réponse faisant autorité introuvable.
WSATRY_AGAIN
Un service non authentifié introuvable ou une défaillance du serveur.
WSANO_RECOVERY
Erreurs non récupérables, la base de données des services n’est pas accessible.
WSANO_DATA
Nom valide, aucun enregistrement de données de type demandé.
WSAEINPROGRESS
Un appel Windows Sockets 1.1 bloquant est en cours ou le fournisseur de services traite toujours une fonction de rappel.
WSAEFAULT
Le paramètre proto n’est pas une partie valide de l’espace d’adressage utilisateur.
WSAEINTR
Un appel Windows Socket 1.1 bloquant a été annulé via WSACancelBlockingCall.

Remarques

La fonction getservbyport retourne un pointeur vers une structure de service , comme dans la fonction getservbyname .

La structure de service est allouée par Windows Sockets. L’application ne doit jamais tenter de modifier cette structure ou de libérer aucun de ses composants. En outre, une seule copie de cette structure est allouée par thread. L’application doit donc copier toutes les informations dont elle a besoin avant d’émettre d’autres appels de fonction Windows Sockets.

Windows Phone 8 : cette fonction est prise en charge pour les applications Windows Phone Store sur Windows Phone 8 et versions ultérieures.

Windows 8.1 et Windows Server 2012 R2 : cette fonction est prise en charge pour les applications du Windows Store sur Windows 8.1, Windows Server 2012 R2 et versions ultérieures.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8.1, Windows Vista [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête winsock.h (inclure Winsock2.h)
Bibliothèque Ws2_32.lib
DLL Ws2_32.dll

Voir aussi

WSAAsyncGetServByPort

Winsock Functions

Référence Winsock

getservbyname