请输入您要查询的百科知识:

 

词条 getservbyport()
释义

§ 简述

返回对应于给定端口号和协议名的相关服务信息。

#include <windows.h>

struct servent FAR * PASCAL FAR getservbyport(int port,

const char FAR *proto);

port: 给定的端口号,以网络字节顺序排列。

proto: 指向协议名的指针(可选)。如果这个指针为空,getservbyport()返回第一个port与s_port匹配的服务条目。否则getservbyport()对port和proto都进行匹配。

§ 注释

getservbyport()返回与给定服务名对应的包含名字和服务号信息的servent结构指针。结构的声明与getservbyname()中一致。

返回的指针指向一个由Windows Sockets实现分配的结构。应用程序不应该试图修改这个结构或者释放它的任何部分。此外,每一线程仅有一份这个结构的拷贝,所以应用程序应该在发出其他Windows Scokets API调用前,把自己所需的信息拷贝下来。

返回值:

如果没有错误发生,getservbyport()返回如上所述的一个指向servent结构的指针,否则,返回一个空指针。应用程序可以通过WSAGetLastError()来得到一个特定的错误代码。

错误代码:

WSANOTINTIALISED 在应用这个API前,必须成功地调用WSAStartup()。

WSAENTDOWN      Windows Sockets实现检测到了网络子系统的错误。

WSAHOST_NOT_FOUND 没有找到授权应答主机。

WSANO_DATA      有效的名字,但没有关于请求类型的数据记录。

WSAEINPROGRESS    一个阻塞的Windows Sockets操作正在进行。

WSAEINTR        阻塞调用被WSACancelBlockingCall()取消了.

参见: WSAAsyncGetServByPort(), getservbyname()

随便看

 

百科全书收录594082条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/12/19 2:21:06