From mboxrd@z Thu Jan 1 00:00:00 1970 From: doug@cs.dartmouth.edu (Doug McIlroy) Date: Thu, 10 Jul 2014 08:04:43 -0400 Subject: [TUHS] Excise process from a pipe In-Reply-To: <20140710045223.GA19076@www.oztivo.net> References: <201407100249.s6A2nMh3017869@coolidge.cs.dartmouth.edu> <20140710045223.GA19076@www.oztivo.net> Message-ID: <201407101204.s6AC4hKQ026601@coolidge.cs.dartmouth.edu> In the suggested answer, the code changes but the process survives. I suspect the answer to my original question is no, but I know only a tiny fraction of the cumulative API of the extended Unix family. Doug >> Was there ever a >> flavor of Unix in which a process could excise itself >> from a pipeline without breaking the pipeline? > > If in the middle of a pipeline, all I can think of is: > > close fd 0 and fd 1 > dup() read end of pipe 1 to be stdin (fd 0) > dup() write end of pipe 2 to be stdout (fd 1) > exec("/bin/cat")