id summary reporter owner description type status priority milestone component version severity resolution keywords cc 168 libc: close filehandles on exec bird bird "Since the process calling exec*() isn't terminated until the child has completed, file handles needs to be closed asap after the child has been spawned. We're currently not closing anything. In a fork()+exec() sequence this will leave close-on-exec file handles open when the parent expects them to be closed. And in both fork()+exec() and spawn() scenarios any inherited handles the child closes will remain open in the exec() process. For normal files sharing violations may occur should the file be attempted reopened or deleted. For pipes there might be unexpected hangs because both ends of a pipe remains open when they should. For sockets, the connection may not be taken down when expected (both parent and child) because the exec process keeps it from being closed." defect closed normal libc-0.6.3 libc-backend 0.6 normal fixed exec close filehandles hang