現在リッスンおよびフォーク モードで動作する C ネットワーク ソフトウェアを使用しています。サーバーソケットでリッスンしており、着信接続を受け入れます。次に、新しく受け入れられたソケットを提供するコア サーバー関数を呼び出します。
現在、そのソフトウェアを xinetd の背後でも動作させようとしています (ランタイム パラメータによっては)。受け入れられたソケットの代わりにファイル記述子 0 を提供するコア サーバー関数を直接呼び出そうとしましたが、この方法は機能しません。プログラムは SIG_PIPE で即座に停止します。
そのような行動に明らかな理由はありますか?私のコア関数は、いくつかの低レベルのソケット呼び出しとシグナル処理を実行します。それは xinetd の背後で動作するはずですか?