1

確立された接続のUnixドメインソケットファイル記述子をプロセスAから別のUnixドメインソケット接続を介してプロセスBに渡そうとしていますが、tcpソケットは問題なく渡されます。それには理由がありますか、それとも私は何か間違ったことをしていますか?両方とも補助メッセージThanxを介して渡されます

4

1 に答える 1

0

ソケットファイル記述子(通常のファイル記述子と同じように)は、それらを適切に作成したプロセス以外ではまったく意味がありません。を他のプロセスに送信fdすると、大量のバイトが送信されるだけです。それ以上でもそれ以下でもありません。

作業 fdをあるプロセスから別のプロセスに移動できる唯一の方法は、渡されるfork()を含むプロセスに移動することです。fd

特定のUnixソケットに接続するプロセスが必要な場合は、unixソケットファイルシステムのエントリ名をそのプロセスに渡す必要があります。受信プロセスは、ソケットを適切に作成し、後で接続を確立できます。

なぜtcpソケットの受け渡しに問題がなかったのかわかりませんfd。おそらく、コードの関連部分を投稿すると、理由が明らかになります。

于 2012-04-30T18:29:40.190 に答える