[unix-pc.sources] Official Patch #16 for B News 2.11

arnold@skeeve.UUCP (Arnold D. Robbins) (01/27/89)

See the announcement in unix-pc.general for what this is and why you
might want it.
----------------------------------------------------------------
From gatech!ncar!ames!amdcad!sun!pitstop!sundc!seismo!uunet!rick Wed Jan 25 13:16:10 EST 1989
Article 1798 of news.software.b:
Path: emory!gatech!ncar!ames!amdcad!sun!pitstop!sundc!seismo!uunet!rick
>From: rick@uunet.UU.NET (Rick Adams)
Newsgroups: news.software.b
Subject: Patch #16 for news 2.11 source
Summary: part two of three
Message-ID: <47349@uunet.UU.NET>
Date: 25 Jan 89 03:27:17 GMT
References: <47348@uunet.UU.NET>
Organization: UUNET Communications Services, Arlington, VA
Lines: 2084

Description:
	This is the second part of three patches. After applying this
	you should be at patchlevel 16.

Fix:
	apply this in the same manner as patch 15.

Index: inews.c
Prereq: 2.85
*** old/inews.c	Fri Dec  4 02:52:12 1987
--- inews.c	Tue Jan 24 15:24:00 1989
***************
*** 1,3
  /*
!  * This software is Copyright (c) 1986 by Rick Adams.
   *

--- 1,3 -----
  /*
!  * This software is Copyright 1986, 1989 by Rick Adams.
   *
***************
*** 19,21
  #ifdef SCCSID
! static char	*SccsId = "@(#)inews.c	2.85	11/30/87";
  #endif /* SCCSID */

--- 19,21 -----
  #ifdef SCCSID
! static char	*SccsId = "@(#)inews.c	2.91	1/24/89";
  #endif /* SCCSID */
***************
*** 28,30
  
! # if defined(F_RDLCK) && defined(F_SETLK)
  struct flock news_lock;

--- 28,30 -----
  
! # if defined(F_RDLCK) && defined(F_SETLK) && !defined(HP9K5)
  struct flock news_lock;
***************
*** 30,32
  struct flock news_lock;
! #  endif /* F_RDLCK  && F_SETLK */
  # endif /* LOCKF */

--- 30,32 -----
  struct flock news_lock;
! #  endif /* F_RDLCK && F_SETLK && !HP9K5 */
  # endif /* LOCKF */
***************
*** 59,61
  /* Fake sys line in case they forget their own system */
- struct srec dummy_srec = { "MEMEME", "", "all", "", "" };
  

--- 59,60 -----
  /* Fake sys line in case they forget their own system */
  
***************
*** 100,101
  FILE *mailhdr();
  extern int errno, xxit();

--- 99,101 -----
  FILE *mailhdr();
+ extern FILE *controlmail;
  extern int errno, xxit();
***************
*** 127,128
  	FILE	*mfd;		/* mail file file-descriptor		*/
  

--- 127,131 -----
  	FILE	*mfd;		/* mail file file-descriptor		*/
+ #if !defined(LOCKF) && !defined(BSD4_2)
+ 	struct stat stbuf;
+ #endif	/* !LOCKF && ! BSD4_2 */
  
***************
*** 139,140
  		ptr = *argv - 1;
  	actfp = xfopen(ACTIVE, "r+");

--- 142,147 -----
  		ptr = *argv - 1;
+ 
+ #ifdef NFSCLIENT
+ 	actfp = xfopen(ACTIVE, "r");
+ #else	/* !NFSCLIENT */
  	actfp = xfopen(ACTIVE, "r+");
***************
*** 140,142
  	actfp = xfopen(ACTIVE, "r+");
- #ifndef NFSCLIENT
  #ifdef	LOCKF

--- 147,148 -----
  	actfp = xfopen(ACTIVE, "r+");
  #ifdef	LOCKF
***************
*** 142,144
  #ifdef	LOCKF
! # if	defined(F_RDLCK) && defined(F_SETLK)
  	news_lock.l_type = F_RDLCK;

--- 148,150 -----
  #ifdef	LOCKF
! # if	defined(F_RDLCK) && defined(F_SETLK) && !defined(HP9K5)
  	news_lock.l_type = F_RDLCK;
***************
*** 145,147
  	if (fcntl(fileno(actfp), F_SETLK, &news_lock) < 0) {
! # else /* !F_RDLCK */
  	if (lockf(fileno(actfp), F_TLOCK, 0L) < 0) {

--- 151,153 -----
  	if (fcntl(fileno(actfp), F_SETLK, &news_lock) < 0) {
! # else /* !(F_RDLCK && F_SETLK && !HP9K5) */
  	if (lockf(fileno(actfp), F_TLOCK, 0L) < 0) {
***************
*** 147,149
  	if (lockf(fileno(actfp), F_TLOCK, 0L) < 0) {
! # endif /* !F_RDLCK */
  		if (errno != EAGAIN && errno != EACCES)

--- 153,155 -----
  	if (lockf(fileno(actfp), F_TLOCK, 0L) < 0) {
! # endif /* !(F_RDLCK && F_SETLK && !HP9K5) */
  		if (errno != EAGAIN && errno != EACCES)
***************
*** 155,158
  	sprintf(bfr, "%s.lock", ACTIVE);
! 	if (LINK(ACTIVE, bfr) < 0) {
! 		if (errno != EEXIST)
  #endif /* V7 */

--- 161,168 -----
  	sprintf(bfr, "%s.lock", ACTIVE);
! 	/* assume a dead lock if the active file is over 12 hours old */
! 	if (LINK(ACTIVE, bfr) < 0 &&
! 		(errno != EEXIST ||
! 		(stat(bfr, &stbuf) == 0 &&
! 		(time((char *)0) - stbuf.st_mtime) < DAYS/2))) {
! 			if (errno != EEXIST)
  #endif /* V7 */
***************
*** 225,227
  	}
! 
  	state = OPTION;

--- 235,245 -----
  	}
! #ifdef MINFREE
! 	if (space()) {		/* check disk space */
! 		mode = PROC;
! 		logerr("Out of space in %s. Saving for later processing.",
! 					SPOOLDIR);
! 		dospool((char *)NULL, FALSE);
! 		/* NOT REACHED */
! 	}
! #endif	/* MINFREE */
  	state = OPTION;
***************
*** 281,283
  
- #ifndef DOGETUSER
  	/*

--- 299,300 -----
  
  	/*
***************
*** 286,288
  	 */
! 	if (isatty(fileno(stderr))) {
  		if ((user = getenv("USER")) == NULL)

--- 303,309 -----
  	 */
! 	if (isatty(fileno(stderr))
! #ifdef	DOGETUSER
! 		&& uid == 0 /* allow root to set name in any case */
! #endif	/* !DOGETUSER */
! 		) {
  		if ((user = getenv("USER")) == NULL)
***************
*** 292,294
  	}
- #endif /* !DOGETUSER */
  	if (user == NULL || home == NULL)

--- 313,314 -----
  	}
  	if (user == NULL || home == NULL)
***************
*** 440,442
  			else if (!header.path[0]) {
! 				(void) strcpy(header.path, forgedname);
  

--- 460,469 -----
  			else if (!header.path[0]) {
! 				if ((p1 = rindex(forgedname, '@')) == NULL)
! 					(void) strcpy(header.path, forgedname);
! 				else {
! 					*p1 = '\0';
! 					(void) sprintf(header.path, "%s!%s",
! 						p1+1, forgedname);
! 					*p1 = '@';
! 				}
  
***************
*** 568,569
  
  	if (rwaccess(f))

--- 595,597 -----
  
+ #ifndef	NFSCLIENT
  	if (rwaccess(f))
***************
*** 572,573
  		exists(f) ? "Unwritable files!" : "Missing files!");
  	if (mfd == NULL)

--- 600,606 -----
  		exists(f) ? "Unwritable files!" : "Missing files!");
+ #else	/* NFSCLIENT */
+       if (exists(f))
+               return; /* everything is ok */
+       mfd = mailhdr((struct hbuf *)NULL, "Missing files!");
+ #endif	/* NFSCLIENT */
  	if (mfd == NULL)
***************
*** 676,678
  
! 	(void) sprintf(sfile, "%s/.spXXXXXX", SPOOL);
  	MKTEMP(sfile);

--- 709,711 -----
  
! 	(void) sprintf(sfile, "%s/.tmp/spXXXXXX", SPOOL);
  	MKTEMP(sfile);
***************
*** 775,776
  char firstbufname[BUFLEN];
  /*

--- 808,812 -----
  char firstbufname[BUFLEN];
+ 
+ static char *artlinks[32];
+ static int  linkcount;
  /*
***************
*** 854,855
  	/*
  	 * This works around a bug in the 4.1bsd stdio

--- 890,899 -----
  	/*
+ 	 *  Keep track of destination file names so we can delete
+ 	 *  the article files if the write-out fails.
+ 	 */
+ 	cp = malloc(strlen(bfr)+1);
+ 	(void) strcpy(cp, bfr);
+ 	artlinks[linkcount++] = cp;
+ 
+ 	/*
  	 * This works around a bug in the 4.1bsd stdio
***************
*** 937,938
  	tfp = xfopen(ARTICLE, "w");
  

--- 981,983 -----
  	tfp = xfopen(ARTICLE, "w");
+ 	linkcount = 0;
  
***************
*** 940,942
  	if (is_invalid) {
! 		logerr("No valid newsgroups found, moved to junk");
  		if (localize("junk"))

--- 985,988 -----
  	if (is_invalid) {
! 		logerr("%s: No valid newsgroups found, moved to junk",
! 			header.nbuf);
  		if (localize("junk"))
***************
*** 1047,1049
  				LOCALPATHSYSNAME, SUBFILE);
! 			srec = dummy_srec;
  		}

--- 1093,1099 -----
  				LOCALPATHSYSNAME, SUBFILE);
! 			strcpy(srec.s_name, "ME-dummy");
! 			srec.s_nosend = NULL;
! 			strcpy(srec.s_nbuf, "all");
! 			srec.s_flags[0] = '\0';
! 			srec.s_xmit[0] = '\0';
  		}
***************
*** 1096,1098
  		/* Part 2 of kludge to get around article truncation problem */
! 		if (c == ' ' || c == '\t' )
  			putc('\n', tfp);

--- 1146,1148 -----
  		/* Part 2 of kludge to get around article truncation problem */
! 		if (c == ' ' || c == '\t' ) {
  			putc('\n', tfp);
***************
*** 1098,1099
  			putc('\n', tfp);
  		/* End of part 2 */

--- 1148,1152 -----
  			putc('\n', tfp);
+ 			if (controlmail)
+ 				putc('\n', controlmail);
+ 		}	
  		/* End of part 2 */
***************
*** 1100,1102
  		ungetc(c, infp);
! 		while (fgets(bfr, BUFLEN, infp) != NULL)
  			fputs(bfr, tfp);

--- 1153,1155 -----
  		ungetc(c, infp);
! 		while (fgets(bfr, BUFLEN, infp) != NULL) {
  			fputs(bfr, tfp);
***************
*** 1102,1105
  			fputs(bfr, tfp);
! 		if (bfr[strlen(bfr)-1] != '\n')
! 			putc('\n',tfp);
  	}

--- 1155,1164 -----
  			fputs(bfr, tfp);
! 			if (controlmail)
! 				fputs(bfr, controlmail);
! 		}
! 		if (bfr[strlen(bfr)-1] != '\n') {
! 			putc('\n', tfp);
! 			if (controlmail)
! 				putc('\n', controlmail);
! 		}
  	}
***************
*** 1105,1106
  	}
  	if (ferror(tfp))

--- 1164,1169 -----
  	}
+ 	if (controlmail)
+ 		(void) mclose(controlmail);
+ 	controlmail = NULL;
+ 	fflush(tfp);
  	if (ferror(tfp))
***************
*** 1106,1107
  	if (ferror(tfp))
  		xerror("Write failed for temp file");

--- 1169,1174 -----
  	if (ferror(tfp))
+ 	{
+ 		(void) UNLINK(ARTICLE);
+ 		for (c = 0; c < linkcount; c++)
+ 		    (void) UNLINK(artlinks[c]);
  		xerror("Write failed for temp file");
***************
*** 1107,1108
  		xerror("Write failed for temp file");
  	(void) fclose(tfp);

--- 1174,1181 -----
  		xerror("Write failed for temp file");
+ 	}
+ 	else
+ 	{
+ 		for (c = 0; c < linkcount; c++)
+ 		    free(artlinks[c]);
+ 	}
  	(void) fclose(tfp);
***************
*** 1225,1226
  		(void) fclose(infp);
  	if (mode != PROC &&

--- 1298,1316 -----
  		(void) fclose(infp);
+  	if (mode != PROC &&
+  		index(header.nbuf,',') != NULL && 
+  			strlen(header.followto) == 0) {
+ 				/*
+ 				 * they didn't give us a followup-to
+ 				 * so we'll make one for them
+ 				 */
+ 				char *comma;
+ 
+ 				/* just use the first newsgroup in the Newsgroups: line */
+ 				strcpy(header.followto, header.nbuf);
+ 				comma = index(header.followto, ',');
+ 				if (comma != NULL) { /* this should always be true! */
+ 					*comma = '\0';
+ 				}
+ 		}
+ 
  	if (mode != PROC &&
***************
*** 1244,1245
  					break;
  			if (siglines > 4)

--- 1334,1340 -----
  					break;
+ 				else if (index(sbuf, '\n') == 0) {
+ fprintf(stderr, ".signature not included (long or unterminated line)\n");
+ 					siglines = -1;
+ 					break;
+ 				}
  			if (siglines > 4)
***************
*** 1246,1248
  				fprintf(stderr,".signature not included (> 4 lines)\n");
! 			else {
  				rewind(infp);

--- 1341,1345 -----
  				fprintf(stderr,".signature not included (> 4 lines)\n");
! 			else if (siglines == 0)
! 				fprintf(stderr,".signature not included (empty)\n");
! 			else if (siglines > 0) {
  				rewind(infp);
***************
*** 1401,1403
  	register DIR	*dirp;
! 	register struct direct *dir;
  	register int foundsome;

--- 1498,1500 -----
  	register DIR	*dirp;
! 	register DIRECTORY_STRUCT *dir;
  	register int foundsome;
***************
*** 1408,1409
  #endif /* LOCKF */
  #ifdef VMS

--- 1505,1510 -----
  #endif /* LOCKF */
+ 
+ #if !defined(LOCKF) && !defined(BSD4_2)
+ 	struct stat stbuf;
+ #endif	/* !LOCKF && ! BSD4_2 */
  #ifdef VMS
***************
*** 1422,1423
  	LockFd = xfopen(SEQFILE, "r+w");
  	if (lockf(fileno(LockFd), F_TLOCK, 0L) < 0) {

--- 1523,1526 -----
  	LockFd = xfopen(SEQFILE, "r+w");
+ 	/* The lseek is kludge for systems with mandatory locking */
+ 	lseek(fileno(LockFd), 512L, 0);
  	if (lockf(fileno(LockFd), F_TLOCK, 0L) < 0) {
***************
*** 1436,1439
  	errno = status;
! 	if (ret < 0) {
! 		if (errno != EEXIST)
  #endif /* V7 */

--- 1539,1546 -----
  	errno = status;
! 	/* assume a dead lock if the active file is over 12 hours old */
! 	if (ret < 0 &&
! 		(errno != EEXIST ||
! 		(stat(bfr, &stbuf) == 0 &&
! 		(time((char *)0) - stbuf.st_mtime) < DAYS/2))) {
! 			if (errno != EEXIST)
  #endif /* V7 */
***************
*** 1479,1481
  			if (status != 0) {
! 				sprintf(bfr, "../%s", dir->d_name);
  				(void) LINK(dir->d_name, bfr);

--- 1586,1588 -----
  			if (status != 0) {
! 				sprintf(bfr, "../.bad/%s", dir->d_name);
  				(void) LINK(dir->d_name, bfr);
***************
*** 1481,1483
  				(void) LINK(dir->d_name, bfr);
! 				logerr("rnews failed, status %ld. Batch saved in %s/%s",
  					(long)status, SPOOL, dir->d_name);

--- 1588,1590 -----
  				(void) LINK(dir->d_name, bfr);
! 				logerr("rnews failed, status %ld. Batch saved in %s/.bad/%s",
  					(long)status, SPOOL, dir->d_name);
***************
*** 1498
  #endif /* !NFSCLIENT */

--- 1605,1633 -----
  #endif /* !NFSCLIENT */
+ 
+ #ifdef MINFREE
+ #include <ustat.h>
+ /* 
+  * determine if there is enough free space on the device
+  * return 0 if there is and
+  * anything appropriate if there is not 
+  * written by Stan Barber (sob@bcm.tmc.edu)
+  */
+ space()
+ {
+ 	struct stat file;
+ 	struct ustat device;
+ 	if (stat(SPOOLDIR,&file))
+ 		return 1;	/* can't stat spool */
+ 	if (ustat(file.st_dev, &device))
+ 		return 1;	/* can't stat the device */
+ 	if(device.f_tfree < MINFREE)
+ 		return 1;
+ 	return 0;
+ }
+ #else
+ int space()
+ {
+ 	/* I'll figure this out for BSD some other time */
+ 	return(0);
+ }
+ #endif	/* MINFREE */

Index: install.sh
Prereq: 1.19
*** old/install.sh	Mon Nov 23 19:13:25 1987
--- install.sh	Sun Jan 15 19:49:00 1989
***************
*** 1,2
! : '@(#)install.sh	1.19	11/19/87'
  

--- 1,2 -----
! : '@(#)install.sh	1.20	1/15/89'
  
***************
*** 54,56
  then
! 	for i in $SPOOLDIR $SPOOLDIR/.rnews
  	do

--- 54,56 -----
  then
! 	for i in $SPOOLDIR $SPOOLDIR/.rnews $SPOOLDIR/.bad $SPOOLDIR/.tmp
  	do

Index: localize.mport
*** old/localize.mport	Sun Jan 15 19:53:47 1989
--- localize.mport	Sun Jan 15 19:49:01 1989
***************
*** 0

--- 1,44 -----
+ # Date: Tue, 29 Nov 88 12:14:54 EST
+ # From: algor2!jeffrey@uunet.UU.NET
+ 
+ rm -f Makefile
+ cp Makefile.dst Makefile
+ chmod u+w Makefile
+ ed - Makefile  <<'EOF'
+ /^UUXFLAGS/s/-r //
+ /^COMPRESS=/d
+ /^#USG IBMFLAGS/s/=/& -Ml/
+ /^#USG LFLAGS/s/-i//
+ /^#USG LINTFLAGS/s/-D/-Ml -D/
+ g/^#USG /s///
+ g/^#V7 /d
+ g/^#VMS /d
+ g/^#BSD4_[123] /d
+ g/#NOTVMS/s/#NOTVMS.*//
+ g/termlib/s//curses/
+ w
+ q
+ EOF
+ rm -f defs.h
+ cp defs.dist defs.h
+ chmod u+w defs.h
+ ed - defs.h <<'EOF'
+ /ROOTID/s/10/133/
+ /HISTEXP/s;4\*WEEKS;DFLTEXP;
+ /TMAIL/d
+ /PAGE/s;/usr/ucb/more;/usr/bin/pg;
+ /DFTXMIT/s/-r/-gd/
+ /UXMIT/s/-r/-gd/
+ /NONEWGROUPS/s;/\* ;;
+ /LOCALNAME/s;/\* ;;
+ /INTERNET/s;/\* ;;
+ /DOXREFS/s;/\* ;;
+ /DOGETUSER/s;/\* ;;
+ /MKDIRSUB/s;/\* ;;
+ /MYORG/s;Frobozz Inc., St. Louis;/usr/lib/news/organization;
+ /NICENESS/s;/\* ;;
+ /NICENESS/s;4;19;
+ /SMALL_ADDRESS_SPACE/s;/\* ;;
+ w
+ q
+ EOF

Index: localize.nntp
*** old/localize.nntp	Fri Oct 16 18:21:56 1987
--- localize.nntp	Tue Jan 17 13:09:29 1989
***************
*** 4,6
  # Basically, you can use the regular localize.sh you use and add those line
! # that contain #NNTP, NNTPSRC and SERVERFILE to make it work.
  # The string NNTPSRC should be replaced with the location of your nntp source

--- 4,13 -----
  # Basically, you can use the regular localize.sh you use and add those line
! # that contain #NNTP and NNTPSRC to make it work. You will need two
! # localize.sh files. One will be for the SERVER where you build the regular
! # inews and run the nntpd server. The other will be for the nntp clients.
! # On these machines, you will only build readnews, checknews, vnews and 
! # postnews. You only need the parts of the nntp distribution that are in the
! # common directory to build these programs. You will also need the inews 
! # program from nntp distribution.
! #
  # The string NNTPSRC should be replaced with the location of your nntp source
***************
*** 6,9
  # The string NNTPSRC should be replaced with the location of your nntp source
! # directory. The string SERVERFILE should be replaced with the location of
! # the serverfile. See the nntp (Version 1.4) instructions for more information.
  # 

--- 13,15 -----
  # The string NNTPSRC should be replaced with the location of your nntp source
! # directory. 
  # 
***************
*** 9,12
  # 
! # You will need nntp version 1.4 to make full use of these programs. They
! # make some use of the XHDR extenstion in nntp version 1.4.
  # 

--- 15,20 -----
  # 
! # You will need nntp version 1.5 to make full use of these programs. They
! # make some use of the XHDR extension in nntp version 1.5. They will work
! # with nntp 1.3. If you use nntp 1.4, please manually edit nntp.c to include
! # "response_codes.h". Look at the beginning of the file for details.
  # 
***************
*** 13,16
  # You do not need to include any reference to the dbm library. DBM may remain
! # undefined. You may also want to remove $(OTHERS) from the line in the
! # Makefile that starts with "all:".
  # 

--- 21,23 -----
  # You do not need to include any reference to the dbm library. DBM may remain
! # undefined.
  # 
***************
*** 17,19
  # You may want to include the line that begins with #RESOLVE in localize.sh
! # if you want to link against the resolver library. I use it on my suns.
  # 

--- 24,26 -----
  # You may want to include the line that begins with #RESOLVE in localize.sh
! # if you want to link against the resolver library.
  # 
***************
*** 19,24
  # 
- # You will need to create a "mailpaths" file on each host that uses these
- # programs. See the regular news documenation for information on the
- # mailpaths file.
- # 
  # PROBLEMS:

--- 26,27 -----
  # 
  # PROBLEMS:
***************
*** 26,28
  # 1. Distribution checking is disabled in postnews. nntp does not provide this
! # information, so postnews cannot check the article before posting.
  # 

--- 29,32 -----
  # 1. Distribution checking is disabled in postnews. nntp does not provide this
! # information, so postnews cannot check the article before posting. However,
! # nntp will return status information if the article fails to post.
  # 
***************
*** 35,37
  # host that uses these programs. nntp does not provide this information from
! # the server.
  # 

--- 39,41 -----
  # host that uses these programs. nntp does not provide this information from
! # the server. 
  # 
***************
*** 40,43
  # 
! # 5. XHDR support is necessary for some functions to work. This can be rewritten
! # to avoid this, but I have not done it yet.
  # 

--- 44,47 -----
  # 
! # 5. XHDR support is necessary for some functions to work. This can be
! # rewritten to avoid this. nntp 1.5 is available which does support this.
  # 
***************
*** 68,70
  g/^#BSD4_1 /d
! g/^all:/s/$(OTHERS)//
  g/#NOTVMS/s/#NOTVMS//

--- 72,79 -----
  g/^#BSD4_1 /d
! g/^BINDIR/s/bin/local\/bin/
! g/^NEWSUSR/s/news/usenet/
! g/^LIBS/s/-ldbm//
! g/^LNRNEWS/s/ln/ln -s/
! g/^RNEWS/s/$(BINDIR)/\/usr\/bin/
! g/^UUXFLAGS/s/-r/-gN -r/
  g/#NOTVMS/s/#NOTVMS//
***************
*** 70,74
  g/#NOTVMS/s/#NOTVMS//
! g/-DDBM/s/-DDBM//
! g/-ldbm/s/-ldbm//
! g/NNTPSRC/s/NNTPSRC/\/usr\/src\/nntp/
  w

--- 79,82 -----
  g/#NOTVMS/s/#NOTVMS//
! g/-DDBM/s/-DDBM/-DNOSHELL/
! g/NNTPSRC/s/NNTPSRC/\/usr\/src\/new\/nntp.1.5/
  w
***************
*** 80,82
  ed defs.h << 'EOF'
! g/NNTPSRC/s/NNTPSRC/\usr\/src\/nntp/
  g/SERVERFILE/s/SERVERFILE/\/usr\/lib\/news\/server/

--- 88,101 -----
  ed defs.h << 'EOF'
! g/DOXREFS/s/^\/\* //
! g/NICENESS/s/^\/\* //
! g/PATH/s/=/=\/usr/
! g/UUPROG/s/^\/\* //
! g/INTERNET/s/^\/\* //
! g/SENDMAIL/s/^\/\* //
! g/ORGDISTRIB/s/^\/\* //
! g/ GHNAME/s/^\/\* //
! g/ BSD4_2/s/^\/\* //
! g/GENERICPATH/s/^\/\* //
! g/GENERICFROM/s/^\/\* //
! g/NNTPSRC/s/NNTPSRC/\/usr\/src\/new\/nntp.1.5/
  g/SERVERFILE/s/SERVERFILE/\/usr\/lib\/news\/server/
***************
*** 92
  echo "Good Luck."

--- 111,113 -----
  echo "Good Luck."
+ 
+ 

Index: localize.sun
*** old/localize.sun	Tue Jan 24 16:14:48 1989
--- localize.sun	Tue Jan 24 16:54:40 1989
***************
*** 0

--- 1,38 -----
+ # This works on Sun3s and Sun4s running SunOS 4.0
+ rm -f Makefile
+ cp Makefile.dst Makefile
+ chmod u+w Makefile
+ ed Makefile  <<'EOF'
+ /^UUXFLAGS/s/-r -z/-r -z -n -gd/
+ g/^#V7 /s///
+ g/^#BSD4_2 /s///
+ g/^#BSD4_1 /d
+ g/^#USG /d
+ g/#NOTVMS/s/#NOTVMS.*//
+ /^SPOOLDIR/s;/usr/spool/news;/var/spool/news;
+ /^BATCHDIR/s;/usr/spool/batch;/var/spool/batch;
+ /^LIBDIR/s;/usr/lib/news;/var/spool/news-lib;
+ /^BINDIR/s;/usr/bin;/usr/local;
+ /^SPOOL_DISK/s;/usr/spool;/var;
+ /^LNRNEWS/s/ln/ln -s/
+ w
+ q
+ EOF
+ rm -f defs.h
+ cp defs.dist defs.h
+ chmod u+w defs.h
+ ed - defs.h <<'EOF'
+ /N_UMASK/s/000/002/
+ /DFTXMIT/s/-z/-z -gd/
+ /UXMIT/s/-z/-z -gd/
+ /NONEWGROUPS/s;/\* ;;
+ /INTERNET/s;/\* ;;
+ /GHNAME/s;/\* ;;
+ /DOXREFS/s;/\* ;;
+ /BSD4_2/s;/\* ;;
+ /LOCKF/s;/\* ;;
+ /VOID_SIGNALS/s;/\* ;;
+ /SENDMAIL/s;/\* ;;
+ w
+ q
+ EOF

Index: localize.v.3
*** old/localize.v.3	Sun Jan 15 19:53:52 1989
--- localize.v.3	Thu Jan 19 14:53:18 1989
***************
*** 0

--- 1,35 -----
+ # Date: Wed 6 Jan 1988 21:22:55 MET
+ # Originally-From: mcvax!pan!jw@uunet.uu.net (Jamie Watson)
+ 
+ rm -f Makefile
+ cp Makefile.dst Makefile
+ chmod u+w Makefile
+ ed - Makefile  <<'EOF'
+ g/^#USG /s///
+ g/^#V7 /d
+ g/^#VMS /d
+ g/^#BSD4_[123] /d
+ g/#NOTVMS/s/#NOTVMS.*//
+ g/termlib/s//curses/
+ g/UUXFLAGS/s/-z//
+ w
+ q
+ EOF
+ rm -f defs.h
+ cp defs.dist defs.h
+ chmod u+w defs.h
+ ed - defs.h <<'EOF'
+ g/TMAIL/d
+ g/ PAGE/s;/usr/ucb/more;/usr/bin/pg;
+ g/DFTXMIT/s/-z //
+ g/UXMIT/d
+ g/DFTEDITOR/s;vi;/usr/bin/vi;
+ g/ UNAME/s;/\* ;;
+ g/LOCKF/s;/\* ;;
+ g/MKDIRSUB/s;/\* ;;
+ g/READDIR/s;/\* ;;
+ g/DIRENT/s;/\* ;;
+ g/VOID_SIGNALS/s;/\* ;;
+ w
+ q
+ EOF
Index: makeactive.sh
Prereq: 1.24
*** old/makeactive.sh	Wed Oct  7 16:53:32 1987
--- makeactive.sh	Tue Jan 24 17:05:21 1989
***************
*** 2,4
  : "Usage: sh makeactive.sh LIBDIR SPOOLDIR NEWSUSR NEWSGRP"
! : '@(#)makeactive	1.24	9/24/87'
  LIBDIR=$1

--- 2,4 -----
  : "Usage: sh makeactive.sh LIBDIR SPOOLDIR NEWSUSR NEWSGRP"
! : '@(#)makeactive	1.27	1/24/89'
  LIBDIR=$1
***************
*** 8,10
  cat <<"E_O_F" | sort > /tmp/$$groups
- general	Articles that should be read by everyone on your local system
  comp.ai			Artificial intelligence discussions.

--- 8,9 -----
  cat <<"E_O_F" | sort > /tmp/$$groups
  comp.ai			Artificial intelligence discussions.
***************
*** 11,12
  comp.ai.digest		Artificial Intelligence discussions. (Moderated)
  comp.arch		Computer architecture.

--- 10,15 -----
  comp.ai.digest		Artificial Intelligence discussions. (Moderated)
+ comp.ai.edu		Applications of Artificial Intelligence to Education.
+ comp.ai.neural-nets	All aspects of neural networks.
+ comp.ai.nlang-know-rep	Natural Language and Knowledge Representation. (Moderated)
+ comp.ai.vision		Artificial Intelligence Vision Research. (Moderated)
  comp.arch		Computer architecture.
***************
*** 12,13
  comp.arch		Computer architecture.
  comp.binaries.amiga	Encoded public domain programs in binary. (Moderated)

--- 15,17 -----
  comp.arch		Computer architecture.
+ comp.archives		Descriptions of public access archives. (Moderated)
  comp.binaries.amiga	Encoded public domain programs in binary. (Moderated)
***************
*** 13,14
  comp.binaries.amiga	Encoded public domain programs in binary. (Moderated)
  comp.binaries.atari.st	Binary-only postings for the Atari ST. (Moderated)

--- 17,19 -----
  comp.binaries.amiga	Encoded public domain programs in binary. (Moderated)
+ comp.binaries.apple2	Binary-only postings for the Apple II computer.
  comp.binaries.atari.st	Binary-only postings for the Atari ST. (Moderated)
***************
*** 15,16
  comp.binaries.ibm.pc	Binary-only postings for IBM PC/MS-DOS. (Moderated)
  comp.binaries.mac	Encoded Macintosh programs in binary. (Moderated)

--- 20,22 -----
  comp.binaries.ibm.pc	Binary-only postings for IBM PC/MS-DOS. (Moderated)
+ comp.binaries.ibm.pc.d	Discussions about IBM/PC binary postings.
  comp.binaries.mac	Encoded Macintosh programs in binary. (Moderated)
***************
*** 25,26
  comp.dcom.lans		Local area network hardware and software.
  comp.dcom.modems	Data communications hardware and software.

--- 31,34 -----
  comp.dcom.lans		Local area network hardware and software.
+ comp.dcom.lans.hyperchannel	Hyperchannel networks within an IP network.
+ comp.dcom.lans.v2lni	Proteon Pronet/V2LNI Ring networks.
  comp.dcom.modems	Data communications hardware and software.
***************
*** 29,30
  comp.doc.techreports	Lists of technical reports. (Moderated)
  comp.edu		Computer science education.

--- 37,39 -----
  comp.doc.techreports	Lists of technical reports. (Moderated)
+ comp.editors		Topics related to computerized text editing.
  comp.edu		Computer science education.
***************
*** 30,31
  comp.edu		Computer science education.
  comp.emacs		EMACS editors of different flavors.

--- 39,41 -----
  comp.edu		Computer science education.
+ comp.edu.composition	Writing instruction in computer-based classrooms.
  comp.emacs		EMACS editors of different flavors.
***************
*** 31,32
  comp.emacs		EMACS editors of different flavors.
  comp.graphics		Computer graphics, art, animation, image processing.

--- 41,43 -----
  comp.emacs		EMACS editors of different flavors.
+ comp.fonts		Typefonts -- design, conversion, use, etc.
  comp.graphics		Computer graphics, art, animation, image processing.
***************
*** 33,35
  comp.graphics.digest	Graphics software, hardware, theory, etc. (Moderated)
! comp.hypercube		Massively parallel systems: hardware & software. (Moderated)
  comp.lang.ada		Discussion about Ada*.

--- 44,46 -----
  comp.graphics.digest	Graphics software, hardware, theory, etc. (Moderated)
! comp.ivideodisc		Interactive videodiscs -- uses, potential, etc.
  comp.lang.ada		Discussion about Ada*.
***************
*** 36,37
  comp.lang.apl		Discussion about APL.
  comp.lang.c		Discussion about C.

--- 47,49 -----
  comp.lang.apl		Discussion about APL.
+ comp.lang.asm370	Programming in IBM System/370 Assembly Language.
  comp.lang.c		Discussion about C.
***************
*** 38,39
  comp.lang.c++		The object-oriented C++ language.
  comp.lang.forth		Discussion about Forth.

--- 50,53 -----
  comp.lang.c++		The object-oriented C++ language.
+ comp.lang.clu		The CLU language & related topics. (Moderated)
+ comp.lang.eiffel	The object-oriented Eiffel language.
  comp.lang.forth		Discussion about Forth.
***************
*** 39,40
  comp.lang.forth		Discussion about Forth.
  comp.lang.fortran	Discussion about FORTRAN.

--- 53,55 -----
  comp.lang.forth		Discussion about Forth.
+ comp.lang.forth.mac	The CSI MacForth programming environment.
  comp.lang.fortran	Discussion about FORTRAN.
***************
*** 40,41
  comp.lang.fortran	Discussion about FORTRAN.
  comp.lang.lisp		Discussion about LISP.

--- 55,58 -----
  comp.lang.fortran	Discussion about FORTRAN.
+ comp.lang.icon		Topics related to the ICON programming language.
+ comp.lang.idl		IBL (Interface Description Language) related topics.
  comp.lang.lisp		Discussion about LISP.
***************
*** 41,42
  comp.lang.lisp		Discussion about LISP.
  comp.lang.misc		Different computer languages not specifically listed.

--- 58,61 -----
  comp.lang.lisp		Discussion about LISP.
+ comp.lang.lisp.franz	The Franz Lisp programming language.
+ comp.lang.lisp.x	The XLISP language system.
  comp.lang.misc		Different computer languages not specifically listed.
***************
*** 44,45
  comp.lang.pascal	Discussion about Pascal.
  comp.lang.prolog	Discussion about PROLOG.

--- 63,65 -----
  comp.lang.pascal	Discussion about Pascal.
+ comp.lang.postscript	The PostScript Page Description Language.
  comp.lang.prolog	Discussion about PROLOG.
***************
*** 45,46
  comp.lang.prolog	Discussion about PROLOG.
  comp.lang.smalltalk	Discussion about Smalltalk 80.

--- 65,70 -----
  comp.lang.prolog	Discussion about PROLOG.
+ comp.lang.rexx		The REXX command language.
+ comp.lang.scheme	The Scheme Programming language.
+ comp.lang.scheme.c	The Scheme language environment.
+ comp.lang.sigplan	Info & announcements from ACM SIGPLAN. (Moderated)
  comp.lang.smalltalk	Discussion about Smalltalk 80.
***************
*** 46,47
  comp.lang.smalltalk	Discussion about Smalltalk 80.
  comp.laser-printers	Laser printers, hardware & software. (Moderated)

--- 70,72 -----
  comp.lang.smalltalk	Discussion about Smalltalk 80.
+ comp.lang.visual	Visual programming languages.
  comp.laser-printers	Laser printers, hardware & software. (Moderated)
***************
*** 48,50
  comp.lsi		Large scale integrated circuits.
! comp.mail.elm		Discussion and fixes for ELM mail system.
  comp.mail.headers	Gatewayed from the ARPA header-people list.

--- 73,76 -----
  comp.lsi		Large scale integrated circuits.
! comp.lsi.cad		Electrical Computer Aided Design.
! comp.mail.elm		Discussion and fixes for ELM mail system. 
  comp.mail.headers	Gatewayed from the ARPA header-people list.
***************
*** 51,52
  comp.mail.maps		Various maps, including UUCP maps. (Moderated)
  comp.mail.misc		General discussions about computer mail.

--- 77,79 -----
  comp.mail.maps		Various maps, including UUCP maps. (Moderated)
+ comp.mail.mh		The UCI version of the Rand Message Handling system.
  comp.mail.misc		General discussions about computer mail.
***************
*** 52,53
  comp.mail.misc		General discussions about computer mail.
  comp.mail.uucp		Mail in the uucp network environment.

--- 79,82 -----
  comp.mail.misc		General discussions about computer mail.
+ comp.mail.multi-media	Multimedia Mail.
+ comp.mail.sendmail	Configuring and using the BSD sendmail agent.
  comp.mail.uucp		Mail in the uucp network environment.
***************
*** 54,55
  comp.misc		General topics about computers not covered elsewhere.
  comp.newprod		Announcements of new products of interest. (Moderated)

--- 83,85 -----
  comp.misc		General topics about computers not covered elsewhere.
+ comp.music		Applications of computers in music research.
  comp.newprod		Announcements of new products of interest. (Moderated)
***************
*** 57,58
  comp.org.fidonet	FidoNews digest, official news of FidoNet Assoc. (Moderated)
  comp.org.usenix		USENIX Association events and announcements.

--- 87,89 -----
  comp.org.fidonet	FidoNews digest, official news of FidoNet Assoc. (Moderated)
+ comp.org.ieee		Issues and announcements about the IEEE & its members.
  comp.org.usenix		USENIX Association events and announcements.
***************
*** 58,59
  comp.org.usenix		USENIX Association events and announcements.
  comp.os.cpm		Discussion about the CP/M operating system.

--- 89,92 -----
  comp.org.usenix		USENIX Association events and announcements.
+ comp.org.usrgroup	News/discussion about/from the /usr/group organization.
+ comp.os.aos		Topics related to Data General's AOS/VS.
  comp.os.cpm		Discussion about the CP/M operating system.
***************
*** 59,60
  comp.os.cpm		Discussion about the CP/M operating system.
  comp.os.eunice		The SRI Eunice system.

--- 92,94 -----
  comp.os.cpm		Discussion about the CP/M operating system.
+ comp.os.cpm.amethyst	Discussion of Amethyst, CP/M-80 software package.
  comp.os.eunice		The SRI Eunice system.
***************
*** 62,64
  comp.os.misc		General OS-oriented discussion not carried elsewhere.
! comp.os.os9		Discussions about the os9 operating system. (Moderated)
  comp.os.research	Operating systems and related areas. (Moderated)

--- 96,98 -----
  comp.os.misc		General OS-oriented discussion not carried elsewhere.
! comp.os.os9		Discussions about the os9 operating system.
  comp.os.research	Operating systems and related areas. (Moderated)
***************
*** 64,65
  comp.os.research	Operating systems and related areas. (Moderated)
  comp.os.vms		DEC's VAX* line of computers & VMS.

--- 98,101 -----
  comp.os.research	Operating systems and related areas. (Moderated)
+ comp.os.rsts		Topics related to the PDP-11 RSTS/E operating system.
+ comp.os.v		The V distributed operating system from Stanford.
  comp.os.vms		DEC's VAX* line of computers & VMS.
***************
*** 65,66
  comp.os.vms		DEC's VAX* line of computers & VMS.
  comp.periphs		Peripheral devices.

--- 101,104 -----
  comp.os.vms		DEC's VAX* line of computers & VMS.
+ comp.os.xinu		The XINU operating system from Purdue (D. Comer).
+ comp.parallel		Massively parallel hardware/software. (Moderated)
  comp.periphs		Peripheral devices.
***************
*** 66,67
  comp.periphs		Peripheral devices.
  comp.protocols.appletalk	Applebus hardware & software.

--- 104,106 -----
  comp.periphs		Peripheral devices.
+ comp.periphs.printers	Information on printers.
  comp.protocols.appletalk	Applebus hardware & software.
***************
*** 67,68
  comp.protocols.appletalk	Applebus hardware & software.
  comp.protocols.kermit	Info about the Kermit package. (Moderated)

--- 106,112 -----
  comp.protocols.appletalk	Applebus hardware & software.
+ comp.protocols.ibm	Networking with IBM mainframes.
+ comp.protocols.iso	The ISO protocol stack.
+ comp.protocols.iso.dev-environ	The ISO Development Environment.
+ comp.protocols.iso.x400	X400 mail protocol discussions.  (Moderated)
+ comp.protocols.iso.x400.gateway	X400 mail gateway discussions.  (Moderated)
  comp.protocols.kermit	Info about the Kermit package. (Moderated)
***************
*** 69,70
  comp.protocols.misc	Various forms and types of FTP protocol.
  comp.protocols.tcp-ip	TCP and IP network protocols.

--- 113,117 -----
  comp.protocols.misc	Various forms and types of FTP protocol.
+ comp.protocols.nfs	Discussion about the Network File System protocol.
+ comp.protocols.pcnet	Topics related to PCNET (a personal computer network).
+ comp.protocols.pup	The Xerox PUP network protocols.
  comp.protocols.tcp-ip	TCP and IP network protocols.
***************
*** 70,71
  comp.protocols.tcp-ip	TCP and IP network protocols.
  comp.risks		Risks to the public from computers & users. (Moderated)

--- 117,120 -----
  comp.protocols.tcp-ip	TCP and IP network protocols.
+ comp.protocols.tcp-ip.domains	Topics related to Domain Style names.
+ comp.protocols.tcp-ip.ibmpc	TCP/IP for IBM(-like) personal computers.
  comp.risks		Risks to the public from computers & users. (Moderated)
***************
*** 71,72
  comp.risks		Risks to the public from computers & users. (Moderated)
  comp.society		The impact of technology on society. (Moderated)

--- 120,122 -----
  comp.risks		Risks to the public from computers & users. (Moderated)
+ comp.simulation		Simulation methods, problems, uses. (Moderated)
  comp.society		The impact of technology on society. (Moderated)
***************
*** 72,73
  comp.society		The impact of technology on society. (Moderated)
  comp.sources.amiga	Source code-only postings for the Amiga. (Moderated)

--- 122,126 -----
  comp.society		The impact of technology on society. (Moderated)
+ comp.society.futures	Events in technology affecting future computing.
+ comp.society.women	Women's roles and problems in computing (Moderated)
+ comp.software-eng	Software Engineering and related topics.
  comp.sources.amiga	Source code-only postings for the Amiga. (Moderated)
***************
*** 77,78
  comp.sources.games	Postings of recreational software. (Moderated)
  comp.sources.mac	Software for the Apple Macintosh. (Moderated)

--- 130,132 -----
  comp.sources.games	Postings of recreational software. (Moderated)
+ comp.sources.games.bugs	Bug reports and fixes for posted game software.
  comp.sources.mac	Software for the Apple Macintosh. (Moderated)
***************
*** 79,81
  comp.sources.misc	Posting of software . (Moderated)
! comp.sources.unix	Postings of public-domain sources. (Moderated)
  comp.sources.wanted	Requests for software and fixes.

--- 133,135 -----
  comp.sources.misc	Posting of software . (Moderated)
! comp.sources.unix	Postings of complete, UNIX-oriented sources. (Moderated)
  comp.sources.wanted	Requests for software and fixes.
***************
*** 81,83
  comp.sources.wanted	Requests for software and fixes.
! comp.std.c		Discussion about C language standards. (Moderated)
  comp.std.internat	Discussion about international standards.

--- 135,138 -----
  comp.sources.wanted	Requests for software and fixes.
! comp.sources.x		Software for the X windows system. (Moderated)
! comp.std.c		Discussion about C language standards.
  comp.std.internat	Discussion about international standards.
***************
*** 83,85
  comp.std.internat	Discussion about international standards.
! comp.std.misc		Discussion about various standards. (Moderated)
  comp.std.mumps		Discussion for the X11.1 committee on Mumps. (Moderated)

--- 138,140 -----
  comp.std.internat	Discussion about international standards.
! comp.std.misc		Discussion about various standards.
  comp.std.mumps		Discussion for the X11.1 committee on Mumps. (Moderated)
***************
*** 87,88
  comp.sys.amiga		Commodore Amiga: info&uses, but no programs.
  comp.sys.apollo		Apollo computer systems.

--- 142,144 -----
  comp.sys.amiga		Commodore Amiga: info&uses, but no programs.
+ comp.sys.amiga.tech	Technical discussion about the Amiga.
  comp.sys.apollo		Apollo computer systems.
***************
*** 93,94
  comp.sys.cbm		Discussion about Commodore micros.
  comp.sys.dec		Discussions about DEC computer systems.

--- 149,152 -----
  comp.sys.cbm		Discussion about Commodore micros.
+ comp.sys.cdc		Control Data Corporation Computers (e.g., Cybers).
+ comp.sys.celerity	Celerity Computers
  comp.sys.dec		Discussions about DEC computer systems.
***************
*** 94,95
  comp.sys.dec		Discussions about DEC computer systems.
  comp.sys.hp		Discussion about Hewlett-Packard equipment.

--- 152,156 -----
  comp.sys.dec		Discussions about DEC computer systems.
+ comp.sys.dec.micro	DEC Micros (Rainbow, Professional 350/380)
+ comp.sys.encore		Encore's MultiMax computers.
+ comp.sys.handhelds	Handheld computers and programmable calculators.
  comp.sys.hp		Discussion about Hewlett-Packard equipment.
***************
*** 97,99
  comp.sys.ibm.pc.digest	The IBM PC, PC-XT, and PC-AT. (Moderated)
! comp.sys.intel		Disucussions about Intel systems and parts.
  comp.sys.m6809		Discussion about 6809's.

--- 158,162 -----
  comp.sys.ibm.pc.digest	The IBM PC, PC-XT, and PC-AT. (Moderated)
! comp.sys.ibm.pc.rt	Topics related to IBM's RT computer.
! comp.sys.intel		Discussions about Intel systems and parts.
! comp.sys.intel.ipsc310	Anything related to Xenix on an Intel 310.
  comp.sys.m6809		Discussion about 6809's.
***************
*** 103,104
  comp.sys.mac.digest	Apple Macintosh: info&uses, but no programs. (Moderated)
  comp.sys.masscomp	The Masscomp line of computers. (Moderated)

--- 166,169 -----
  comp.sys.mac.digest	Apple Macintosh: info&uses, but no programs. (Moderated)
+ comp.sys.mac.hypercard	The Macintosh Hypercard: info & uses.
+ comp.sys.mac.programmer	Discussion by people programming the Apple Macintosh.
  comp.sys.masscomp	The Masscomp line of computers. (Moderated)
***************
*** 105,106
  comp.sys.misc		Discussion about computers of all kinds.
  comp.sys.nsc.32k	National Semiconductor 32000 series chips.

--- 170,173 -----
  comp.sys.misc		Discussion about computers of all kinds.
+ comp.sys.next		Discussion about the new NeXT computer.
+ comp.sys.northstar	Northstar microcomputer users.
  comp.sys.nsc.32k	National Semiconductor 32000 series chips.
***************
*** 106,107
  comp.sys.nsc.32k	National Semiconductor 32000 series chips.
  comp.sys.pyramid	Pyramid 90x computers.

--- 173,175 -----
  comp.sys.nsc.32k	National Semiconductor 32000 series chips.
+ comp.sys.proteon	Proteon gateway products.
  comp.sys.pyramid	Pyramid 90x computers.
***************
*** 108,110
  comp.sys.ridge		Ridge 32 computers and ROS. 
! comp.sys.sequent	Sequent systems, (esp. Balance 8000). (Moderated)
  comp.sys.sun		Sun "workstation" computers. (Moderated)

--- 176,179 -----
  comp.sys.ridge		Ridge 32 computers and ROS. 
! comp.sys.sequent	Sequent systems, (Balance and Symmetry).
! comp.sys.sgi		Silicon Graphics's Iris workstations and software.
  comp.sys.sun		Sun "workstation" computers. (Moderated)
***************
*** 110,111
  comp.sys.sun		Sun "workstation" computers. (Moderated)
  comp.sys.tandy		Discussion about TRS-80's.

--- 179,182 -----
  comp.sys.sun		Sun "workstation" computers. (Moderated)
+ comp.sys.super		Supercomputers.
+ comp.sys.tahoe		CCI 6/32, Harris HCX/7, & Sperry 7000 computers.
  comp.sys.tandy		Discussion about TRS-80's.
***************
*** 112,113
  comp.sys.ti		Discussion about Texas Instruments.
  comp.sys.workstations	Various workstation-type computers. (Moderated)

--- 183,186 -----
  comp.sys.ti		Discussion about Texas Instruments.
+ comp.sys.ti.explorer	The Texas Instruments Explorer.
+ comp.sys.transputer	The Transputer computer and OCCAM language.
  comp.sys.workstations	Various workstation-type computers. (Moderated)
***************
*** 113,114
  comp.sys.workstations	Various workstation-type computers. (Moderated)
  comp.terminals		All sorts of terminals.

--- 186,190 -----
  comp.sys.workstations	Various workstation-type computers. (Moderated)
+ comp.sys.xerox		Xerox 1100 workstations and protocols.
+ comp.sys.zenith		Heath terminals and related Zenith products.
+ comp.sys.zenith.z100	The Zenith Z-100 (Heath H-100) family of computers.
  comp.terminals		All sorts of terminals.
***************
*** 114,115
  comp.terminals		All sorts of terminals.
  comp.text		Text processing issues and methods.

--- 190,193 -----
  comp.terminals		All sorts of terminals.
+ comp.terminals.bitgraph	The BB&N BitGraph Terminal.
+ comp.terminals.tty5620	AT&T Dot Mapped Display Terminals (5620 and BLIT).
  comp.text		Text processing issues and methods.
***************
*** 115,117
  comp.text		Text processing issues and methods.
! comp.text.desktop	Technolgy & techniques of desktop publishing. (Moderated)
  comp.unix		Discussion of UNIX* features and bugs. (Moderated)

--- 193,200 -----
  comp.text		Text processing issues and methods.
! comp.text.desktop	Technology & techniques of desktop publishing.
! comp.theory		Theoretical Computer Science.
! comp.theory.cell-automata	Discussion of all aspects of cellular automata.
! comp.theory.dynamic-sys	Ergodic Theory and Dynamical Systems.
! comp.theory.info-retrieval	Information Retrieval topics. (Moderated)
! comp.theory.self-org-sys	Topics related to self-organization.
  comp.unix		Discussion of UNIX* features and bugs. (Moderated)
***************
*** 117,118
  comp.unix		Discussion of UNIX* features and bugs. (Moderated)
  comp.unix.questions	UNIX neophytes group.

--- 200,204 -----
  comp.unix		Discussion of UNIX* features and bugs. (Moderated)
+ comp.unix.aux		The version of UNIX for Apple Macintosh II computers.
+ comp.unix.cray		Cray computers and their operating systems.
+ comp.unix.microport	Discussion of Microport's UNIX.
  comp.unix.questions	UNIX neophytes group.
***************
*** 118,119
  comp.unix.questions	UNIX neophytes group.
  comp.unix.wizards	Discussions, bug reports, and fixes on and for UNIX.

--- 204,206 -----
  comp.unix.questions	UNIX neophytes group.
+ comp.unix.ultrix	Discussions about DEC's Ultrix. (Moderated)
  comp.unix.wizards	Discussions, bug reports, and fixes on and for UNIX.
***************
*** 121,122
  comp.windows.misc	Various issues about windowing systems.
  comp.windows.news	Sun Microsystems' NewS window system.

--- 208,210 -----
  comp.windows.misc	Various issues about windowing systems.
+ comp.windows.ms		Window systems under MS/DOS.
  comp.windows.news	Sun Microsystems' NewS window system.
***************
*** 135,137
  misc.misc		Various discussions not fitting in any other group.
! misc.psi		Paranormal abilities and experiences. (Moderated)
  misc.taxes		Tax laws and advice.

--- 223,225 -----
  misc.misc		Various discussions not fitting in any other group.
! misc.security		Security in general, not just computers. (Moderated)
  misc.taxes		Tax laws and advice.
***************
*** 148,150
  news.newsites		Postings of new site announcements.
! news.software.b		Discussion about B news software.
  news.software.notes	Notesfile software from the Univ. of Illinois.

--- 236,239 -----
  news.newsites		Postings of new site announcements.
! news.software.b		Discussion about B-news-compatible software.
! news.software.nntp	The Network News Transfer Protocol.
  news.software.notes	Notesfile software from the Univ. of Illinois.
***************
*** 150,152
  news.software.notes	Notesfile software from the Univ. of Illinois.
- news.stargate		Discussion about satellite transmission of news.
  news.sysadmin		Comments directed to system administrators.

--- 239,240 -----
  news.software.notes	Notesfile software from the Univ. of Illinois.
  news.sysadmin		Comments directed to system administrators.
***************
*** 152,155
  news.sysadmin		Comments directed to system administrators.
! rec.arts.books		Books of all genres, shapes, and sizes.
! rec.arts.comics		The funnies, old and new.
  rec.arts.drwho		Discussion about Dr. Who.

--- 240,244 -----
  news.sysadmin		Comments directed to system administrators.
! rec.arts.anime		Japanese animation fen discussion.
! rec.arts.books		Books of all genres, and the publishing industry.
! rec.arts.comics		Comic books and strips, graphic novels, sequential art.
  rec.arts.drwho		Discussion about Dr. Who.
***************
*** 155,156
  rec.arts.drwho		Discussion about Dr. Who.
  rec.arts.movies		Discussions of movies and movie making.

--- 244,247 -----
  rec.arts.drwho		Discussion about Dr. Who.
+ rec.arts.int-fiction	Discussions about interactive fiction.
+ rec.arts.misc		Discussions about the arts not in other groups.
  rec.arts.movies		Discussions of movies and movie making.
***************
*** 159,161
  rec.arts.sf-lovers	Science fiction lovers' newsgroup.
! rec.arts.startrek	Star Trek, the TV show and the movies.
  rec.arts.tv		The boob tube, its history, and past and current shows.

--- 250,252 -----
  rec.arts.sf-lovers	Science fiction lovers' newsgroup.
! rec.arts.startrek	Star Trek, the TV shows and the movies.
  rec.arts.tv		The boob tube, its history, and past and current shows.
***************
*** 165,166
  rec.autos		Automobiles, automotive products and laws.
  rec.autos.tech		Technical aspects of automobiles, et. al.

--- 256,258 -----
  rec.autos		Automobiles, automotive products and laws.
+ rec.autos.sport		Discussion of organized, legal auto competitions.
  rec.autos.tech		Technical aspects of automobiles, et. al.
***************
*** 170,171
  rec.boats		Hobbyists interested in boating.
  rec.food.cooking	Food, cooking, cookbooks, and recipes.

--- 262,265 -----
  rec.boats		Hobbyists interested in boating.
+ rec.equestrian		Discussion of things equestrian.
+ rec.folk-dancing	Folk dances, dancers, and dancing.
  rec.food.cooking	Food, cooking, cookbooks, and recipes.
***************
*** 172,174
  rec.food.drink		Wines and spirits.
- rec.food.recipes	Recipes from the USENET Cookbook (troff & text). (Moderated)
  rec.food.veg		Vegetarians.

--- 266,267 -----
  rec.food.drink		Wines and spirits.
  rec.food.veg		Vegetarians.
***************
*** 182,183
  rec.games.misc		Games and computer games.
  rec.games.pbm		Discussion about Play by Mail games.

--- 275,277 -----
  rec.games.misc		Games and computer games.
+ rec.games.moria		Comments, hints, and info about the Moria game.
  rec.games.pbm		Discussion about Play by Mail games.
***************
*** 183,184
  rec.games.pbm		Discussion about Play by Mail games.
  rec.games.rogue		Discussion and hints about Rogue.

--- 277,279 -----
  rec.games.pbm		Discussion about Play by Mail games.
+ rec.games.programmer	Discussion of adventure game programming.
  rec.games.rogue		Discussion and hints about Rogue.
***************
*** 185,186
  rec.games.trivia	Discussion about trivia.
  rec.games.video		Discussion about video games.

--- 280,282 -----
  rec.games.trivia	Discussion about trivia.
+ rec.games.vectrex	The Vectrex game system.
  rec.games.video		Discussion about video games.
***************
*** 192,194
  rec.humor.d		Discussions on the content of rec.humor articles.
! rec.humor.spc		The Stupid People's Court! (Moderated)
  rec.mag			Magazine summaries, tables of contents, etc.

--- 288,290 -----
  rec.humor.d		Discussions on the content of rec.humor articles.
! rec.humor.funny		Jokes that are funny (in the moderator's opinion).  (Moderated)
  rec.mag			Magazine summaries, tables of contents, etc.
***************
*** 194,195
  rec.mag			Magazine summaries, tables of contents, etc.
  rec.mag.otherrealms	Edited science fiction & fantasy "magazine". (Moderated)

--- 290,292 -----
  rec.mag			Magazine summaries, tables of contents, etc.
+ rec.mag.fsfnet		A Science Fiction "fanzine." (Moderated)
  rec.mag.otherrealms	Edited science fiction & fantasy "magazine". (Moderated)
***************
*** 196,197
  rec.misc		General topics about recreational/participant sports.
  rec.motorcycles		Motorcycles and related products and laws.

--- 293,295 -----
  rec.misc		General topics about recreational/participant sports.
+ rec.models.rc		Radio-controlled models for hobbyists.
  rec.motorcycles		Motorcycles and related products and laws.
***************
*** 197,198
  rec.motorcycles		Motorcycles and related products and laws.
  rec.music.classical	Discussion about classical music.

--- 295,299 -----
  rec.motorcycles		Motorcycles and related products and laws.
+ rec.music.beatles	Postings about the Fab Four & their music.
+ rec.music.bluenote	Discussion of jazz, blues, and related types of music.
+ rec.music.cd		CDs -- availability and other discussions.
  rec.music.classical	Discussion about classical music.
***************
*** 222,223
  sci.bio			Biology and related sciences.
  sci.crypt		Different methods of data en/decryption.

--- 323,325 -----
  sci.bio			Biology and related sciences.
+ sci.bio.technology	Any topic relating to biotechnology.
  sci.crypt		Different methods of data en/decryption.
***************
*** 225,226
  sci.lang		Natural languages, communication, etc.
  sci.math		Mathematical discussions and pursuits.

--- 327,330 -----
  sci.lang		Natural languages, communication, etc.
+ sci.lang.japan		The Japanese language, both spoken and written.
+ sci.logic		Logic -- math, philosophy & computational aspects.
  sci.math		Mathematical discussions and pursuits.
***************
*** 226,227
  sci.math		Mathematical discussions and pursuits.
  sci.math.stat		Statistics discussion.

--- 330,332 -----
  sci.math		Mathematical discussions and pursuits.
+ sci.math.num-analysis	Numerical Analysis.
  sci.math.stat		Statistics discussion.
***************
*** 229,231
  sci.med			Medicine and its related products and regulations.
! sci.med.aids		AIDS -- treatment, consequences, etc. (Moderated)
  sci.misc		Short-lived discussions on subjects in the sciences.

--- 334,337 -----
  sci.med			Medicine and its related products and regulations.
! sci.med.aids		AIDS: treatment, pathology/biology of HIV, prevention. (Moderated)
! sci.military		Discussion about science & the military. (Moderated)
  sci.misc		Short-lived discussions on subjects in the sciences.
***************
*** 231,232
  sci.misc		Short-lived discussions on subjects in the sciences.
  sci.philosophy.tech	Technical philosophy: math, science, logic, etc. 

--- 337,340 -----
  sci.misc		Short-lived discussions on subjects in the sciences.
+ sci.nanotech		Self-reproducing molecular-scale machines. (Moderated)
+ sci.philosophy.meta	Discussions within the scope of "MetaPhilosophy."
  sci.philosophy.tech	Technical philosophy: math, science, logic, etc. 
***************
*** 233,234
  sci.physics		Physical laws, properties, etc.
  sci.research		Research methods, funding, ethics, and whatever.

--- 341,343 -----
  sci.physics		Physical laws, properties, etc.
+ sci.psychology		Topics related to psychology.
  sci.research		Research methods, funding, ethics, and whatever.
***************
*** 238,240
  soc.culture.african	Discussions about Africa & things African.
! soc.culture.celtic	Group about Celtics (*not* basketball!).
  soc.culture.greek	Group about Greeks.

--- 347,352 -----
  soc.culture.african	Discussions about Africa & things African.
! soc.culture.arabic	Technological & cultural issues, *not* politics.
! soc.culture.celtic	Group about Celts (*not* basketball!).
! soc.culture.china	About China and Chinese culture.
! soc.culture.esperanto	The neutral international language Esperanto.
  soc.culture.greek	Group about Greeks.
***************
*** 241,243
  soc.culture.indian	Group for discussion about India & things Indian.
! soc.culture.jewish	Group for discussion about Jewish culture & religion.
  soc.culture.misc	Group for discussion about other cultures.

--- 353,356 -----
  soc.culture.indian	Group for discussion about India & things Indian.
! soc.culture.japan	Everything Japanese, except the Japanese language.
! soc.culture.jewish	Jewish culture & religion. (cf. talk.politics.mideast)
  soc.culture.misc	Group for discussion about other cultures.
***************
*** 258,259
  talk.philosophy.misc	Philosophical musings on all topics.
  talk.politics.misc	Political discussions and ravings of all kinds.

--- 371,373 -----
  talk.philosophy.misc	Philosophical musings on all topics.
+ talk.politics.mideast	Discussion & debate over Middle Eastern events.
  talk.politics.misc	Political discussions and ravings of all kinds.
***************
*** 259,260
  talk.politics.misc	Political discussions and ravings of all kinds.
  talk.politics.theory	Theory of politics and political systems.

--- 373,375 -----
  talk.politics.misc	Political discussions and ravings of all kinds.
+ talk.politics.soviet	Discussion of Soviet politics, domestic and foreign.
  talk.politics.theory	Theory of politics and political systems.

Index: ndir.c
Prereq: 1.12
*** old/ndir.c	Sun Oct 18 18:04:00 1987
--- ndir.c	Sun Jan 15 19:49:01 1989
***************
*** 1,3
  #include "defs.h"
! #if !defined(BSD4_2) && !defined(BSD4_1C) && !defined(HP9K5)
  #ifdef M_XENIX

--- 1,3 -----
  #include "defs.h"
! #if !defined(READDIR) && !defined(BSD4_2) && !defined(HP9K5)
  #ifdef M_XENIX
***************
*** 9,11
  #ifdef SCCSID
! static char	*SccsId = "@(#)ndir.c	1.12	10/15/87";
  #endif /* SCCSID */

--- 9,11 -----
  #ifdef SCCSID
! static char	*SccsId = "@(#)ndir.c	1.13	1/15/89";
  #endif /* SCCSID */
***************
*** 142,143
  }
! #endif /* !BSD4_2 && !BSD4_1C && !HP9K5 */

--- 142,143 -----
  }
! #endif /* !READDIR && !BSD4_2 && !HP9K5 */

Index: ndir.h
Prereq: 1.7
*** old/ndir.h	Thu Oct  8 00:22:06 1987
--- ndir.h	Sun Jan 15 19:49:01 1989
***************
*** 1,6
! /*	@(#)ndir.h	1.7	10/7/87	*/
! #if defined(HP9K5)
! /* He should have included it instead of this, but prevent confusion */
! #include <ndir.h>
! #else /* other */
  #ifndef DEV_BSIZE

--- 1,2 -----
! /*	@(#)ndir.h	1.8	1/15/89	*/
  #ifndef DEV_BSIZE
***************
*** 48,49
  #define rewinddir(dirp)	seekdir((dirp), (long)0)
- #endif /* other */

--- 44 -----
  #define rewinddir(dirp)	seekdir((dirp), (long)0)

Index: nntp.c
Prereq: 2.4
*** old/nntp.c	Fri Dec  4 02:52:14 1987
--- nntp.c	Sun Jan 15 19:49:01 1989
***************
*** 16,18
  #ifdef SCCSID
! static char	*SccsId = "@(#)nntp.c	2.4	11/30/87";
  #endif	/* SCCSID */

--- 16,18 -----
  #ifdef SCCSID
! static char	*SccsId = "@(#)nntp.c	2.5	1/15/89";
  #endif	/* SCCSID */
***************
*** 23,24
  #include "conf.h"
  

--- 23,31 -----
  #include "conf.h"
+ #ifdef SERVER_HOST
+ /* nntp 1.3 or earlier */
+ #include "response_codes.h"
+ #else
+ /* nntp 1.5 or later */
+ #include "nntp.h"
+ #endif
  
Index: params.h
Prereq: 2.28
*** old/params.h	Fri Dec  4 02:52:16 1987
--- params.h	Thu Jan 19 00:06:42 1989
***************
*** 4,6
  
! /*	@(#)params.h	2.28	11/30/87	*/
  

--- 4,6 -----
  
! /*	@(#)params.h	2.31	1/19/89	*/
  
***************
*** 105,106
  
  #ifdef VMS

--- 105,112 -----
  
+ #ifdef VOID_SIGNALS
+ typedef	void (*SIGNAL_TYPE)();
+ #else	/* int signals */
+ typedef	int (*SIGNAL_TYPE)();
+ #endif /* int signals */
+ 
  #ifdef VMS
***************
*** 129,131
  #define LOCKING
! #endif M_XENIX
  

--- 135,137 -----
  #define LOCKING
! #endif /* defined M_XENIX */
  
***************
*** 154,159
  #ifdef READDIR
! #include <sys/dir.h>
! #else /* !READDIR */
! #include "ndir.h"
! #endif /* !READDIR */
  

--- 160,176 -----
  #ifdef READDIR
! #	ifdef	DIRENT
! #		include	<dirent.h>
! 		typedef	struct dirent DIRECTORY_STRUCT;
! #	else	/* !DIRENT */
! #		ifdef	HP9K5
! #			include	<ndir.h>
! #		else	/* !HP9K5 */
! #			include	<sys/dir.h>
! #		endif	/* !HP9K5 */
! 	typedef struct direct DIRECTORY_STRUCT;
! #	endif	/* !DIRENT */
! #else	/* !READDIR */
! #	include	"ndir.h"
! 	typedef struct direct DIRECTORY_STRUCT;
! #endif	/* !READDIR */
  
***************
*** 166,167
  
  #define STRCMP(a,b)  ((*(a) != *(b)) ? (*(a)-*(b)) : strcmp((a)+1, (b)+1))

--- 183,191 -----
  
+ /* The gould compiler really sucks */
+ #ifdef gould
+ #define STRCMP(a,b)  strcmp(a,b)
+ #define STRNCMP(a,b,n)  strncmp(a,b,n)
+ extern char charmap[];
+ #define PREFIX(a,b)  prefix(a,b)
+ #else
  #define STRCMP(a,b)  ((*(a) != *(b)) ? (*(a)-*(b)) : strcmp((a)+1, (b)+1))
***************
*** 170,171
  #define PREFIX(a,b)  ((charmap[*(a)] != charmap[*(b)]) ? FALSE : prefix((a)+1, (b)+1))
  #define MKTEMP(a)	{if (mktemp(a) == 0) xerror("mktemp(%s): ", a);}

--- 194,196 -----
  #define PREFIX(a,b)  ((charmap[*(a)] != charmap[*(b)]) ? FALSE : prefix((a)+1, (b)+1))
+ #endif /* gould */
  #define MKTEMP(a)	{if (mktemp(a) == 0) xerror("mktemp(%s): ", a);}

Index: pathinit.c
Prereq: 1.25
*** old/pathinit.c	Mon Nov 23 19:13:29 1987
--- pathinit.c	Sun Jan 15 19:49:02 1989
***************
*** 1,3
  /*
!  * This software is Copyright (c) 1986 by Rick Adams.
   *

--- 1,3 -----
  /*
!  * This software is Copyright 1986, 1989 by Rick Adams.
   *
***************
*** 36,38
  #ifdef SCCSID
! static char	*SccsId = "@(#)pathinit.c	1.25	11/19/87";
  #endif /* SCCSID */

--- 36,38 -----
  #ifdef SCCSID
! static char	*SccsId = "@(#)pathinit.c	1.26	1/15/89";
  #endif /* SCCSID */
***************
*** 215,218
  #ifndef NFSCLIENT
! 	Sprintf(ARTICLE, "%s/.arXXXXXX", SPOOL);
! 	Sprintf(INFILE, "%s/.inXXXXXX", SPOOL);
  #else /* NFSCLIENT */

--- 215,218 -----
  #ifndef NFSCLIENT
! 	Sprintf(ARTICLE, "%s/.tmp/.arXXXXXX", SPOOL);
! 	Sprintf(INFILE, "%s/.tmp/.inXXXXXX", SPOOL);
  #else /* NFSCLIENT */
***************
*** 307,308
  			mp->m_who_to = "";
  }

--- 307,309 -----
  			mp->m_who_to = "";
+ 	(void) fclose(nfd);
  }

Index: postnews.c
Prereq: 1.36
*** old/postnews.c	Fri Dec  4 02:52:20 1987
--- postnews.c	Sun Jan 15 19:49:03 1989
***************
*** 1,3
  /*
!  * This software is Copyright (c) 1986 by Rick Adams.
   *

--- 1,3 -----
  /*
!  * This software is Copyright 1986, 1989 by Rick Adams.
   *
***************
*** 19,21
  #ifdef SCCSID
! static char	*SccsId = "@(#)postnews.c	1.36	11/30/87";
  #endif /* SCCSID */

--- 19,21 -----
  #ifdef SCCSID
! static char	*SccsId = "@(#)postnews.c	1.37	1/15/89";
  #endif /* SCCSID */
***************
*** 43,44
  char newsgroups[BUFLEN];
  char isfrom[BUFLEN];

--- 43,45 -----
  char newsgroups[BUFLEN];
+ char followupto[BUFLEN];
  char isfrom[BUFLEN];
***************
*** 455,456
  	fprintf(tf, "Newsgroups: %s\n", newsgroups);
  	if (distribution[0] != '\0' && STRCMP(distribution, "world"))

--- 456,461 -----
  	fprintf(tf, "Newsgroups: %s\n", newsgroups);
+ 
+ 	if (followupto[0] != '\0')
+ 		fprintf(tf, "Followup-To: %s\n", followupto);
+ 
  	if (distribution[0] != '\0' && STRCMP(distribution, "world"))
***************
*** 460,461
  		fprintf(tf, "Keywords: %s\n", keywords);
  	if (summary[0] != '\0')

--- 465,467 -----
  		fprintf(tf, "Keywords: %s\n", keywords);
+ 
  	if (summary[0] != '\0')
***************
*** 468,470
  			of = xfopen(original, "r");
! 			while (fgets(buf, BUFSIZ, of) != NULL)
  				if (buf[0] == '\n')	/* skip headers */

--- 474,476 -----
  			of = xfopen(original, "r");
! 			while (fgets(buf, BUFLEN, of) != NULL)
  				if (buf[0] == '\n')	/* skip headers */
***************
*** 472,474
  			fprintf(tf, "In article %s, %s writes:\n", msgid, isfrom);
! 			while (fgets(buf, BUFSIZ, of) != NULL)
  				fprintf(tf, "> %s", buf);

--- 478,480 -----
  			fprintf(tf, "In article %s, %s writes:\n", msgid, isfrom);
! 			while (fgets(buf, BUFLEN, of) != NULL)
  				fprintf(tf, "> %s", buf);
***************
*** 586,587
  
  	if (ngmatch(newsgroups, "rec.humor,!rec.humor.all")) {

--- 592,602 -----
  
+ #ifdef SunIII
+ 	if
+ 	(
+ 		ngmatch(newsgroups, "rec.humor,!rec.humor.all")
+ 		||
+ 		ngmatch(newsgroups, "aus.jokes,!aus.jokes.d")
+ 	)
+ 	{
+ #else
  	if (ngmatch(newsgroups, "rec.humor,!rec.humor.all")) {
***************
*** 587,588
  	if (ngmatch(newsgroups, "rec.humor,!rec.humor.all")) {
  		if (askyes("Could this be offensive to anyone? ","")) {

--- 602,604 -----
  	if (ngmatch(newsgroups, "rec.humor,!rec.humor.all")) {
+ #endif
  		if (askyes("Could this be offensive to anyone? ","")) {
***************
*** 595,597
  
! 	if (ngmatch(newsgroups, "comp.sources.all,!comp.sources.wanted,!comp.sources.d")) {
  		if (!article_line(tempfname, "Subject: ", group)) {

--- 611,613 -----
  
! 	if (ngmatch(newsgroups, "comp.sources.all,!comp.sources.wanted,!comp.sources.d,!comp.sources.bugs")) {
  		if (!article_line(tempfname, "Subject: ", group)) {
***************
*** 618,621
  		if (ngmatch(newsgroups, "comp.sources.all")) {
! 			if (!ngmatch(newsgroups, "comp.sources.wanted") &&
! 			    stbuf.st_size < (4*1024)) {
  				printf("Your article seems rather small to be a source distribution.\n");

--- 634,636 -----
  		if (ngmatch(newsgroups, "comp.sources.all")) {
! 			if (stbuf.st_size < (4*1024)) {
  				printf("Your article seems rather small to be a source distribution.\n");
***************
*** 637,638
  	}
  }

--- 652,663 -----
  	}
+ 	if (index(newsgroups, NGDELIM) != NULL && followupto[0] == '\0') {
+ 		printf("Your article is being posted to multiple newsgroups.\n");
+ 		printf("In which newsgroup should the responses be posted?\n");
+ 		printf("Newsgroups: %s\n", newsgroups);
+ 		printf("(If responses should be mailed to you, enter \"poster\")\n");
+ 		getpr("Followup-To: ", followupto);
+ 		if (followupto[0] != '\0')
+ 			modify_article(tempfname, "Followup-To: ", followupto,
+ 				APPEND);
+ 	}
  }
***************
*** 1084,1086
  	}
- 
  	get_summary();

--- 1109,1110 -----
  	}
  	get_summary();

Index: patchlevel.h
Prereq: 15
*** .d/patchlevel.h	Fri Dec  4 02:52:37 1987
--- patchlevel.h	Mon Jan 23 17:22:22 1989
***************
*** 1,2
! #define	PATCHLEVEL	15
  

--- 1,2 -----
! #define	PATCHLEVEL	16
  
***************
*** 2,3
  
! #define NEWS_VERSION   "B 2.11 1/14/89"

--- 2,3 -----
  
! #define NEWS_VERSION   "B 2.11 1/23/89"

--- end of patch 16 ---


-- 
"Crack-pot societies of all kinds sprang up everwhere, advocating everything
from absolutism to anarchy. Queer cults arose, preaching free love, the
imminent end of the world, and many other departures from the norm of thought."
E.E. "Doc" Smith, Children of the Lens, 1954 | Arnold Robbins, skeeve!arnold