This is a low-priority patch that is needed only for sites that disable Postfix input MIME processing, and that submit mail not ending in newline via the Postfix sendmail command. - The SMTP client did not deliver a partial last line when someone submitted 8BITMIME mail not ending in newline via /usr/sbin/sendmail while MIME input processing was turned off, and MIME 8bit->7bit conversion was requested upon delivery. Prereq: "2.0.8" diff -cr /tmp/postfix-2.0.8/src/global/mail_version.h ./src/global/mail_version.h *** /tmp/postfix-2.0.8/src/global/mail_version.h Tue Apr 15 15:17:20 2003 --- ./src/global/mail_version.h Fri Apr 18 10:26:12 2003 *************** *** 20,29 **** * Patches change the patchlevel and the release date. Snapshots change the * release date only, unless they include the same bugfix as a patch release. */ ! #define MAIL_RELEASE_DATE "20030415" #define VAR_MAIL_VERSION "mail_version" ! #define DEF_MAIL_VERSION "2.0.8" extern char *var_mail_version; /* --- 20,29 ---- * Patches change the patchlevel and the release date. Snapshots change the * release date only, unless they include the same bugfix as a patch release. */ ! #define MAIL_RELEASE_DATE "20030418" #define VAR_MAIL_VERSION "mail_version" ! #define DEF_MAIL_VERSION "2.0.9" extern char *var_mail_version; /* diff -cr /tmp/postfix-2.0.8/HISTORY ./HISTORY *** /tmp/postfix-2.0.8/HISTORY Tue Apr 15 15:20:56 2003 --- ./HISTORY Fri Apr 18 10:27:21 2003 *************** *** 7711,7717 **** Bugfix: extraneous warning about out-of-order original recipient records by Patrik Rak. Files: *qmgr/qmgr_message.c. ! 10030415 Workaround: log a warning and reset incoming queue file time stamps when the file system clock is ahead of the --- 7711,7717 ---- Bugfix: extraneous warning about out-of-order original recipient records by Patrik Rak. Files: *qmgr/qmgr_message.c. ! 20030415 Workaround: log a warning and reset incoming queue file time stamps when the file system clock is ahead of the *************** *** 7719,7724 **** --- 7719,7731 ---- queue scan. The file system clock drift detection executes only once per process instance, to minimize the performance impact. File: global/mail_stream.c. + + 20030416 + + Bugfix: missing partial last line when 1) someone submits + 8-bit mail not ending in newline via /usr/sbin/sendmail + and 2) MIME input processing is turned off, and 3) MIME + 8bit->7bit conversion is requested upon delivery via SMTP. Open problems: diff -cr /tmp/postfix-2.0.8/src/smtp/smtp_proto.c ./src/smtp/smtp_proto.c *** /tmp/postfix-2.0.8/src/smtp/smtp_proto.c Sat Dec 7 14:53:30 2002 --- ./src/smtp/smtp_proto.c Fri Apr 18 10:28:57 2003 *************** *** 808,814 **** prev_type = rec_type; } ! if (prev_type == REC_TYPE_CONT) /* missing newline at end */ smtp_fputs("", 0, session->stream); if ((state->features & SMTP_FEATURE_MAYBEPIX) != 0 && request->arrival_time < vstream_ftime(session->stream) --- 808,832 ---- prev_type = rec_type; } ! if (state->mime_state) { ! ! /* ! * The cleanup server normally ends MIME content with a ! * normal text record. The following code is needed to flush ! * an internal buffer when someone submits 8-bit mail not ! * ending in newline via /usr/sbin/sendmail while MIME input ! * processing is turned off, and MIME 8bit->7bit conversion ! * is requested upon delivery. ! */ ! mime_errs = ! mime_state_update(state->mime_state, rec_type, "", 0); ! if (mime_errs) { ! smtp_mesg_fail(state, 554, ! "MIME 7-bit conversion failed: %s", ! mime_state_error(mime_errs)); ! RETURN(0); ! } ! } else if (prev_type == REC_TYPE_CONT) /* missing newline */ smtp_fputs("", 0, session->stream); if ((state->features & SMTP_FEATURE_MAYBEPIX) != 0 && request->arrival_time < vstream_ftime(session->stream)