GETPEERNAME(2)

名称
getpeername - 接続されたピア (通信相手) の名前の取得

ライブラリ
libc

書式
<sys/types.h> <sys/socket.h> int getpeername(int s, struct sockaddr * restrict name, socklen_t * restrict namelen)

解説
getpeername() システムコールは、ソケット s に接続されたピア (通信相手) の名前を返します。 namelen 引数には、 name が指す空間の大きさを示す値を入れておく必要があります。 戻る時に、これには返された名前の 実際のサイズ (バイト単位) が入れられます。 準備されたバッファが小さすぎる場合、名前は切り捨てられます。

戻り値

エラー
以降の場合を除いて呼び出しは処理に成功します:

[EBADF]
    引数 s が有効な記述子ではありません。

[ECONNRESET]
    接続がピアによってリセットされました。

[ENOTSOCK]
    引数 s はソケットではなくファイルです。

[ENOTCONN]
    ソケットが接続されていません。

[ENOBUFS]
    操作を実行するための十分なリソースがシステムにありません。

[EFAULT]
    name パラメータは、プロセスのアドレス空間の有効な領域の範囲外を指しています。

関連項目
accept(2), bind(2), getsockname(2), socket(2)

歴史
getpeername() システムコールは 4.2BSD で登場しました。