编程接口指南

套接字到 XTI/TLI 的等效项

下表给出了 XTI/TLI 接口和套接字接口之间的近似等效项。注释字段介绍不同之处。如果注释列为空,则这些接口类似或不存在等效接口。

表 8–8 TLI 和套接字等效功能

TLI 接口 

套接字接口 

注释 

t_open(3NSL)

socket(3SOCKET)

 

socketpair(3SOCKET)

 

t_bind(3NSL)

bind(3SOCKET)

t_bind(3NSL) 可设置被动套接字的队列深度,bind(3SOCKET) 则不会这样做。对于套接字,在 listen(3SOCKET) 的调用中指定队列长度。

t_optmgmt(3NSL)

getsockopt(3SOCKET)

setsockopt(3SOCKET)

t_optmgmt(3NSL) 只管理传输选项。getsockopt(3SOCKET)setsockopt(3SOCKET) 可以管理传输层的选项,也可管理套接字层和任意协议层的选项。

t_unbind(3NSL)

 

t_close(3NSL)

close(2)

 

t_getinfo(3NSL)

getsockopt(3SOCKET)

t_getinfo(3NSL) 返回有关传输的信息。getsockopt(3SOCKET) 可以返回有关传输和套接字的信息。

t_getstate(3NSL)

-

 

t_sync(3NSL)

-

 

t_alloc(3NSL)

-

 

t_free(3NSL)

-

 

t_look(3NSL)

-

带有 SO_ERROR 选项的 getsockopt(3SOCKET) 返回的错误信息类型与 t_look(3NSL)t_look() 返回的相同。

t_error(3NSL)

perror(3C)

 

t_connect(3NSL)

connect(3SOCKET)

在调用 connect(3SOCKET) 之前,无需绑定本地端点。在调用 t_connect(3NSL) 之前绑定端点。可以在无连接端点上使用 connect(3SOCKET) 设置数据报的缺省目标地址。可以使用 connect(3SOCKET) 发送数据。

t_rcvconnect(3NSL)

-

 

t_listen(3NSL)

listen(3SOCKET)

t_listen(3NSL) 等待连接指示。listen(3SOCKET) 设置队列深度。

t_accept(3NSL)

accept(3SOCKET)

 

t_snd(3NSL)

send(3SOCKET)

 

 

sendto(3SOCKET)

 

 

sendmsg(3SOCKET)

sendto(3SOCKET)sendmsg(3SOCKET) 在连接模式和数据报模式下进行操作。

t_rcv(3NSL)

recv(3SOCKET)

 

 

recvfrom(3SOCKET)

 

 

recvmsg(3SOCKET)

recvfrom(3SOCKET)recvmsg(3SOCKET) 在连接模式和数据报模式下进行操作。

t_snddis(3NSL)

-

 

t_rcvdis(3NSL)

-

 

t_sndrel(3NSL)

shutdown(3SOCKET)

 

t_rcvrel(3NSL)

-

 

t_sndudata(3NSL)

sendto(3SOCKET)

 

 

recvmsg(3SOCKET)

 

t_rcvuderr(3NSL)

-

 

read(2)write(2)

read(2)write(2)

在 XTI/TLI 中,必须在调用 read(2)write(2) 之前推送 tirdwr(7M) 模块。在套接字中,调用 read(2)write(2) 已足够。