Se fork
con lo scopo di chiamare un exec
funzione, puoi usare fcntl
con FD_CLOEXEC
per avere il descrittore di file chiuso una volta che hai exec
:
int fd = open(...);
fcntl(fd, F_SETFD, FD_CLOEXEC);
Tale descrittore di file sopravviverà a un fork
ma non le funzioni del exec
famiglia.
No. Chiudili tu stesso, poiché sai quali devono essere chiusi.