rick@uunet.UU.NET (Rick Adams) (01/25/89)
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 ---