X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fmhbuild.c;h=9d9f553a3fe492e88d339c9a2ea6d9e8fe5db705;hp=63204a50ceb5323ba6d9131069dc7d09cfa178d6;hb=d8916ff5d389de5ab225cd6f40aeda1b285d0f28;hpb=8f4c5da8971926f7eccc912f7998c343aef3c33b diff --git a/uip/mhbuild.c b/uip/mhbuild.c index 63204a5..9d9f553 100644 --- a/uip/mhbuild.c +++ b/uip/mhbuild.c @@ -3,6 +3,10 @@ * mhbuild.c -- expand/translate MIME composition files * * $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 @@ -11,11 +15,12 @@ #include #include #include -#include +#include #include #include #include #include +#include #ifdef HAVE_SYS_WAIT_H # include @@ -54,20 +59,21 @@ static struct swit switches[] = { { "rcache policy", 0 }, #define WCACHESW 15 { "wcache policy", 0 }, -#define VERSIONSW 16 +#define CONTENTIDSW 16 + { "contentid", 0 }, +#define NCONTENTIDSW 17 + { "nocontentid", 0 }, +#define VERSIONSW 18 { "version", 0 }, -#define HELPSW 17 +#define HELPSW 19 { "help", 0 }, -#define DEBUGSW 18 +#define DEBUGSW 20 { "debug", -5 }, { NULL, 0 } }; -extern int errno; - /* mhbuildsbr.c */ -extern int checksw; extern char *tmp; /* directory to place temp files */ /* mhcachesbr.c */ @@ -82,6 +88,7 @@ int verbosw = 0; int ebcdicsw = 0; int listsw = 0; int rfc934sw = 0; +int contentidsw = 1; /* * Temporary files @@ -92,6 +99,7 @@ static int unlink_infile = 0; static char outfile[BUFSIZ]; static int unlink_outfile = 0; +static void unlink_done (int) NORETURN; /* mhbuildsbr.c */ CT build_mime (char *); @@ -118,6 +126,8 @@ main (int argc, char **argv) CT ct, cts[2]; FILE *fp; + done=unlink_done; + #ifdef LOCALE setlocale(LC_ALL, ""); #endif @@ -216,6 +226,13 @@ main (int argc, char **argv) sizesw = 0; continue; + case CONTENTIDSW: + contentidsw = 1; + continue; + case NCONTENTIDSW: + contentidsw = 0; + continue; + case VERBSW: verbosw++; continue; @@ -363,12 +380,13 @@ main (int argc, char **argv) unlink_outfile = 0; free_content (ct); - return done (0); + done (0); + return 1; } -int -done (int status) +static void +unlink_done (int status) { /* * Check if we need to remove stray @@ -380,5 +398,4 @@ done (int status) unlink (outfile); exit (status); - return 1; /* dead code to satisfy the compiler */ }