Allow whatnow to accept "l" as an abbreviation for "list", instead of
[mmh] / uip / mhlistsbr.c
index 42e0b05..a4e831a 100644 (file)
@@ -3,7 +3,9 @@
  * mhlistsbr.c -- routines to list information about the
  *             -- contents of MIME messages
  *
- * $Id$
+ * This code is Copyright (c) 2002, by the authors of nmh.  See the
+ * COPYRIGHT file in the root directory of the nmh distribution for
+ * complete copyright information.
  */
 
 #include <h/mh.h>
 #include <h/signals.h>
 #include <errno.h>
 #include <signal.h>
-#include <mts/generic/mts.h>
+#include <h/mts.h>
 #include <h/tws.h>
 #include <h/mime.h>
 #include <h/mhparse.h>
-
-extern int errno;
+#include <h/utils.h>
 
 /* mhmisc.c */
 int part_ok (CT, int);
@@ -205,18 +206,26 @@ list_content (CT ct, int toplevel, int realsize, int verbose, int debug)
 
     printf ("\n");
 
-    /*
-     * If verbose, print any RFC-822 comments in the
-     * Content-Type line.
-     */
-    if (verbose && ci->ci_comment) {
-       char *dp;
+    if (verbose) {
+       char **ap, **ep;
+       CI ci = &ct->c_ctinfo;
 
-       dp = trimcpy (cp = add (ci->ci_comment, NULL));
-       free (cp);
-       snprintf (buffer, sizeof(buffer), "(%s)", dp);
-       free (dp);
-       printf (LSTFMT2d2, buffer);
+       for (ap = ci->ci_attrs, ep = ci->ci_values; *ap; ap++, ep++)
+           printf ("\t     %s=\"%s\"\n", *ap, *ep);
+
+       /*
+        * If verbose, print any RFC-822 comments in the
+        * Content-Type line.
+        */
+       if (ci->ci_comment) {
+           char *dp;
+
+           dp = trimcpy (cp = add (ci->ci_comment, NULL));
+           free (cp);
+           snprintf (buffer, sizeof(buffer), "(%s)", dp);
+           free (dp);
+           printf (LSTFMT2d2, buffer);
+       }
     }
 
     if (debug)
@@ -260,7 +269,8 @@ list_debug (CT ct)
 
     /* print internal flags for type/subtype */
     fprintf (stderr, "    type 0x%x subtype 0x%x params 0x%x\n",
-            ct->c_type, ct->c_subtype, (unsigned int) ct->c_ctparams);
+            ct->c_type, ct->c_subtype,
+            (unsigned int)(unsigned long) ct->c_ctparams);
 
     fprintf (stderr, "    showproc  \"%s\"\n", empty (ct->c_showproc));
     fprintf (stderr, "    termproc  \"%s\"\n", empty (ct->c_termproc));
@@ -272,7 +282,7 @@ list_debug (CT ct)
 
     /* print internal flags for transfer encoding */
     fprintf (stderr, "    transfer encoding 0x%x params 0x%x\n",
-            ct->c_encoding, (unsigned int) ct->c_cefile);
+            ct->c_encoding, (unsigned int)(unsigned long) ct->c_cefile);
 
     /* print Content-ID */
     if (ct->c_id)
@@ -283,7 +293,7 @@ list_debug (CT ct)
        fprintf (stderr, "  %s:%s", DESCR_FIELD, ct->c_descr);
 
     fprintf (stderr, "    read fp 0x%x file \"%s\" begin %ld end %ld\n",
-            (unsigned int) ct->c_fp, empty (ct->c_file),
+            (unsigned int)(unsigned long) ct->c_fp, empty (ct->c_file),
             ct->c_begin, ct->c_end);
 
     /* print more information about transfer encoding */
@@ -392,19 +402,15 @@ list_external (CT ct, int toplevel, int realsize, int verbose, int debug)
 
 /*
  * list content information for type "application"
+ * This no longer needs to be a separate function.  It used to
+ * produce some output with verbose enabled, but that has been
+ * moved to list_content ().
  */
 
 static int
 list_application (CT ct, int toplevel, int realsize, int verbose, int debug)
 {
     list_content (ct, toplevel, realsize, verbose, debug);
-    if (verbose) {
-       char **ap, **ep;
-       CI ci = &ct->c_ctinfo;
-
-       for (ap = ci->ci_attrs, ep = ci->ci_values; *ap; ap++, ep++)
-           printf ("\t     %s=\"%s\"\n", *ap, *ep);
-    }
 
     return OK;
 }
@@ -422,7 +428,8 @@ list_encoding (CT ct)
 
     if ((ce = ct->c_cefile))
        fprintf (stderr, "    decoded fp 0x%x file \"%s\"\n",
-                (unsigned int) ce->ce_fp, ce->ce_file ? ce->ce_file : "");
+                (unsigned int)(unsigned long) ce->ce_fp,
+                ce->ce_file ? ce->ce_file : "");
 
     return OK;
 }