From xyzzy!rti!mcnc!rutgers!tut.cis.ohio-state.edu!ucbvax!pasteur!cory.Berkeley.EDU!dheller Sat Mar 18 21:32:40 EST 1989
Article 1618 of comp.sources.bugs:
Path: xyzzy!rti!mcnc!rutgers!tut.cis.ohio-state.edu!ucbvax!pasteur!cory.Berkeley.EDU!dheller
>From: dheller@cory.Berkeley.EDU (Dan Heller)
Newsgroups: comp.sources.bugs
Subject: Mush is being posted
Summary: MMDF users only!
Keywords: MMDF
Message-ID: <11200@pasteur.Berkeley.EDU>
Date: 17 Mar 89 07:41:37 GMT
Sender: news@pasteur.Berkeley.EDU
Reply-To: dheller@cory.Berkeley.EDU (Dan Heller)
Organization: University of California, Berkeley
Lines: 32


As most of you may have noticed, Mush is being posted to comp.sources.unix
right now.  As you may or may not know, mush works with many MTA's (such
as sendmail, smail, etc..) as well as MMDF.  However, there is a patch
that needs to be applied for users of MMDF only.  While this patch will
be made available to the net when the first "official" patch is made,
I am providing it here because otherwise, MMDF sites won't be able to
compile mush.  If you don't run MMDF, you can ignore this patch.

*** /tmp/,RCSt1025023	Tue Mar 14 15:22:05 1989
--- file.c	Tue Mar 14 15:21:54 1989
***************
*** 59,67 ****
  	    (void) sprintf(buf, "%s/%s", MAILDIR, p);
  #else /* HOMEMAIL */
  	{
! 	    char *p2 = do_set(set_options, "home");
! 	    (void) sprintf(buf, "%s/%s", p2 ? p2 : ALTERNATE_HOME, MAILFILE);
! 	} else {
  	    int t_isdir = *isdir;
  	    char *t, tmp[256];
  	    (void) sprintf(tmp, "~%s/%s", p, MAILFILE);
--- 59,65 ----
  	    (void) sprintf(buf, "%s/%s", MAILDIR, p);
  #else /* HOMEMAIL */
  	{
! 	    /* If it's NOT us, recur to get the path for ~user/MAILFILE */
  	    int t_isdir = *isdir;
  	    char *t, tmp[256];
  	    (void) sprintf(tmp, "~%s/%s", p, MAILFILE);

Dan Heller	<island!argv@sun.com>



From xyzzy!rti!mcnc!rutgers!mailrus!uflorida!novavax!infocenter!mhoffman Mon Mar 27 12:21:18 EST 1989
Article 1631 of comp.sources.bugs:
Path: xyzzy!rti!mcnc!rutgers!mailrus!uflorida!novavax!infocenter!mhoffman
>From: mhoffman@infocenter.UUCP (Mike Hoffman)
Newsgroups: comp.sources.bugs
Subject: Mush - patch for UTX/32 2.1a
Message-ID: <1799@infocenter.UUCP>
Date: 24 Mar 89 16:08:32 GMT
Organization: Gould CSD, Fort Lauderdale, FL
Lines: 46


While compiling mush 6.4, I ran across a rather unexpected
problem during loading: "_timezone: undefined." Well I tried
"man timezone" and got the manpage for ctime(3), but timezone()
was missing from the page!

Well, we recently upgraded to UTX/32 2.1a, and an older manual
from 2.0 (which had timezone) says, "timezone may become
unsupported in a future release. Use ... is strongly discouraged."

I guess the future is now :-)

Anyhow, here is my kludge (I mean fix). Not very scientific, but
it seems to work. We are on Eastern Time, but I guess the "EST"
and "EDT" could be #define'd to any appropriate timezone.

Thanks to Mr. Heller for providing such a great tool!

---
Mike Hoffman		...!novavax!gould!mhoffman

------------------------CUT HERE------------------------------
*** dates.orig.c	Fri Mar 24 10:45:19 1989
--- dates.c	Fri Mar 24 10:52:01 1989
***************
*** 219,225 ****
  
      (void) gettimeofday(&mytime, &myzone);
      T = localtime(&mytime.tv_sec);
!     tz = timezone(myzone.tz_minuteswest, (T->tm_isdst && myzone.tz_dsttime));
  #else
      char *tz = "";
  #endif /* BSD */
--- 219,230 ----
  
      (void) gettimeofday(&mytime, &myzone);
      T = localtime(&mytime.tv_sec);
! 
!     if (T->tm_isdst)
! 	tz = "EDT";		/* Assume Eastern Time ;-) */
!     else
! 	tz = "EST";
! 
  #else
      char *tz = "";
  #endif /* BSD */



From xyzzy!rti!mcnc!ncsuvx!lll-winken!uunet!mcvax!hp4nl!gouldnl!wytze Thu Mar 30 06:40:01 EST 1989
Article 1638 of comp.sources.bugs:
Path: xyzzy!rti!mcnc!ncsuvx!lll-winken!uunet!mcvax!hp4nl!gouldnl!wytze
>From: wytze@gouldnl.UUCP (Wytze van der Raay)
Newsgroups: comp.sources.bugs
Subject: Re: Mush - patch for UTX/32 2.1a
Summary: better patch
Keywords: mush timezone patch
Message-ID: <695@gouldnl.UUCP>
Date: 28 Mar 89 15:04:34 GMT
References: <1799@infocenter.UUCP>
Reply-To: wytze@gouldnl.UUCP (Wytze van der Raay)
Organization: Gould European Unix Support Centre
Lines: 47
Posted: Tue Mar 28 10:04:34 1989

In article <1799@infocenter.UUCP> mhoffman@infocenter.UUCP (Mike Hoffman) writes:
>While compiling mush 6.4, I ran across a rather unexpected
>problem during loading: "_timezone: undefined." Well I tried
>"man timezone" and got the manpage for ctime(3), but timezone()
>was missing from the page!
...
>Anyhow, here is my kludge (I mean fix). Not very scientific, but
>it seems to work. We are on Eastern Time, but I guess the "EST"
>and "EDT" could be #define'd to any appropriate timezone.

The proposed change is really a kludge, not a fix! How about innocent
Mush users outside the EST/EDT timezone? You don't really want them
to edit the source again and again ...

Basically, the code in dates.c::rfc_date needs to be upgraded for the
case of a BSD4.3 system which uses the /etc/zoneinfo system for
establishing timezones. This includes (as far as Gould is concerned)
UTX/32 2.1 and later (PowerNode), and UTX/32 3.0 and later(NPL).

The following context diff shows how this can be done. Presumably
Dan Heller can turn this into a generic fix for BSD4.3 ++ systems
sometime ...

*** dates.c.org	Thu Mar 16 09:17:47 1989
--- dates.c	Tue Mar 28 12:25:07 1989
***************
*** 219,225 ****
--- 219,231 ----
  
      (void) gettimeofday(&mytime, &myzone);
      T = localtime(&mytime.tv_sec);
+ #if defined(gould) && defined(COFF)
+ 	/* Newer BSD4.3 systems use flexible timezone implementation. */
+ 	/* This happens to coincide with the introduction of COFF ... */
+     tz = T->tm_zone;
+ #else
      tz = timezone(myzone.tz_minuteswest, (T->tm_isdst && myzone.tz_dsttime));
+ #endif
  #else
      char *tz = "";
  #endif /* BSD */


-- 
| Wytze van der Raay                      ...!hp4nl!gouldnl!wytze |
| Gould European Unix Support Centre           wytze@gouldnl.uucp |
| Maarssenbroek, The Netherlands          (USA)   ...!gould!wraay |



Path: xyzzy!rti!mcnc!xanth!ames!pasteur!cory.Berkeley.EDU!dheller
From: dheller@cory.Berkeley.EDU (Dan Heller)
Newsgroups: comp.sources.bugs
Subject: Mush-users: read this (Was: Mush - patch for UTX/32 2.1a)
Keywords: mush timezone patch
Message-ID: <11617@pasteur.Berkeley.EDU>
Date: 30 Mar 89 01:50:49 GMT
References: <1799@infocenter.UUCP> <695@gouldnl.UUCP>
Sender: news@pasteur.Berkeley.EDU
Reply-To: dheller@cory.Berkeley.EDU.UUCP (Dan Heller)
Organization: University of California, Berkeley
Lines: 39

In article <695@gouldnl.UUCP> wytze@gouldnl.UUCP (Wytze van der Raay) writes:
>In article <1799@infocenter.UUCP> mhoffman@infocenter.UUCP (Mike Hoffman) writes:
>>While compiling mush 6.4, I ran across a rather unexpected
>>problem during loading: "_timezone: undefined." Well I tried
>>"man timezone" and got the manpage for ctime(3), but timezone()
>>was missing from the page!
>...
>The proposed change is really a kludge, not a fix! How about innocent
>Mush users outside the EST/EDT timezone? You don't really want them
>to edit the source again and again ...

Don't worry -- I already fixed this.  The way it's going to work is
that if you want, you can define your own TIMEZONE --if it's defined,
a timezone isn't even attempted to be gotten from the system.  This
will obviously have to be defined for the gould system.

And there's another cat out of the bag -- while we're at it.
A new patch is going to be posted shortly which converts the posted
6.4 to Mush 6.5.  One of the major feature additions will be the
ability to edit your outgoing mail headers in your editor.  That means
you can change that long To: header while composing the message in the
editor.

There are still a few little things that need to be ironed out and then
it's in r$'s hands before the patch is posted to comp.sources.unix.

A few people also seem to be confused about where to get onto the mush-users
mailing list.  The address is mush-users-request@garp.mit.edu (this is
currently redirected to me at cory).  If you want to be on the list, please
mail me at the request address.

There is/will be a call for discussion for the addition of comp.mail.mush
to the existing newsgroups.  This is probably qualified by the fact that
mush-users has about 20 redistribution lists and 100+ users on the list
otherwise.  What's more, I'm getting 1 to 3 new requests a day.  I don't
know how to go about getting a newsgroup added, but hopefully someone else
does and will handle that for me :-)

Dan Heller	<island!argv@sun.com>

Path: xyzzy!rti!mcnc!gatech!purdue!haven!mimsy!meyer
From: meyer@mimsy.UUCP (John R. Meyer)
Newsgroups: comp.unix.xenix,comp.sources.bugs
Subject: Compiling mush 6.4 on SCO XENIX-286 -- Makefile included
Keywords: mush 6.4, SCO XENIX-286
Message-ID: <16708@mimsy.UUCP>
Date: 3 Apr 89 22:29:55 GMT
Organization: University of Maryland
Lines: 96
Xref: xyzzy comp.unix.xenix:5597 comp.sources.bugs:1644

Hello --

	Since the makefile.xenix that is included with the mush 6.4
distribution is not quite correct, here is a make file that has
worked on my SCO XENIX 2.2.1 system (IBM PC-AT).  Those of you in
the mush mailing list got this over the weekend.  Basically, you
need to add a -Mt option to CFLAGS or you will get a message from
the linker saying that your data segment exceeds 64K.  To handle
the larger number of segments, you need to give the -SEG option to
the linker as well in LFLAGS.


----- cut here -----
#
# makefile for Xenix machines.  See "MODEL" below for your xenix type.
# some .c files may require the -LARGE compiler flag.  Examples below.
# This makefile assumes an 80386 machine.  If you have an 80286, see
# notes below.  This makefile was built for SCO/microsoft xenix --if you
# are running some other kind of xenix, you might need to change the
# CFLAGS and LDFLAGS options.
#
HDRS= mush.h config.h-dist strings.h bindings.h options.h
SRCS1= main.c init.c misc.c execute.c
SRCS2= signals.c msgs.c pick.c viewopts.c
SRCS3= sort.c expr.c folders.c dates.c help.c
SRCS4= loop.c bind.c options.c
SRCS5= commands.c setopts.c hdrs.c
SRCS6= mail.c print.c
SRCS7= curses.c curs_io.c
SRCS8= file.c strings.c
SRCS9= lock.c macros.c addrs.c
OBJS= main.o init.o misc.o mail.o hdrs.o execute.o commands.o print.o file.o \
      signals.o setopts.o msgs.o pick.o sort.o expr.o strings.o \
      folders.o dates.o loop.o help.o viewopts.o bind.o curses.o curs_io.o \
      lock.o macros.o options.o addrs.o
HELP_FILES= README README-6.0 README-6.1 README-6.2 README-6.3 README-6.4 \
	mush.1 Mailrc Gnurc cmd_help sample.mushrc
MAKES= makefile.sys.v makefile.xenix makefile.bsd

# Memory model.  Use -M3e for 80386 machines.
# Use -Mle for 80286 machines.
MODEL= -M2le

#
# 80286 xenix may use this LDFLAGS define:
LDFLAGS= -X -lx -M2le -Mt32 -F 8000 -SEG 256
#LDFLAGS= -X -lx -M3

CFLAGS= $(MODEL) -Mt32 -O -LARGE -DSYSV -DCURSES -DREGCMP -DUSG
LIBES= -lcurses -ltermlib

mush: $(OBJS)
	@echo loading...
	@cc $(LDFLAGS) $(OBJS) $(LIBES) -o mush

# For 80286 machines, use these two lines...
misc.o:	misc.c
	cc $(CFLAGS) -c misc.c

bind.o:	bind.c
	cc $(CFLAGS) -c bind.c

shar:
	shar ${HELP_FILES} ${MAKES} ${HDRS}>hdr.shr
	shar ${SRCS1} > src1.shr
	shar ${SRCS2} > src2.shr
	shar ${SRCS3} > src3.shr
	shar ${SRCS4} > src4.shr
	shar ${SRCS5} > src5.shr
	shar ${SRCS6} > src6.shr
	shar ${SRCS7} > src7.shr
	shar ${SRCS8} > src8.shr
	shar ${SRCS9} > src9.shr

tar:
	tar fcv MUSH ${MAKES} ${HDRS} ${HELP_FILES} ${SRCS1} \
	${SRCS2} ${SRCS3} ${SRCS4} ${SRCS5} ${SRCS6} ${SRCS7} \
	${SRCS8} ${SRCS9}

clean:
	rm -f *.o core mush

----- cut here -----


If any XENIX-286 users out there have any problems with this, please
let me know.

						John


-- 
John R. Meyer				Domain: meyer@mimsy.umd.edu
10208-C Ashbrooke Ct.			Path:   uunet.uu.net!mimsy!meyer
Oakton, VA 22124 USA			Phone:  (703) 644-3944 (O)
Disclaimer:  The views expressed are my own.	(703) 281-5157 (H)

