Meanwhile, I investigated the problem a bit more and it seems that it's
mostly a matter of misleading/wrong documentation rather than an actual
major bug in the software. (1) faxq apparently completely ignores the
exit status of faxsend as long as it didn't terminate due to a signal
but instead looks at the returned:-field in the queue-file and (2) what
is written to the log is not the "pure exit status" but rather the whole
status integer as returned by wait().

Apart from the remaining bug that a failed exec() isn't recognized as
such, I'd suggest the following changes in order to avoid others
misunderstanding this, too:

1. in man faxsend, replace:

     faxsend returns the new job status to faxq through the exit(2) return
     value of the process

   by:

     faxsend returns the new job status through the exit(2) return value of
     the process--however, faxq ignores this and instead reads the same
     value from the returned:-filed in the queue file

2. and in man sendq:

     returned   Used internally to determine the last return value of
                the send command issued for this job.

   by:

     returned   Used internally to determine the last return value of
                the send command issued for this job. The faxsend program
                is responsible for putting that value here, as faxq actually
                ignores its exit status.



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to