]> diplodocus.org Git - nmh/blobdiff - uip/mhoutsbr.c
test/inc/test-eom-align: Fix tests; they've never worked.
[nmh] / uip / mhoutsbr.c
index c99744565730ba290226c1504c0dbcbfd5f9cfbf..65d9640cb19cca04418d6d38f2415807ea26ac80 100644 (file)
@@ -1,6 +1,4 @@
-
-/*
- * mhoutsbr.c -- routines to output MIME messages
+/* mhoutsbr.c -- routines to output MIME messages
  *            -- given a Content structure
  *
  * This code is Copyright (c) 2002, by the authors of nmh.  See the
 
 #include <h/mh.h>
 #include <fcntl.h>
+#include <h/utils.h>
 #include <h/md5.h>
 #include <h/mts.h>
 #include <h/tws.h>
 #include <h/mime.h>
 #include <h/mhparse.h>
+#include "mhoutsbr.h"
 
 
-/*
- * prototypes
- */
-int output_message (CT, char *);
-int output_message_fp (CT, FILE *, char *);
-
 /*
  * static prototypes
  */
@@ -53,23 +47,6 @@ output_message_fp (CT ct, FILE *fp, char *file)
     return OK;
 }
 
-int
-output_message (CT ct, char *file)
-{
-    FILE *fp;
-    int status;
-
-    if (! strcmp (file, "-")) {
-       fp = stdout;
-    } else if ((fp = fopen (file, "w")) == NULL) {
-       advise (file, "unable to open for writing");
-       return NOTOK;
-    }
-    status = output_message_fp(ct, fp, file);
-    if (strcmp (file, "-")) fclose(fp);
-    return status;
-}
-
 
 /*
  * Output a Content structure to a file.
@@ -96,7 +73,7 @@ output_content (CT ct, FILE *out)
      * headers (since it has no body).
      */
     if (ct->c_ctexbody) {
-       if (boundary && *boundary != '\0')
+       if (*boundary != '\0')
            free(boundary);
        return OK;
     }
@@ -116,7 +93,7 @@ output_content (CT ct, FILE *out)
        m = (struct multipart *) ct->c_ctparams;
 
         if (m->mp_content_before) {
-           fprintf (out, "%s", m->mp_content_before);
+           fputs(m->mp_content_before, out);
         }
 
        for (part = m->mp_parts; part; part = part->mp_next) {
@@ -124,7 +101,7 @@ output_content (CT ct, FILE *out)
 
            fprintf (out, "\n--%s\n", boundary);
            if (output_content (p, out) == NOTOK) {
-               if (boundary && *boundary != '\0')
+               if (*boundary != '\0')
                    free(boundary);
                 return NOTOK;
            }
@@ -132,7 +109,7 @@ output_content (CT ct, FILE *out)
        fprintf (out, "\n--%s--\n", boundary);
 
         if (m->mp_content_after) {
-           fprintf (out, "%s", m->mp_content_after);
+           fputs(m->mp_content_after, out);
         }
     }
     break;
@@ -192,20 +169,20 @@ output_content (CT ct, FILE *out)
                putc ('\n', out);
                result = write8Bit (ct, out);
            } else {
-               advise (NULL, "can't handle binary transfer encoding in content");
+               inform("can't handle binary transfer encoding in content");
                result = NOTOK;
            }
            break;
 
        default:
-           advise (NULL, "unknown transfer encoding in content");
+           inform("unknown transfer encoding in content");
            result = NOTOK;
            break;
        }
        break;
     }
 
-    if (boundary && *boundary != '\0')
+    if (*boundary != '\0')
        free(boundary);
 
     return result;
@@ -365,7 +342,7 @@ writeQuoted (CT ct, FILE *out)
         * doesn't falsely match an mbox delimiter.
         */
        cp = bufp;
-       if (gotlen >= 5 && strncmp (cp, "From ", 5) == 0) {
+       if (gotlen >= 5 && has_prefix(cp, "From ")) {
            fprintf (out, "=%02X", 'F');
            cp++;
            n += 3;