Michael Burk wrote:
So it seems reliable that those 3 lines fix the problem somehow.
Anything else you want to try before I ask for help on the OpenBSD list?

I have nothing else to try.
The order of system call is a follow:

In amandad process:
 pipe(pipefd)
 dup2(pipefd[1],b)
 fork
 in the child:
     exec sendbackup process
     dup2(b,c)
     write c #fail with EAGAIN


The fix is to do the fcntl call at the beginning of the sendbackup process, before the dup2.

Jean-Louis

Reply via email to