CONNECTAT(2) | FreeBSD System Calls Manual | CONNECTAT(2) |
名称
connectat — ソケットで接続を開始するライブラリ
Standard C Library (libc, -lc)書式
#include < sys/types.h>#include < sys/socket.h>
#include < fcntl.h>
int
connectat( int fd, int s, const struct sockaddr *name, socklen_t namelen);
解説
connectat() システムコールは、ソケットで接続を開始します。それは、2 つの例外がありますが、ちょうど connect(2) システムコールのように動作します:
- それは、PF_LOCAL ドメインのソケットに制限されています。
- sockaddr_un 構造体の sun_path フィールドに格納されたファイルのパスが、相対パスであるなら、それは、ファイル記述子 fd に関連したディレクトリに相対的に位置付けられます。 connectat() が fd パラメータの特別の値 AT_FDCWD を渡されるなら、現在の作業ディレクトリが使用され、振る舞いは、 connect(2) への呼び出しと同一です。
戻り値
The connectat() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.エラー
connectat() システムコールは、UNIX ドメインソケットのための connect(2) システムコールと同じエラーか、または次のエラーで失敗します:- [ EBADF]
- sun_path フィールドが、絶対パスを指定せず、 fd 引数が AT_FDCWD でも有効なファイル記述子でもありません。
- [ ENOTDIR]
- sun_path フィールドが、絶対パスでなく、 fd が、 AT_FDCWD でもディレクトリに関連したファイル記述子でもありません。
作者
connectat は、FreeBSD 財団の資金提供の下で <pawel@dawidek.net>によって開発されました。February 13, 2013 | FreeBSD |