]> diplodocus.org Git - nmh/commitdiff
spelling-fixes ( code-comments in .c, .h. .y ... )
authorklemens <ka7@github.com>
Sun, 29 May 2016 12:39:05 +0000 (14:39 +0200)
committerDavid Levine <levinedl@acm.org>
Sun, 29 May 2016 14:05:13 +0000 (10:05 -0400)
24 files changed:
NEWS
etc/scan.curses
h/fmt_scan.h
h/mh.h
h/mhparse.h
mts/smtp/smtp.c
mts/smtp/smtp.h
sbr/addrparse.y
sbr/addrsbr.c
sbr/arglist.c
sbr/context_replace.c
sbr/getcpy.c
sbr/getpass.c
sbr/m_getfld.c
sbr/mf.c
sbr/seq_read.c
test/common.sh.in
tools/Doxygen
uip/anno.c
uip/burst.c
uip/mhfixmsg.c
uip/scansbr.c
uip/sendsbr.c
uip/whatnowsbr.c

diff --git a/NEWS b/NEWS
index 4d4248d97d35b361d191fee051dc42f25d6c7a55..3aa5c3afd3a849ee030a7292568f71dbd9b89c96 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -52,7 +52,7 @@ The following are new features for the 1.6 release of nmh:
   message/rfc822 parts instead of messages formatted with RFC 934).
 - All proc entries (showproc, moreproc, etc) can now accept entries that
   contain spaces and shell metacharacters.  If found, such entries will
   message/rfc822 parts instead of messages formatted with RFC 934).
 - All proc entries (showproc, moreproc, etc) can now accept entries that
   contain spaces and shell metacharacters.  If found, such entries will
-  either be space-splitted or processed by /bin/sh.
+  either be space-split or processed by /bin/sh.
 - A new program, fmttest(1) is included to help debug format files.  See
   NOTABLE CHANGES below.
 - mhshow/mhstore now have support for RFC-2017 (access-type=url) for
 - A new program, fmttest(1) is included to help debug format files.  See
   NOTABLE CHANGES below.
 - mhshow/mhstore now have support for RFC-2017 (access-type=url) for
@@ -96,7 +96,7 @@ The following are new features for the 1.6 release of nmh:
 - mh-mime(7) now provides an introduction to nmh's MIME handling.
 - mhshow(1) will now by default display all text content under one pager,
   and display markers for non-text and non-inline content.  The content
 - mh-mime(7) now provides an introduction to nmh's MIME handling.
 - mhshow(1) will now by default display all text content under one pager,
   and display markers for non-text and non-inline content.  The content
-  markers are changeable via mh-format(5).  See NOTABLE CHANGES bellow.
+  markers are changeable via mh-format(5).  See NOTABLE CHANGES below.
 
 -----------------
 OBSOLETE FEATURES
 
 -----------------
 OBSOLETE FEATURES
@@ -233,7 +233,7 @@ pagers for each part as was in the past.  Non-displayed parts will be
 indicated using a marker string, which can be customized by a new
 mh-format(5) string.
 
 indicated using a marker string, which can be customized by a new
 mh-format(5) string.
 
-All nmh utilites now understand RFC 2231-encoded MIME parameters and
+All nmh utilities now understand RFC 2231-encoded MIME parameters and
 will automatically convert the encoded parameters into the native
 character set, when appropriate (again, assuming nmh was built with
 iconv support).
 will automatically convert the encoded parameters into the native
 character set, when appropriate (again, assuming nmh was built with
 iconv support).
index 53f6bb69801087e607994fdce3501dcb40929f5e..f2d5d137e571bf22ea0237c3d688f36a296aa4b2 100644 (file)
@@ -1,6 +1,6 @@
 %; scan.curses
 %;
 %; scan.curses
 %;
-%; This file shows how to use function escapes to enable hilighting
+%; This file shows how to use function escapes to enable highlighting
 %; sequences for terminals that have the appropriate entries in their
 %; termcap/terminfo files.  Also it goes into more detail on exactly
 %; what each line does.
 %; sequences for terminals that have the appropriate entries in their
 %; termcap/terminfo files.  Also it goes into more detail on exactly
 %; what each line does.
@@ -40,7 +40,7 @@
 %<(mymbox{from})%<{to}To:%14(unquote(decode(friendly{to})))%>%>\
 %<(zero)%17(unquote(decode(friendly{from})))%>  \
 %;
 %<(mymbox{from})%<{to}To:%14(unquote(decode(friendly{to})))%>%>\
 %<(zero)%17(unquote(decode(friendly{from})))%>  \
 %;
-%; Print out the subject and any of th mesage body that will fit on the
+%; Print out the subject and any of the message body that will fit on the
 %; rest of the line.  After that, print the terminal reset code to reset
 %; all of the attributes to the next line.
 %;
 %; rest of the line.  After that, print the terminal reset code to reset
 %; all of the attributes to the next line.
 %;
index 5f659d4cf0d633ba45ed6ba8b61d311c2e42ebaf..dfd26420d9491e1933eb5eb41460688dce953616 100644 (file)
@@ -6,7 +6,7 @@
 /*
  * This structure describes an "interesting" component.  It holds
  * the name & text from the component (if found) and one piece of
 /*
  * This structure describes an "interesting" component.  It holds
  * the name & text from the component (if found) and one piece of
- * auxilary info.  The structure for a particular component is located
+ * auxiliary info.  The structure for a particular component is located
  * by (open) hashing the name and using it as an index into the ptr array
  * "wantcomp".  All format entries that reference a particular component
  * point to its comp struct (so we only have to do component specific
  * by (open) hashing the name and using it as an index into the ptr array
  * "wantcomp".  All format entries that reference a particular component
  * point to its comp struct (so we only have to do component specific
@@ -129,7 +129,7 @@ void free_fs ();
  *               format engine.
  * reset       - If set to true, the format compiler will reset the
  *               component hash table.  The component hash table contains
  *               format engine.
  * reset       - If set to true, the format compiler will reset the
  *               component hash table.  The component hash table contains
- *               all of the references to message components refered to in
+ *               all of the references to message components referred to in
  *               the format instructions.  If you have multiple format
  *               strings that you want to compile and operate on the
  *               same message, this should be set to false.
  *               the format instructions.  If you have multiple format
  *               strings that you want to compile and operate on the
  *               same message, this should be set to false.
@@ -243,7 +243,7 @@ int fmt_addcompentry(char *component);
  *                component buffer is a newline, it will be separated
  *                from previous text by ",\n\t"; otherwise if the last
  *                character of the previous text is a newline it will
  *                component buffer is a newline, it will be separated
  *                from previous text by ",\n\t"; otherwise if the last
  *                character of the previous text is a newline it will
- *                simply be seperated by a "\t".  This unusual processing
+ *                simply be separated by a "\t".  This unusual processing
  *               is designed to handle the case where you have multiple
  *               headers with the same name (e.g.: multiple "cc:" headers,
  *               even though that isn't technically allowed in the RFCs).
  *               is designed to handle the case where you have multiple
  *               headers with the same name (e.g.: multiple "cc:" headers,
  *               even though that isn't technically allowed in the RFCs).
diff --git a/h/mh.h b/h/mh.h
index 4b3818c00d35d6c0b2e5a7a3643221a7b0bdce96..591321030cbad89ae0610e6b605633ecfde71b39 100644 (file)
--- a/h/mh.h
+++ b/h/mh.h
@@ -160,7 +160,7 @@ extern struct swit anoyes[];        /* standard yes/no switches */
  * general folder attributes
  */
 #define READONLY   (1<<0)      /* No write access to folder    */
  * general folder attributes
  */
 #define READONLY   (1<<0)      /* No write access to folder    */
-#define        SEQMOD     (1<<1)       /* folder's sequences modifed   */
+#define        SEQMOD     (1<<1)       /* folder's sequences modified   */
 #define        ALLOW_NEW  (1<<2)       /* allow the "new" sequence     */
 #define        OTHERS     (1<<3)       /* folder has other files       */
 #define        MODIFIED   (1<<4)       /* msh in-core folder modified  */
 #define        ALLOW_NEW  (1<<2)       /* allow the "new" sequence     */
 #define        OTHERS     (1<<3)       /* folder has other files       */
 #define        MODIFIED   (1<<4)       /* msh in-core folder modified  */
index 5d7668fb2393ab58cb88c97acb4b446cbb6b411c..08dd77c11180d8cad08f6248647ffd289502fecb 100644 (file)
@@ -503,7 +503,7 @@ char *get_param_value(PM pm, char replace);
  * inlineonly  - If true, only display MIME parts that are marked with
  *               a disposition of "inline" (includes parts that lack a
  *               Content-Disposition header).
  * inlineonly  - If true, only display MIME parts that are marked with
  *               a disposition of "inline" (includes parts that lack a
  *               Content-Disposition header).
- * markerform  - The name of a file containg mh-format(5) code used to
+ * markerform  - The name of a file containing mh-format(5) code used to
  *               display markers about non-displayed MIME parts.
  */
 void show_all_messages(CT *cts, int concat, int textonly, int inlineonly);
  *               display markers about non-displayed MIME parts.
  */
 void show_all_messages(CT *cts, int concat, int textonly, int inlineonly);
index 873e0cd8d5c59400fb46b15f8b929fed4ab2a4b5..8b89dec3e7fb00bf8845eda7b58f78bce43ab4a2 100644 (file)
@@ -96,7 +96,7 @@ static FILE *sm_wfp = NULL;
  */
 
 static sasl_conn_t *conn = NULL;       /* SASL connection state */
  */
 
 static sasl_conn_t *conn = NULL;       /* SASL connection state */
-static int sasl_complete = 0;          /* Has authentication succeded? */
+static int sasl_complete = 0;          /* Has authentication succeeded? */
 static sasl_ssf_t sasl_ssf;            /* Our security strength factor */
 static int maxoutbuf;                  /* Maximum crypto output buffer */
 static char *sasl_outbuffer;           /* SASL output buffer for encryption */
 static sasl_ssf_t sasl_ssf;            /* Our security strength factor */
 static int maxoutbuf;                  /* Maximum crypto output buffer */
 static char *sasl_outbuffer;           /* SASL output buffer for encryption */
@@ -1402,7 +1402,7 @@ tls_negotiate(void)
 #endif /* TLS_SUPPORT */
 
 /*
 #endif /* TLS_SUPPORT */
 
 /*
- * Convenience functions to replace occurences of fputs() and fputc()
+ * Convenience functions to replace occurrences of fputs() and fputc()
  */
 
 static int
  */
 
 static int
index 72caaccbee0de559d4f7e0cb524715e6239498c4..bd67775ca2d35850fe3248766e7a9c3bfd4a77d8 100644 (file)
@@ -256,7 +256,7 @@ char *rp_string (int);
 
 
 /*
 
 
 /*
- * The next three give the numeric value withing the field
+ * The next three give the numeric value within the field
  */
 
 /* get the basic part right-shifted */
  */
 
 /* get the basic part right-shifted */
index 7121545d480e476418631ddaf342ea5edb0c8818..634a5ebde78e4f0888b1697e0fac078840a40723 100644 (file)
@@ -20,7 +20,7 @@
  *
  * COMMENT is a comment string, which is printable ASCII characters except
  * for '(', ')', and '\'.  Uses same quoting rules as QSTRING.  To make
  *
  * COMMENT is a comment string, which is printable ASCII characters except
  * for '(', ')', and '\'.  Uses same quoting rules as QSTRING.  To make
- * the grammer slightly less conflict-happy, COMMENT must include any FWS
+ * the grammar slightly less conflict-happy, COMMENT must include any FWS
  * in front or behind of it (simply have it eaten in the lexer).
  *
  * Everything else is a SPECIAL, which is returned directly.  These are
  * in front or behind of it (simply have it eaten in the lexer).
  *
  * Everything else is a SPECIAL, which is returned directly.  These are
@@ -184,7 +184,7 @@ atom:
 
 /*
  * Making dot-atom work was a little confusing; I finally handled it by
 
 /*
  * Making dot-atom work was a little confusing; I finally handled it by
- * defining "dot_atom_text" as having two or more ATEXTs separted by
+ * defining "dot_atom_text" as having two or more ATEXTs separated by
  * '.', and defining dot_atom as allowing a single atom.
  */
 dot_atom:
  * '.', and defining dot_atom as allowing a single atom.
  */
 dot_atom:
index 23a7cb4cbbd4d27adbfbcda813993cf3a36a126f..0196b2176d91f43bddf319feb4ad4a90600be9a2 100644 (file)
@@ -49,7 +49,7 @@
 
    If an explicit host is not present, then MH checks for a bang to indicate
    an explicit UUCP-style address.  If so, this is noted.  If not, the host is
 
    If an explicit host is not present, then MH checks for a bang to indicate
    an explicit UUCP-style address.  If so, this is noted.  If not, the host is
-   defaulted, typically to the local host.  The lack of an explict host is
+   defaulted, typically to the local host.  The lack of an explicit host is
    also noted.
 
    If an explicit 822-style host is present, then MH checks to see if it
    also noted.
 
    If an explicit 822-style host is present, then MH checks to see if it
index f40f1e89f786bd92a93bb384547137d3caee1da3..37dcec093ce3115ceb497cb0c7f41def001bf1f9 100644 (file)
@@ -68,7 +68,7 @@ argsplit(char *command, char **file, int *argp)
     }
 
     /*
     }
 
     /*
-     * Spaces, but no shell metacharacters; space-split into seperate
+     * Spaces, but no shell metacharacters; space-split into separate
      * arguments
      */
 
      * arguments
      */
 
index bceb9dfdecde97f018573b42b75fc3bcc9886507..45d5a31d6563cf92c143572d39a401f9f1f39722 100644 (file)
@@ -17,7 +17,7 @@ context_replace (char *key, char *value)
     register struct node *np;
 
     /*
     register struct node *np;
 
     /*
-     * If list is emtpy, allocate head of profile/context list.
+     * If list is empty, allocate head of profile/context list.
      */
     if (!m_defs) {
        m_defs = (struct node *) mh_xmalloc (sizeof(*np));
      */
     if (!m_defs) {
        m_defs = (struct node *) mh_xmalloc (sizeof(*np));
index 846d33a954c2ac2433795cd8d49215a9e098f733..4d99a8036164747ecdd6e031f05d193a9d9663fa 100644 (file)
@@ -2,7 +2,7 @@
 /*
  * getcpy.c -- copy a string in managed memory
  *
 /*
  * getcpy.c -- copy a string in managed memory
  *
- * THIS IS OBSOLETE.  NEED TO REPLACE ALL OCCURENCES
+ * THIS IS OBSOLETE.  NEED TO REPLACE ALL OCCURRENCES
  * OF GETCPY WITH STRDUP.  BUT THIS WILL REQUIRE
  * CHANGING PARTS OF THE CODE TO DEAL WITH NULL VALUES.
  *
  * OF GETCPY WITH STRDUP.  BUT THIS WILL REQUIRE
  * CHANGING PARTS OF THE CODE TO DEAL WITH NULL VALUES.
  *
index 95e9178c1c866a4c6236e7b8a63827d294a12528..865f231b9876fdab81e66e4d26ca1771c68a6327 100644 (file)
@@ -36,7 +36,7 @@
 
 /* We don't use MAX_PASS here because the maximum password length on a remote
    POP daemon will have nothing to do with the length on our OS.  256 is
 
 /* We don't use MAX_PASS here because the maximum password length on a remote
    POP daemon will have nothing to do with the length on our OS.  256 is
-   arbitrary but hopefully big enough to accomodate everyone. */
+   arbitrary but hopefully big enough to accommodate everyone. */
 #define MAX_PASSWORD_LEN 256
 
 #ifndef TCSANOW
 #define MAX_PASSWORD_LEN 256
 
 #ifndef TCSANOW
index b09605474e44d88d4f83970585a107dd3bfaa31d..9315059d83ead0e4e5f8e6b0fcee27c5910b1fd9 100644 (file)
@@ -90,7 +90,7 @@
    be parsed as well.  Unfortunately the speed issue finally caught up with
    us since this routine is at the very heart of MH.
 
    be parsed as well.  Unfortunately the speed issue finally caught up with
    us since this routine is at the very heart of MH.
 
-   To speed things up considerably, the routine Eom() was made an auxilary
+   To speed things up considerably, the routine Eom() was made an auxiliary
    function called by the macro eom().  Unless we are bursting a maildrop,
    the eom() macro returns FALSE saying we aren't at the end of the
    message.
    function called by the macro eom().  Unless we are bursting a maildrop,
    the eom() macro returns FALSE saying we aren't at the end of the
    message.
index d99d2b387d8ad2d245751d32ede9c34d742fcc42..c11b0c10e8d87f2029f7567eb0d7a096bb33016e 100644 (file)
--- a/sbr/mf.c
+++ b/sbr/mf.c
@@ -65,7 +65,7 @@ isat (const char *p)
  * getadrx() implements a partial 822-style address parser.  The parser
  * is neither complete nor correct.  It does however recognize nearly all
  * of the 822 address syntax.  In addition it handles the majority of the
  * getadrx() implements a partial 822-style address parser.  The parser
  * is neither complete nor correct.  It does however recognize nearly all
  * of the 822 address syntax.  In addition it handles the majority of the
- * 733 syntax as well.  Most problems arise from trying to accomodate both.
+ * 733 syntax as well.  Most problems arise from trying to accommodate both.
  *
  * In terms of 822, the route-specification in 
  *
  *
  * In terms of 822, the route-specification in 
  *
index 9b071a4e174bb42c0905ffe28a7576612ff631c5..759dba491f89e6edfa0a8c1fc660b46ca40bd579 100644 (file)
@@ -186,7 +186,7 @@ seq_init (struct msgs *mp, char *name, char *field)
      * Search for this sequence name to see if we've seen
      * it already.  If we've seen this sequence before,
      * then clear the bit for this sequence from all the
      * Search for this sequence name to see if we've seen
      * it already.  If we've seen this sequence before,
      * then clear the bit for this sequence from all the
-     * mesages in this folder.
+     * messages in this folder.
      */
     for (i = 0; i < svector_size (mp->msgattrs); i++) {
        if (!strcmp (svector_at (mp->msgattrs, i), name)) {
      */
     for (i = 0; i < svector_size (mp->msgattrs); i++) {
        if (!strcmp (svector_at (mp->msgattrs, i), name)) {
index 29e880198393b974a69c2b9a5abbf7154ca19f36..74e5f63256d52a6f18a691738e79d9776e564aa3 100644 (file)
@@ -170,7 +170,7 @@ prepare_space() {
 #### Optional arguments:
 ####   'keep first' -- first file is removed unless this is present.
 ####   'ignore space' -- spacing differences will not be considered
 #### Optional arguments:
 ####   'keep first' -- first file is removed unless this is present.
 ####   'ignore space' -- spacing differences will not be considered
-####        signficant, emulating GNU diff -w.  It is assumed that the
+####        significant, emulating GNU diff -w.  It is assumed that the
 ####        first file has already been run through prepare_space.
 ####   ':' <test name> -- will print '<test name>' in the failure message,
 ####        to make it easier to tell which of multiple tests has failed.
 ####        first file has already been run through prepare_space.
 ####   ':' <test name> -- will print '<test name>' in the failure message,
 ####        to make it easier to tell which of multiple tests has failed.
index d72f12816927138fe62123560c48a7ce1bcb97ed..b06f6b8f4c26573e4556e73c36c6427fa62837fd 100644 (file)
@@ -1730,7 +1730,7 @@ UML_LOOK               = NO
 # the class node. If there are many fields or methods and many nodes the
 # graph may become too big to be useful. The UML_LIMIT_NUM_FIELDS
 # threshold limits the number of items for each type to make the size more
 # the class node. If there are many fields or methods and many nodes the
 # graph may become too big to be useful. The UML_LIMIT_NUM_FIELDS
 # threshold limits the number of items for each type to make the size more
-# managable. Set this to 0 for no limit. Note that the threshold may be
+# manageable. Set this to 0 for no limit. Note that the threshold may be
 # exceeded by 50% before the limit is enforced.
 
 UML_LIMIT_NUM_FIELDS   = 10
 # exceeded by 50% before the limit is enforced.
 
 UML_LIMIT_NUM_FIELDS   = 10
index 26706edac514e8c51f364104cb2915c30c031e1b..7a91f25195f48882a3112ac8439ff7fab7772b55 100644 (file)
@@ -34,7 +34,7 @@
  *     option is specified, only the last path name component of each field
  *     body is output.  The entire field body is output if the -text option
  *     is used; the contents of the -text argument are ignored.  If the -list
  *     option is specified, only the last path name component of each field
  *     body is output.  The entire field body is output if the -text option
  *     is used; the contents of the -text argument are ignored.  If the -list
- *     option is used in conjuction with the new -number option described
+ *     option is used in conjunction with the new -number option described
  *     below, each line is numbered starting with 1.  A tab separates the
  *     number from the field body.
  *
  *     below, each line is numbered starting with 1.  A tab separates the
  *     number from the field body.
  *
index 5375f8a17233775664b868c64060e9a6f7a5cac0..418fb909b9b8274a90278dd0c317e259e63ea4fd 100644 (file)
@@ -287,7 +287,7 @@ find_delim (int msgnum, struct smsg *smsgs, int *mimesw)
        /*
         * Read in lines until we get to a message delimiter.
         *
        /*
         * Read in lines until we get to a message delimiter.
         *
-        * Previously we checked to make sure the preceeding line and
+        * Previously we checked to make sure the preceding line and
         * next line was a newline.  That actually does not comply with
         * RFC 934, so make sure we break on a message delimiter even
         * if the previous character was NOT a newline.
         * next line was a newline.  That actually does not comply with
         * RFC 934, so make sure we break on a message delimiter even
         * if the previous character was NOT a newline.
@@ -503,7 +503,7 @@ burst (struct msgs **mpp, int msgnum, struct smsg *smsgs, int numburst,
 #define S4  3
 
 /*
 #define S4  3
 
 /*
- * Copy a mesage which is being burst out of a digest.
+ * Copy a message which is being burst out of a digest.
  * It will remove any "dashstuffing" in the message.
  */
 
  * It will remove any "dashstuffing" in the message.
  */
 
index 65abd513e7a95d25a2f67c8838a2d6e9c71ccae1..cd169dff3f00e96ad7cf9ecb2fa54d2be47aaca4 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * mhfixmsg.c -- rewrite a message with various tranformations
+ * mhfixmsg.c -- rewrite a message with various transformations
  *
  * This code is Copyright (c) 2002 and 2013, by the authors of nmh.
  * See the COPYRIGHT file in the root directory of the nmh
  *
  * This code is Copyright (c) 2002 and 2013, by the authors of nmh.
  * See the COPYRIGHT file in the root directory of the nmh
index 7391a3bd1403819095ea2530d166316e0313d9f6..2ef32c4e1adcbddc4827bb6d972eb01b9670739f 100644 (file)
@@ -242,7 +242,7 @@ scan (FILE *inb, int innum, int outnum, char *nfs, int width, int curflg,
                  * The previous code here used to call m_getfld() using
                  * pointers to the underlying output stdio buffers to
                  * avoid the extra copy.  Tests by Markus Schnalke show
                  * The previous code here used to call m_getfld() using
                  * pointers to the underlying output stdio buffers to
                  * avoid the extra copy.  Tests by Markus Schnalke show
-                 * no noticable performance loss on larger mailboxes
+                 * no noticeable performance loss on larger mailboxes
                  * if we incur an extra copy, and messing around with
                  * internal stdio buffers is becoming more and more
                  * unportable as times go on.  So from now on just deal
                  * if we incur an extra copy, and messing around with
                  * internal stdio buffers is becoming more and more
                  * unportable as times go on.  So from now on just deal
index 07c7f9741c406ad5ca80a893d9aba1c894543dba..6bfc548e7270be61318fe94c176b493a18a265e7 100644 (file)
@@ -194,7 +194,7 @@ splitmsg (char **vec, int vecp, char *program, char *drft,
                     * of message/partials.  For the "Subject" header
                     * field, we also record it, so that a modified
                     * version of it, can be copied to the header
                     * of message/partials.  For the "Subject" header
                     * field, we also record it, so that a modified
                     * version of it, can be copied to the header
-                    * of each messsage/partial in the collection.
+                    * of each message/partial in the collection.
                     */
                    if (!strcasecmp (name, "Subject")) {
                        size_t sublen;
                     */
                    if (!strcasecmp (name, "Subject")) {
                        size_t sublen;
index 62320f9447214e82ae15c129ba3deb9b97bcdb4f..303f1b8682c957af97576cdd54bf8ae70c4d2028 100644 (file)
@@ -1287,7 +1287,7 @@ removefile (char *drft)
 
 
 /*
 
 
 /*
- * Return 1 if we already have a MIME-Verson header, 0 otherwise.
+ * Return 1 if we already have a MIME-Version header, 0 otherwise.
  */
 
 static int
  */
 
 static int