Failure to report send errors

classic Classic list List threaded Threaded
1 message Options
Michal Sojka Michal Sojka
Reply | Threaded
Open this post in threaded view
|

Failure to report send errors

Dear Gnus developers,

(CCing notmuch, because their users can be affected too)

When message-interactive is nil, message-send can falsely report
success even when sending fails and there is no way for the user to
learn about the failure, expect from angry peers complaining about not
receiving replies.

The function responsible for this problematic behavior is
message-send-mail-with-sendmail. It works in two modes: interactive
and non-interactive depending on the value of message-interactive. The
problem happens in the non-interactive mode (which is not the
default).

It executes sendmail with -odb -oem, which means that delivery should
happen in background and errors should be reported to the user via
email. sendmail is executed via call-process-region called without
BUFFER argument, meaning that the return value is always nil. If
sendmail fails to execute at all, perhaps due to corrupted configuration
file, neither the message nor any error email is ever sent, but the user
sees false "Sending...done" message.

I think that call-process-region should be always called with a BUFFER
so that sendmail exit code is returned and communicated to the user.

Best regards,
-Michal
_______________________________________________
notmuch mailing list
[hidden email]
https://notmuchmail.org/mailman/listinfo/notmuch