This change adds appropriate status codes and an informative error message to each case where the milter can reject an email message. It also handles errors from HTTP requests, distinguishing between transient and permanent errors.
There ought to be similar exception handing for the database query to return TEMPFAIL in case the database server is down, but the database library that is used is too convoluted for a drive-by contributor like me to figure out.
This change adds appropriate status codes and an informative error message to each case where the milter can reject an email message. It also handles errors from HTTP requests, distinguishing between transient and permanent errors.
There ought to be similar exception handing for the database query to return TEMPFAIL in case the database server is down, but the database library that is used is too convoluted for a drive-by contributor like me to figure out.