ネットワークインタフェース

ソケット関数と XTI/TLI 関数との対応関係

表 3-15 に、XTI/TLI 関数とソケット関数との対応関係をおおまかに示します。コメント欄には、両者の相違点を示します。コメントがない場合は、関数が同じであるか、または一方のインタフェースに等価の関数がないことを意味します。

表 3-15 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_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)sendsmg(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) を呼び出すだけでよい