Retourner au contenu associé (entrée de forum : Communication entre processus avec pipe() et dup2().)
Posté par David Marec le 01 mars 2020 à 18:09. En réponse au message Communication entre processus avec pipe() et dup2().. Évalué à 3. Dernière modification le 01 mars 2020 à 18:11.
Au passage, utilisez les constantes STDIN_FILENO et STDOUT_FILENO à la place de 0 et 1.
STDIN_FILENO
STDOUT_FILENO
0
1
vous devriez de plus vérifier que le fils ne s'est pas terminé avec waitpid, après chaque timeout sur select par exemple.
select
J'ai aussi l'impression que vous allez lancer deux bash avec votre execve.
bash
Et votre buffer n'est pas initialisé:
char buff[MAX_BUF_SIZE]; memset(buff,0,sizeof buff);
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
[^] # Re: Impossible
Posté par David Marec . En réponse au message Communication entre processus avec pipe() et dup2().. Évalué à 3. Dernière modification le 01 mars 2020 à 18:11.
Au passage, utilisez les constantes
STDIN_FILENOetSTDOUT_FILENOà la place de0et1.vous devriez de plus vérifier que le fils ne s'est pas terminé avec waitpid, après chaque timeout sur
selectpar exemple.J'ai aussi l'impression que vous allez lancer deux
bashavec votre execve.Et votre buffer n'est pas initialisé: