socketpair - システムコールの説明 - Linux コマンド集 一覧表
名前
socketpair - 接続されたソケット (socket) のペアを作成する
書式
#include <sys/types.h>
#include <sys/socket.h>
int socketpair(int
d
, int
type
, int
protocol
, int
sv
[2]);
説明
socketpair ()は、指定されたドメイン d 、指定された種類 type で名前のないソケットの接続されたペアを作成する。 protocol が指定されると、このプロトコルを用いる。 新しいソケットの参照に使用するディスクリプタ (descriptor) が sv [0]と sv [1]に返される。 二つのソケットは全く同じである。
返り値
成功した場合はゼロを返す、エラーの場合は -1 を返し、 errno が適切に設定される。
エラー
- EAFNOSUPPORT
- このマシンでは指定されたアドレス・ファミリがサポートされていない。
- EFAULT
- アドレス sv がこのプロセスで使えるアドレス空間を指定していない。
- EMFILE
- このプロセスが使用しているディスクリプタの数が多すぎる。
- ENFILE
- オープンされたファイルの総数がシステム全体の上限に達した。
- EOPNOTSUPP
- 指定されたプロトコルではソケットのペアの作成がサポートされていない。
- EPROTONOSUPPORT
- このマシンでは指定されたプロトコルがサポートされていない。
準拠
4.4BSD, POSIX.1-2001. socketpair ()関数コールは 4.2BSD で現われた。一般に (System V の変種を含めて) BSD のソケット層のクローンをサポートしている、BSD 以外のシステムと、 互いに移植性がある。
注意
Linux では、この関数でサポートされているドメインは AF_UNIX (または同義語である AF_LOCAL )だけである。 (ほとんどの実装で同じ制限がある)