+
+ if (want_progress() && outlevel >= O_VERBOSE && !ctl->mda && !ctl->bsmtp) puts("");
+
+ if (ctl->bsmtp && sinkfp) {
+ int error, oerrno;
+
+ /* implicit disk-full check here... */
+ fputs(".\r\n", sinkfp);
+ error = ferror(sinkfp);
+ oerrno = errno;
+ if (strcmp(ctl->bsmtp, "-"))
+ {
+ if (fclose(sinkfp) == EOF) {
+ error = 1;
+ oerrno = errno;
+ }
+ sinkfp = (FILE *)NULL;
+ }
+ if (error)
+ {
+ report(stderr,
+ GT_("Message termination or close of BSMTP file failed: %s\n"), strerror(oerrno));
+ return(FALSE);
+ }
+ } else if (ctl->mda) {
+ int rc = 0, e = 0, e2 = 0, err = 0;