X-Git-Url: https://git.exim.org/users/jgh/exim.git/blobdiff_plain/459fca581ce9f1215a96885852b912558cdc9c63..899b8bbc6d360af6362c2a41d40b786279f41492:/src/src/receive.c diff --git a/src/src/receive.c b/src/src/receive.c index 93c091c80..ae2c93b4e 100644 --- a/src/src/receive.c +++ b/src/src/receive.c @@ -1859,7 +1859,7 @@ for (;;) prevent further reading), and break out of the loop, having freed the empty header, and set next = NULL to indicate no data line. */ - if (ptr == 0 && ch == '.' && (smtp_input || dot_ends)) + if (ptr == 0 && ch == '.' && dot_ends) { ch = (receive_getc)(GETC_BUFFER_UNLIMITED); if (ch == '\r') @@ -3437,7 +3437,7 @@ else continue; } - seen_items = string_catn(seen_items, ":", 1); + seen_items = string_catn(seen_items, US":", 1); } seen_items = string_cat(seen_items, item); @@ -3769,32 +3769,32 @@ else switch(rc) { default: - log_write(0, LOG_MAIN, "invalid return %d from local_scan(). Temporary " - "rejection given", rc); - goto TEMPREJECT; + log_write(0, LOG_MAIN, "invalid return %d from local_scan(). Temporary " + "rejection given", rc); + goto TEMPREJECT; case LOCAL_SCAN_REJECT_NOLOGHDR: - BIT_CLEAR(log_selector, log_selector_size, Li_rejected_header); - /* Fall through */ + BIT_CLEAR(log_selector, log_selector_size, Li_rejected_header); + /* Fall through */ case LOCAL_SCAN_REJECT: - smtp_code = US"550"; - if (errmsg == NULL) errmsg = US"Administrative prohibition"; - break; + smtp_code = US"550"; + if (!errmsg) errmsg = US"Administrative prohibition"; + break; case LOCAL_SCAN_TEMPREJECT_NOLOGHDR: - BIT_CLEAR(log_selector, log_selector_size, Li_rejected_header); - /* Fall through */ + BIT_CLEAR(log_selector, log_selector_size, Li_rejected_header); + /* Fall through */ case LOCAL_SCAN_TEMPREJECT: TEMPREJECT: - smtp_code = US"451"; - if (errmsg == NULL) errmsg = US"Temporary local problem"; - istemp = US"temporarily "; - break; + smtp_code = US"451"; + if (!errmsg) errmsg = US"Temporary local problem"; + istemp = US"temporarily "; + break; } - g = string_append(g, 2, US"F=", + g = string_append(NULL, 2, US"F=", sender_address[0] == 0 ? US"<>" : sender_address); g = add_host_info_for_log(g);