Retourner au contenu associé (entrée de forum : comment faire un appel à system() sans que le processus hérite des filedescriptors)
Posté par EraZerg le 24 septembre 2007 à 14:49. En réponse au message comment faire un appel à system() sans que le processus hérite des filedescriptors. Évalué à 1.
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
[^] # Re: non c'est bon.
Posté par EraZerg . En réponse au message comment faire un appel à system() sans que le processus hérite des filedescriptors. Évalué à 1.
malheureusement mon idée ne semble pas marcher:
mon appli initiale faisait:
1) ouvre_sockets();
2) system("ssh machine programme&");
3) travaille_sur_les_sockets();
maintenant, avec mon bidule en plus:
1) ouvre_sockets();
2) if (fork()==0) {
for (fd=0;fd<maxfd;fd++) close(fd);
system("ssh......&");
exit(0);
}
3) travaille_sur_les_sockets();
et le gros problème c'est que maintenant travaille_sur_les_sockets() (dans le corps du pere) cartonne en me disant que mes sockets sont perdues.
Avez-vous mieux à proposer ?
Merci d'avance.