Added -messageid switch to send(1) and post(8). This allows selection
[mmh] / uip / mhbuildsbr.c
index 93f1647..0ebdaba 100644 (file)
@@ -41,8 +41,6 @@ extern int listsw;
 extern int rfc934sw;
 extern int contentidsw;
 
-extern int endian;     /* mhmisc.c */
-
 /* cache policies */
 extern int rcachesw;   /* mhcachesbr.c */
 extern int wcachesw;   /* mhcachesbr.c */
@@ -97,7 +95,7 @@ static int do_direct(void)
 
 static void directive_onoff(int onoff)
 {
-    if (directives_index >= sizeof(directives_stack)) {
+    if (directives_index >= sizeof(directives_stack) - 1) {
        fprintf(stderr, "mhbuild: #on/off overflow, continuing\n");
        return;
     }
@@ -897,20 +895,19 @@ use_forw:
 static void
 set_id (CT ct, int top)
 {
-    char msgid[BUFSIZ];
+    char contentid[BUFSIZ];
     static int partno;
     static time_t clock = 0;
     static char *msgfmt;
 
     if (clock == 0) {
        time (&clock);
-       snprintf (msgid, sizeof(msgid), "<%d.%ld.%%d@%s>\n",
-               (int) getpid(), (long) clock, LocalName(1));
+       snprintf (contentid, sizeof(contentid), "%s\n", message_id (clock, 1));
        partno = 0;
-       msgfmt = getcpy(msgid);
+       msgfmt = getcpy(contentid);
     }
-    snprintf (msgid, sizeof(msgid), msgfmt, top ? 0 : ++partno);
-    ct->c_id = getcpy (msgid);
+    snprintf (contentid, sizeof(contentid), msgfmt, top ? 0 : ++partno);
+    ct->c_id = getcpy (contentid);
 }