JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... , size_t len , int flags ); ssize_t recvfrom(int sockfd , void * buf , size_t len , int flags , struct sockaddr * src_addr , socklen_t * addrlen ); ssize_t recvmsg ... (int sockfd , struct msghdr * msg , int flags ); 説明 recv (), recvfrom (), recvmsg () コールは、 ソケットからメッセージを受け取るのに使用される。 これらはコネクションレス型のソケッ ... つのシステムコールすべてに共通の機能について説明し、 システムコール間の違いについて説明する。 The only difference between recv () and read (2) is the presence of flags . With a zero flags argument, recv () is generally equivalent to read (2) (but se ... ... , size_t len , int flags ); ssize_t recvfrom(int sockfd , void * buf , size_t len , int flags , struct sockaddr * src_addr , socklen_t * addrlen ); ssize_t recvmsg ... (int sockfd , struct msghdr * msg , int flags ); 説明 recv (), recvfrom (), recvmsg () コールは、 ソケットからメッセージを受け取るのに使用される。 これらはコネクションレス型のソケッ ... つのシステムコールすべてに共通の機能について説明し、 システムコール間の違いについて説明する。 The only difference between recv () and read (2) is the presence of flags . With a zero flags argument, recv () is generally equivalent to read (2) (but se ... ... , size_t len , int flags ); ssize_t recvfrom(int sockfd , void * buf , size_t len , int flags , struct sockaddr * src_addr , socklen_t * addrlen ); ssize_t recvmsg ... (int sockfd , struct msghdr * msg , int flags ); 説明 recv (), recvfrom (), recvmsg () コールは、 ソケットからメッセージを受け取るのに使用される。 これらはコネクションレス型のソケッ ... つのシステムコールすべてに共通の機能について説明し、 システムコール間の違いについて説明する。 The only difference between recv () and read (2) is the presence of flags . With a zero flags argument, recv () is generally equivalent to read (2) (but se ... ... read safety MT-Safe 準拠 POSIX.1-2001, POSIX.1-2008. 注意 sockatmark () が 1 を返す場合、帯域外データは MSG_OOB を指定した recv (2) で読み込むことができる。 帯域外データは、いくつかのストリームソケットプロトコルでしか サポートされていない。 sockatmar ... f (atmark) break; s = read(sockfd, buf, BUF_LEN); if (s == -1) perror("read"); if (s <= 0) break; } if (atmark == 1) { if (recv(sockfd, &oobdata, 1, MSG_OOB) == -1) { perror("recv"); ... } } 関連項目 fcntl (2), recv (2), send (2), tcp (7) この文書につ ... ... は、全ての集合の全てのファイルディスクリプターについて 読み書き可能な状態になっているかをチェックすべきである。 5. read (2), recv (2), write (2), send (2) といった関数は、こちらが要求した全データを読み書きする必要は ない 。 もし全データを読み書きするな ... 効率が悪い。下記の例ではバッファーは 1024 バイトにしているが、 このサイズを大きくするのは簡単だろう。 7. Calls to read (2), recv (2), write (2), send (2), and select () can fail with the error EINTR , and calls to read (2), recv (2) write (2), and sen ... r program does not set nonblocking I/O, you will not get EAGAIN . 8. 決して、引数に長さ 0 のバッファーを指定して read (2), recv (2), write (2), send (2) を呼び出してはならない。 9. read (2), recv (2), write (2), send (2) が 7. に示した以外のエラーで失 ... ... pt (2) SYS_GETSOCKNAME getsockname (2) SYS_GETPEERNAME getpeername (2) SYS_SOCKETPAIR socketpair (2) SYS_SEND send (2) SYS_RECV recv (2) SYS_SENDTO sendto (2) SYS_RECVFROM recvfrom (2) SYS_SHUTDOWN shutdown (2) SYS_SETSOCKOPT setsockopt (2) SYS_GETSO ... CKOPT getsockopt (2) SYS_SENDMSG sendmsg (2) SYS_RECVMSG recvmsg (2) SYS_ACCEPT4 accept4 (2) SYS_RECVMMSG recvmmsg (2) SYS_SENDMMSG sendmmsg (2) 準拠 このコールは Linux 特有であ ... nce improvement. 関連項目 accept (2), bind (2), connect (2), getpeername (2), getsockname (2), getsockopt (2), listen (2), recv (2), recvfrom (2), recvmsg (2), send (2), sendmsg (2), sendto (2), setsockopt (2), shutdown (2), socket (2), socketpair (2 ... ... いくつかのローカルなファミリーでしか実装されていない)。 send (2), sendto (2), sendmsg (2) はソケットを通してデータを送信し、 recv (2) recvfrom (2), recvmsg (2) はソケットからデータを受信する。 poll (2) と select (2) はデータの到着を待ったり、データ送信 ... ジの受信を有効/無効にする。詳細は unix (7) を参照のこと。 SO_PEEK_OFF (Linux 3.4 以降) MSG_PEEK フラグと一緒に使用された場合 recv (2) システムコールの "peek offset" にこのオプションの値が設定される。現在のところ、このオプションは unix (7) ソケットでのみ ... サポートされている。 このオプションが負の値に設定された場合、従来の動作となる。 つまり MSG_PEEK フラグが指定された recv (2) は、キューの先頭のデータに対して peek 処理を行う (データを読み出すが、キューからデータの削除を行わない)。 新規のソケッ ... ... て切り詰められる。 現在の対象範囲の値を知りたければ、いつでも getsockopt (2) を使って値を問い合わせることができる。 UDPLITE_RECV_CSCOV これは受信側のチェックサムの対象範囲を設定するもので、 使用される引数形式と値の範囲は UDPLITE_SEND_CSCOV と同じである ... にすると、カーネルは指定されたチェックサム対象範囲 よりも「短かい」対象範囲を持つパケットを全て廃棄するようになる。 UDPLITE_RECV_CSCOV の値が実際のパケットのチェックサム対象範囲よりも大きい場合、 受信したパケットは黙って廃棄される。 ただし、システムロ ... サポートがない場合は、以下の定義を行う必要がある。 #define IPPROTO_UDPLITE 136 #define UDPLITE_SEND_CSCOV 10 #define UDPLITE_RECV_CSCOV 11 関連項目 ip (7), ipv6 (7), socket (7), udp (7) RFC 3828 for the Lightweight User Datagram Protocol (UDP-Lite). Li ... ... のソケットへの接続は connect (2) コールによって行なわれる。一度接続したらデータは read (2) と write (2) コールや send (2) と recv (2) コールの変種を使用して転送できる。 セッションが完了したら close (2) が行なわれる。帯域外データの転送も send (2) に記述 ... されており、 受信も recv (2) に記述されている。 SOCK_STREAM を実装した通信プロトコルはデータに損失や重複がないことを保証する。 もし相手のプロトコル ... GRAM と SOCK_RAW ソケットは sendto (2) コールで指定された相手へデータグラムを送ることが許されている。 データグラムは一般に recvfrom (2) で受けとり、 このコールは次のデータグラムを送信者のアドレスと一緒に返す。 SOCK_PACKET は古いソケット型で、生(raw)の ... ... 7) 参照)。 * wait (2), wait3 (2), wait4 (2), waitid (2), waitpid (2). * ソケットインターフェイス: accept (2), connect (2), recv (2), recvfrom (2), recvmmsg (2), recvmsg (2), send (2), sendto (2), sendmsg (2). 但し、ソケットにタイムアウトが設定されてい ... 敗する。 * setsockopt (2) を使ってタイムアウト ( SO_RCVTIMEO ) が設定されている「入力」ソケットインターフェース: accept (2), recv (2), recvfrom (2), recvmmsg (2) (NULL 以外の timeout 引数も指定されている場合), recvmsg (2) * "Output" socket interfaces, ... である。 * setsockopt (2) を使ってタイムアウト ( SO_RCVTIMEO ) が設定されている「入力」ソケットインターフェース: accept (2), recv (2), recvfrom (2), recvmmsg (2) (NULL 以外の timeout 引数も指定されている場合), recvmsg (2) * "Output" socket interfaces, ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。