Getservbyname et getservbyport Functions dans l’API
Les fonctions getservbyname et getservbyport utilisent la fonction WSALookupServiceBegin pour interroger SVCID_INET_SERVICEBYNAME en tant que GUID de classe de service. Le membre lpszServiceInstanceName dans la structure WSAQUERYSET passée à la fonction WSALookupServiceBegin référence une chaîne pour indiquer le nom du service ou le port de service et (éventuellement) le protocole de service. La mise en forme de la chaîne est illustrée par FTP ou TCP, 21/TCP ou simplement FTP. La chaîne ne respecte pas la casse. La barre oblique, si elle est présente, sépare l’identificateur de protocole de la partie précédente de la chaîne. Le Ws2_32.dll spécifie LUP_RETURN_BLOB et le fournisseur d’espaces de noms place une structure SERT dans l’objet blob (en utilisant des décalages au lieu de pointeurs comme décrit ci-dessus). Les fournisseurs d’espaces de noms doivent également respecter ces autres indicateurs LUP_RETURN_*.
Indicateur | Description |
---|---|
LUP_RETURN_NAME | Retourne le membre s_name de la structure SERVENT dans lpszServiceInstanceName. |
LUP_RETURN_TYPE | Retourne un GUID canonique dans lpServiceClassId Il est entendu qu’un service identifié comme FTP ou 21 peut se trouver sur un autre port conformément aux conventions établies localement. Le paramètre s_port de la structure SERVENT doit indiquer où le service peut être contacté dans l’environnement local. Le GUID canonique retourné lorsque LUP_RETURN_TYPE est défini doit être l’un des GUID prédéfinis de Svcs.h qui correspond au numéro de port indiqué dans la structure SERT . |
Rubriques connexes