Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!mips!apple!agate!darkstar!ucscb.UCSC.EDU!james From: james@ucscb.UCSC.EDU (James C. Bohem) Newsgroups: comp.mail.mush Subject: Re: Need Help with Mush 7.2.2 and SCO UNIX submit. Message-ID: <15112@darkstar.ucsc.edu> Date: 27 Apr 91 20:58:36 GMT References: <1991Apr24.053145.1083@rfengr.com> Sender: usenet@darkstar.ucsc.edu Organization: University of California, Santa Cruz; Open Access Computing Lines: 267 In article <1991Apr24.053145.1083@rfengr.com> rfarris@rfengr.com (Rick Farris) writes: >My question is about submit. Mush appears to be working well with >one significant exception: when I try to send mail, submit fails with >a "cannot create text file" error and dumps the outgoing message >into dead.letter. Does anyone have any idea what I might do >to fix this? I'm using the standard MMDF, as supplied with SCO UNIX. >(And yes, I added the reference to libmmdf.a to the makefile.) Here are patches for 7.2.0 (I'll send out 7.2.2 just as soon as I have time to build it...) for SCO Unix to use execmail rather than submit, and fix the locking problem with EACCES(S). You will need to add -DSCOUNIX to your makefile. Sorry if these aren't in exact patch format, but they are two context diffs, and small ones. *** config.h Sun Nov 11 12:56:51 1990 --- config.h-dist Sun Oct 21 19:24:43 1990 *************** *** 1,14 **** - /* config.h 1.1 (c) copyright 1986 (Dan Heller) */ /* Default names and locations for files */ #define MAILRC ".mushrc" #define ALTERNATE_RC ".mailrc" ! #define DEFAULT_RC "/usr/sco/lib/mush/mushrc" ! #define ALT_DEF_RC "/usr/lib/mail/mailrc" ! #define COMMAND_HELP "/usr/sco/lib/mush/cmd_help" #ifdef SUNTOOL ! # define TOOL_HELP "/usr/sco/lib/mush/tool_help" #endif /* SUNTOOL */ #define ALTERNATE_HOME "/tmp" /* Path must be read/write to EVERYONE */ #define EDFILE ".edXXXXXX" /* file/pathname added to user's "home" */ --- 1,13 ---- /* config.h 1.1 (c) copyright 1986 (Dan Heller) */ /* Default names and locations for files */ #define MAILRC ".mushrc" #define ALTERNATE_RC ".mailrc" ! #define DEFAULT_RC "/usr/lib/Mushrc" ! #define ALT_DEF_RC "/usr/lib/Mail.rc" ! #define COMMAND_HELP "/usr/lib/cmd_help" #ifdef SUNTOOL ! # define TOOL_HELP "/usr/lib/tool_help" #endif /* SUNTOOL */ #define ALTERNATE_HOME "/tmp" /* Path must be read/write to EVERYONE */ #define EDFILE ".edXXXXXX" /* file/pathname added to user's "home" */ *************** *** 34,67 **** /* #define TIMEZONE T->tm_zone /**/ #define USA /**/ - /* mail delivery system macros and defines... */ /* * If you are using MMDF, define MMDF here. */ ! #if defined(M_UNIX) && defined(M_XENIX) ! # define MMDF ! #endif /* M_UNIX && M_XENIX */ ! #ifdef MMDF /* * If MMDF delivers mail the user's home directory, define HOMEMAIL. * Also check the definition of the delivery file name MAILFILE, below. */ ! /* #define HOMEMAIL */ ! /* #define MAIL_DELIVERY "exec /usr/mmdf/bin/submit -mlnr" ! /* #define VERBOSE_ARG "Ww" ! /* #define MTA_EXIT 9 /* exit status for successful submit */ ! /* #else /* MMDF */ /* * If you are not using MMDF, check these definitions. */ ! #define MAIL_DELIVERY "/usr/lib/mail/execmail" ! #if defined(MMDF) && defined(M_UNIX) /* execmail under sco unix understands */ ! # define VERBOSE_ARG "-v" /* undef if none exists */ ! # define METOO_ARG "-m" /* man sendmail for more info. */ ! #endif #define MTA_EXIT 0 /* exit status for successful mail delivery */ #endif /* MMDF */ --- 33,60 ---- /* #define TIMEZONE T->tm_zone /**/ #define USA /**/ /* mail delivery system macros and defines... */ /* * If you are using MMDF, define MMDF here. */ ! /* #define MMDF /**/ #ifdef MMDF /* * If MMDF delivers mail the user's home directory, define HOMEMAIL. * Also check the definition of the delivery file name MAILFILE, below. */ ! /* #define HOMEMAIL /**/ ! #define MAIL_DELIVERY "exec /usr/mmdf/bin/submit -mlnr" ! #define VERBOSE_ARG "Ww" ! #define MTA_EXIT 9 /* exit status for successful submit */ ! #else /* MMDF */ /* * If you are not using MMDF, check these definitions. */ ! #define MAIL_DELIVERY "/usr/lib/sendmail -i" /* "-i" works like "-oi" */ ! #define VERBOSE_ARG "-v" /* undef if none exists */ ! #define METOO_ARG "-m" /* man sendmail for more info. */ #define MTA_EXIT 0 /* exit status for successful mail delivery */ #endif /* MMDF */ *************** *** 87,103 **** * sophisticated locking modules provided with MMDF. Remember to alter the * Makefile so as to access the MMDF library at the link step. */ ! /* #define LCKDFLDIR "/usr/spool/mail" */ #endif /* MMDF */ /* If your mailer does not understand commas between addresses, you should * define NO_COMMAS. This includes pre-3.0 smail and default MTAs used on * xenix, and sys-v systems. ! * This does NOT apply to MMDF or sendmail. */ ! #ifndef MMDF #define NO_COMMAS /**/ ! #endif /* * Most RFC822 compliant mailers (sendmail) will add the headers From: --- 80,100 ---- * sophisticated locking modules provided with MMDF. Remember to alter the * Makefile so as to access the MMDF library at the link step. */ ! /* #define LCKDFLDIR "/usr/spool/mmdf/lockfiles" /* (for example) */ ! #else /* !MMDF */ ! #ifdef M_XENIX ! #define DOT_LOCK /* DOT_LOCK should be used for SCO Xenix */ ! #endif /* M_XENIX */ #endif /* MMDF */ /* If your mailer does not understand commas between addresses, you should * define NO_COMMAS. This includes pre-3.0 smail and default MTAs used on * xenix, and sys-v systems. ! * This does NOT apply to MMDF or sendmail, in most cases. */ ! #ifdef SUN_4_1 /* SunOS 4.1 has warped sendmail.cf */ #define NO_COMMAS /**/ ! #endif /* SUN_4_1 /* * Most RFC822 compliant mailers (sendmail) will add the headers From: *************** *** 114,120 **** /* Headers that will NOT be included when forwarding mail */ #define IGNORE_ON_FWD "status,priority" /* comma or space separated list */ ! #define MAXMSGS 2000 /* maximum number of messages we can read */ #define HDRSIZ BUFSIZ /* This should not be < BUFSIZ! (but can be >) */ /* If your system supports the vprintf() functions, True for sys-v and --- 111,117 ---- /* Headers that will NOT be included when forwarding mail */ #define IGNORE_ON_FWD "status,priority" /* comma or space separated list */ ! #define MAXMSGS 1000 /* maximum number of messages we can read */ #define HDRSIZ BUFSIZ /* This should not be < BUFSIZ! (but can be >) */ /* If your system supports the vprintf() functions, True for sys-v and *************** *** 135,141 **** #define LPR "lpr" #define SIGNATURE ".signature" #ifdef HOMEMAIL ! #define MAILFILE ".mailbox" /* or whatever */ #else /* HOMEMAIL */ #define MAILDIR "/usr/spool/mail" #endif /* HOMEMAIL */ --- 132,138 ---- #define LPR "lpr" #define SIGNATURE ".signature" #ifdef HOMEMAIL ! #define MAILFILE "Mailbox" /* or whatever */ #else /* HOMEMAIL */ #define MAILDIR "/usr/spool/mail" #endif /* HOMEMAIL */ *************** *** 148,162 **** #define DEF_FOLDER "~/Mail" /* default Mail folder */ #define DEF_MBOX "~/mbox" /* default mbox */ #define DEF_INDENT_STR "> " /* indent included mail */ ! #define DEF_PRINTER "" #define DEF_ESCAPE "~" #define DEF_HDR_FMT "%25f %7d (%l/%c) \"%s\"" /* default hdr_format */ #define DEF_CURSES_HELP \ "display save mail reply next-msg back-msg screen-next screen-back" - - #ifdef M_XENIX - # ifndef MMDF - # define DOT_LOCK /* why isn't this defined? */ - # endif /* !MMDF */ - # define quit quitter - #endif /* M_XENIX */ --- 145,152 ---- #define DEF_FOLDER "~/Mail" /* default Mail folder */ #define DEF_MBOX "~/mbox" /* default mbox */ #define DEF_INDENT_STR "> " /* indent included mail */ ! #define DEF_PRINTER "lp" #define DEF_ESCAPE "~" #define DEF_HDR_FMT "%25f %7d (%l/%c) \"%s\"" /* default hdr_format */ #define DEF_CURSES_HELP \ "display save mail reply next-msg back-msg screen-next screen-back" *** mail.c Sun Nov 11 14:11:01 1990 --- mail.c.00 Sun Nov 11 14:08:29 1990 *************** *** 1110,1116 **** if (!istool && (ison(flags, VERBOSE) || do_set(set_options, "verbose"))) { turnon(flags, VERBOSE); /* prevent fork when "verbose" has changed */ oldchld = signal(SIGCHLD, SIG_DFL); /* let pclose() do the wait() */ ! #if defined(MMDF) && !defined(SCOUNIX) b = &buf[strlen(sprintf(buf, "%s%s", p, VERBOSE_ARG))]; #else /* MMDF */ b = &buf[strlen(sprintf(buf, "%s %s", p, VERBOSE_ARG))]; --- 1110,1116 ---- if (!istool && (ison(flags, VERBOSE) || do_set(set_options, "verbose"))) { turnon(flags, VERBOSE); /* prevent fork when "verbose" has changed */ oldchld = signal(SIGCHLD, SIG_DFL); /* let pclose() do the wait() */ ! #ifdef MMDF b = &buf[strlen(sprintf(buf, "%s%s", p, VERBOSE_ARG))]; #else /* MMDF */ b = &buf[strlen(sprintf(buf, "%s %s", p, VERBOSE_ARG))]; *************** *** 1294,1300 **** return fork_pid; } ! #if defined(MMDF) && !defined(SCOUNIX) *(addr_list-1) = '\0'; #endif /* MMDF */ if (debug > 2) { --- 1294,1300 ---- return fork_pid; } ! #ifdef MMDF *(addr_list-1) = '\0'; #endif /* MMDF */ if (debug > 2) { *************** *** 1314,1320 **** if (ison(flags, VERBOSE)) wprint("Sending letter ... "), (void) fflush(stdout); ! #if defined(MMDF) && !defined(SCOUNIX) /* give address list to submit */ for (p = addr_list; *p && (p = any(p, ",<")); p++) if (*p == ',') --- 1314,1320 ---- if (ison(flags, VERBOSE)) wprint("Sending letter ... "), (void) fflush(stdout); ! #ifdef MMDF /* give address list to submit */ for (p = addr_list; *p && (p = any(p, ",<")); p++) if (*p == ',')