home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume19 / cnews2 / pch23jul89 < prev    next >
Internet Message Format  |  1989-09-17  |  28KB

  1. From attcan!utzoo!henry@uunet.uu.net Wed Aug  9 10:40:14 1989
  2. Received: from BBN.COM by pineapple.bbn.com
  3.     id <AA14007@pineapple.bbn.com>; Wed, 9 Aug 89 10:39:57 -0400
  4. Received: from uunet.uu.net by BBN.COM id aa27422; 9 Aug 89 10:40 EDT
  5. Received: from attcan.UUCP by uunet.uu.net (5.61/1.14) with UUCP 
  6.     id AA02418; Wed, 9 Aug 89 10:37:41 -0400
  7. Date: Wed, 9 Aug 89 10:37:41 -0400
  8. From: attcan!utzoo!henry@uunet.uu.net
  9. Message-Id: <8908091437.AA02418@uunet.uu.net>
  10. To: source-patches@uunet.UU.NET
  11. Subject: C News patch of 23-Jul-1989
  12. Content-Type: text  
  13. Content-Length: 27346  
  14. Status: R
  15.  
  16. Here is another patch.  This one is being prepared in haste, as I'm about
  17. to leave for 10 days' vacation, and consequently I haven't had time to
  18. tackle the major pending issue, dbz.  This one is mostly trivia.  There
  19. are no serious bugs outstanding in any case.  There are a bunch of other
  20. small fixes that didn't get into this one because of lack of time.
  21.  
  22. This one includes...  Some fixes to reduce problems with doing compilation
  23. as one user and installation as another.  A fix for long-directory-name
  24. problems in ihave/sendme.  An Ultrix version of spacefor.  Some more cleanup
  25. and deletion of a couple of never-really-implemented features.  A couple of
  26. additions to build, essentially improvements in documentation.  Addition of
  27. a couple of options to doit.bin, so that you can suppress some stages of its
  28. operation (notably, actual installation) easily.  A small improvement to the
  29. ihave/sendme example in the sample sys file.  Minor portability fixes.  A
  30. fix for the off-by-one bug in the commented-out Lines: code in inews.  Fix
  31. for the inability to give arbitrary shell commands in a sys file.  And a
  32. quick-and-dirty fake -ms, not very good but functional enough to print our
  33. documentation on broken systems that don't have -ms.
  34.  
  35. start of patch 23-Jul-1989
  36. this should be run with   patch -p0 <thisfile
  37.  
  38. Some versions of patch have broken the Prereq feature, but it
  39. is such a good idea that we will try it anyway...
  40. Prereq: 23-Jun-1989
  41. Prereq: 7-Jul-1989
  42. *** tmp.dates.with.really.long.filename.for.patch    Sun Jul 23 00:19:05 1989
  43. --- PATCHDATES    Sun Jul 23 00:19:05 1989
  44. ***************
  45. *** 1,2 ****
  46. --- 1,3 ----
  47.   23-Jun-1989
  48.   7-Jul-1989
  49. + 23-Jul-1989
  50.  
  51. Changed files, if any:
  52.  
  53. *** cnpatch/tmp.file    Sun Jul 23 00:19:10 1989
  54. --- batch/Makefile    Thu Jul 20 17:56:15 1989
  55. ***************
  56. *** 36,42 ****
  57.   
  58.   bencode.o:    coder.h
  59.   
  60. ! bininstall:    all
  61.       -if test ! -d $(PGMDIR) ; then mkdir $(PGMDIR) ; fi
  62.       cp $(PGMS) $(PGMDIR)
  63.   
  64. --- 36,42 ----
  65.   
  66.   bencode.o:    coder.h
  67.   
  68. ! bininstall:    $(ALL)
  69.       -if test ! -d $(PGMDIR) ; then mkdir $(PGMDIR) ; fi
  70.       cp $(PGMS) $(PGMDIR)
  71.   
  72.  
  73. *** cnpatch/tmp.file    Sun Jul 23 00:19:14 1989
  74. --- batch/batchih    Mon Jul 17 17:47:33 1989
  75. ***************
  76. *** 14,20 ****
  77.       ;;
  78.   esac
  79.   
  80. ! dest=`expr "$NEWSSITE" : "^\([^.]*\)\.ihave$"`
  81.   case "$dest"
  82.   in
  83.       '')
  84. --- 14,20 ----
  85.       ;;
  86.   esac
  87.   
  88. ! dest=`expr "$NEWSSITE" : "^\(.*\)\.[^.]*$"`
  89.   case "$dest"
  90.   in
  91.       '')
  92.  
  93. *** cnpatch/tmp.file    Sun Jul 23 00:19:19 1989
  94. --- conf/Makefile    Thu Jul 20 17:53:40 1989
  95. ***************
  96. *** 18,28 ****
  97.   PGMS = spacefor queuelen
  98.   
  99.   all:    $(PGMS)
  100.   
  101.   bininstall:    $(PGMS)
  102. -     chmod +x $(PGMS)
  103.       cp $(PGMS) $(NEWSBIN)
  104. !     -if test -r hostname ; then chmod +x hostname ; cp hostname $(NEWSBIN) ; fi
  105.       : and build takes care of setnewsids if needed
  106.   
  107.   newsinstall:
  108. --- 18,29 ----
  109.   PGMS = spacefor queuelen
  110.   
  111.   all:    $(PGMS)
  112. +     chmod +x $(PGMS)
  113. +     -if test -r hostname ; then chmod +x hostname ; fi
  114.   
  115.   bininstall:    $(PGMS)
  116.       cp $(PGMS) $(NEWSBIN)
  117. !     -if test -r hostname ; then cp hostname $(NEWSBIN) ; fi
  118.       : and build takes care of setnewsids if needed
  119.   
  120.   newsinstall:
  121. ***************
  122. *** 36,42 ****
  123.       rm -f junk
  124.       ./subst -f substitutions `sed 's;^;../;' subst.hs subst.gc`
  125.   
  126. ! spacefors:    spacefor.sysv spacefor.v7 spacefor.sgi spacefor.bsd spacefor.null
  127.   
  128.   spacefor.bsd:    spacefor.proto Makefile
  129.       cp spacefor.proto $@
  130. --- 37,43 ----
  131.       rm -f junk
  132.       ./subst -f substitutions `sed 's;^;../;' subst.hs subst.gc`
  133.   
  134. ! spacefors:    spacefor.sysv spacefor.v7 spacefor.sgi spacefor.bsd spacefor.ultrix spacefor.null
  135.   
  136.   spacefor.bsd:    spacefor.proto Makefile
  137.       cp spacefor.proto $@
  138. ***************
  139. *** 50,55 ****
  140. --- 51,59 ----
  141.   spacefor.sgi:    spacefor.proto Makefile
  142.       sed '/dfunit=/s/1024/512/;/nf = 4/s//nf = 5/;/stupid/s/4BSD/SGI/' spacefor.proto >$@
  143.   
  144. + spacefor.ultrix:    spacefor.proto Makefile
  145. +     sed '/nr = 2/s//nr = 3/;/stupid/s/4BSD/Ultrix/' spacefor.proto >$@
  146.   spacefor.null:    Makefile
  147.       echo '#! /bin/sh' >$@
  148.       echo 'echo 100' >>$@
  149. ***************
  150. *** 74,80 ****
  151.   clean:
  152.       rm -f spacefor.sysv spacefor.v7 spacefor.null queuelen.null
  153.       rm -f spacefor.sgi
  154. !     rm -f allowed config mailname organization server whoami hostname errlog
  155.       rm -f substitutions history history.pag history.dir active localgroups
  156.       rm -f log mailpaths sys cron rc setnewsids setnewsids.o spacefor.bsd
  157.       rm -f replyusepath spacefor queuelen junk
  158. --- 78,84 ----
  159.   clean:
  160.       rm -f spacefor.sysv spacefor.v7 spacefor.null queuelen.null
  161.       rm -f spacefor.sgi
  162. !     rm -f config mailname organization server whoami hostname errlog
  163.       rm -f substitutions history history.pag history.dir active localgroups
  164.       rm -f log mailpaths sys cron rc setnewsids setnewsids.o spacefor.bsd
  165.       rm -f replyusepath spacefor queuelen junk
  166.  
  167. *** cnpatch/tmp.file    Sun Jul 23 00:19:21 1989
  168. --- conf/build    Sat Jul 22 22:07:13 1989
  169. ***************
  170. *** 10,16 ****
  171.   pgmdirs='conf batch expire input relay misc rna'
  172.   
  173.   # control files built in conf
  174. ! ctlf="active allowed errlog history history.pag history.dir localgroups"
  175.   ctlf="$ctlf log mailname mailpaths organization postdefltdist postdefltgroup"
  176.   ctlf="$ctlf replyusepath server sys whoami"
  177.   
  178. --- 10,16 ----
  179.   pgmdirs='conf batch expire input relay misc rna'
  180.   
  181.   # control files built in conf
  182. ! ctlf="active errlog history history.pag history.dir localgroups"
  183.   ctlf="$ctlf log mailname mailpaths organization postdefltdist postdefltgroup"
  184.   ctlf="$ctlf replyusepath server sys whoami"
  185.   
  186. ***************
  187. *** 60,65 ****
  188. --- 60,74 ----
  189.   case "$bingid" in
  190.   '')    bingid=bin    ;;
  191.   esac
  192. + ./query "Do the C News sources belong to $binuid [yes]? "
  193. + read answer
  194. + case "$answer" in
  195. + n*|N*)    echo "You may need to do some of the installation procedures by hand"
  196. +     echo "after the software is built; doit.bin assumes that it has the"
  197. +     echo "power to create files in the source directories and to update"
  198. +     echo "the news programs."
  199. +     ;;
  200. + esac
  201.   
  202.   answer=
  203.   if test -d /var -a -d /usr/share
  204. ***************
  205. *** 249,254 ****
  206. --- 258,264 ----
  207.       exit 1
  208.   fi
  209.   (
  210. +     echo '#! /bin/sh'
  211.       echo "umask $newsumask"
  212.       echo 'set -x'
  213.       echo ": making directories..."
  214. ***************
  215. *** 573,578 ****
  216. --- 583,589 ----
  217.   echo '    bsd    4.2BSD and later'
  218.   echo '    sysv    most System Vs'
  219.   echo '    sgi    Silicon Graphics Iris systems'
  220. + echo '    ultrix    DEC Ultrix 3.0 (and later) (and earlier??)'
  221.   echo '    v7    plain old style:  no headers or fluff, just name and number'
  222.   echo "    null    don't know or don't care how much space is available"
  223.   while true
  224. ***************
  225. *** 587,593 ****
  226.           ;;
  227.       esac
  228.       case "$dftype" in
  229. !     bsd|sysv|sgi|v7|null)    break    ;;
  230.       esac
  231.       echo 'Sorry, no such choice is available.'
  232.   done
  233. --- 598,604 ----
  234.           ;;
  235.       esac
  236.       case "$dftype" in
  237. !     bsd|sysv|sgi|ultrix|v7|null)    break    ;;
  238.       esac
  239.       echo 'Sorry, no such choice is available.'
  240.   done
  241. ***************
  242. *** 678,688 ****
  243.   read organization
  244.   
  245.   echo
  246. - echo 'What user other than root (if any) should be allowed to create'
  247. - ./query 'new news groups [no such user]? '
  248. - read allowed
  249. - echo
  250.   echo 'Manual pages are normally stored in a tree structure under /usr/man.'
  251.   echo 'Local practices vary a great deal, however, and System V has also'
  252.   echo 'introduced some bizarre distortions into this once-simple structure.'
  253. --- 689,694 ----
  254. ***************
  255. *** 755,760 ****
  256. --- 761,782 ----
  257.   read postdefltdist
  258.   
  259.   echo
  260. + echo 'The ihave/sendme protocol, although marginally useful in some cases,'
  261. + echo 'is a security hole -- it lets another site ask for any article by'
  262. + echo 'Message-ID, and if your Message-IDs are predictable enough (which'
  263. + echo "C News's generally are not, mind you), that site can get any article"
  264. + echo 'currently on your system.  Do you have any newsgroups containing'
  265. + ./query 'confidential or proprietary material [no]? '
  266. + read answer
  267. + case "$answer" in
  268. + n*|N*|'')    ;;
  269. + *)    echo 'You should substitute relay/ihave.not.c for relay/ihave.c'
  270. +     echo 'before running doit.bin, so that ihave/sendme is disabled'
  271. +     echo 'at your site.'
  272. +     ;;
  273. + esac
  274. + echo
  275.   echo 'building doit.bin...'
  276.   >doit.bin
  277.   if test ! -w doit.bin
  278. ***************
  279. *** 763,768 ****
  280. --- 785,792 ----
  281.       exit 1
  282.   fi
  283.   (
  284. +     echo '#! /bin/sh'
  285. +     echo '# -i suppresses install, -t suppresses stdio test, -s suppresses subst'
  286.       echo "umask $newsumask"
  287.       echo "set -x"
  288.       echo ': setting up for substitutions'
  289. ***************
  290. *** 832,838 ****
  291.       echo "cd ../conf"
  292.       if test " $needsubst" = " y"
  293.       then
  294. !         echo "make substs"
  295.       else
  296.           echo ": make substs        not necessary, defaults used"
  297.       fi
  298. --- 856,865 ----
  299.       echo "cd ../conf"
  300.       if test " $needsubst" = " y"
  301.       then
  302. !         echo 'case "$1" in'
  303. !         echo '-*s*)    ;;'
  304. !         echo '*)    make substs    ;;'
  305. !         echo 'esac'
  306.       else
  307.           echo ": make substs        not necessary, defaults used"
  308.       fi
  309. ***************
  310. *** 878,890 ****
  311.       echo ': library done'
  312.       if test " $libstdio" != " "
  313.       then
  314. !         echo ': testing libstdio'
  315. !         echo 'cd ../libstdio'
  316. !         echo ': produces some meaningless-looking output on terminal,'
  317. !         echo ': but do not redirect it -- it is important that stdio'
  318. !         echo ': think output is going to a terminal.'
  319. !         echo "make trials $cc $copts $postlibs || exit 1"
  320. !         echo ': done'
  321.       fi
  322.       echo ': building programs'
  323.       echo 'cd ../conf'
  324. --- 905,921 ----
  325.       echo ': library done'
  326.       if test " $libstdio" != " "
  327.       then
  328. !         echo 'case "$1" in'
  329. !         echo '-*t*)    ;;'
  330. !         echo '*)    : testing libstdio'
  331. !         echo '    cd ../libstdio'
  332. !         echo '    : produces some meaningless-looking output on terminal,'
  333. !         echo '    : but do not redirect it -- it is important that stdio'
  334. !         echo '    : think output is going to a terminal.'
  335. !         echo "    make trials $cc $copts $postlibs || exit 1"
  336. !         echo '    : done'
  337. !         echo '    ;;'
  338. !         echo 'esac'
  339.       fi
  340.       echo ': building programs'
  341.       echo 'cd ../conf'
  342. ***************
  343. *** 906,915 ****
  344.       echo "cat <<'!' >organization"
  345.       echo "$organization"
  346.       echo '!'
  347. -     if test " $allowed" != " "
  348. -     then
  349. -         echo "echo '$allowed' >allowed"
  350. -     fi
  351.       if test " $server" != " "
  352.       then
  353.           echo "echo '$server' >server"
  354. --- 937,942 ----
  355. ***************
  356. *** 951,957 ****
  357.       echo "!"
  358.       echo "echo 'su news -c $newsbin/maint/newsboot' >rc"
  359.       echo ": done"
  360. !     echo ': installing programs'
  361.       echo "for dir in $pgmdirs"
  362.       echo "do"
  363.       echo "    cd ../\$dir"
  364. --- 978,987 ----
  365.       echo "!"
  366.       echo "echo 'su news -c $newsbin/maint/newsboot' >rc"
  367.       echo ": done"
  368. !     echo 'case "$1" in'
  369. !     echo '-*i*)    exit 0    ;;'
  370. !     echo 'esac'
  371. !     echo ': installing programs'
  372.       echo "for dir in $pgmdirs"
  373.       echo "do"
  374.       echo "    cd ../\$dir"
  375. ***************
  376. *** 980,985 ****
  377. --- 1010,1016 ----
  378.       exit 1
  379.   fi
  380.   (
  381. +     echo '#! /bin/sh'
  382.       echo "umask $newsumask"
  383.       echo 'set -x'
  384.       echo ': installing programs'
  385. ***************
  386. *** 1026,1031 ****
  387. --- 1057,1063 ----
  388.       exit 1
  389.   fi
  390.   (
  391. +     echo '#! /bin/sh'
  392.       echo "umask $newsumask"
  393.       echo 'set -x'
  394.       if test " $sete" != " y"
  395. ***************
  396. *** 1052,1065 ****
  397.   
  398.   echo
  399.   chmod +x doit.root doit.bin doit.news again.root
  400. ! echo 'You should now run doit.root as root (or as somebody with the power'
  401. ! echo "to create $newsctl, $newsarts, and $newsbin"
  402. ! echo "and run chown), doit.bin as $binuid, doit.news as $newsuid, and"
  403. ! echo "again.root as root (or as somebody with the power to run chown),"
  404. ! echo 'in that order.  Finally, you will want to add the contents of'
  405. ! echo "'cron', or something similar, to your cron's work-to-be-done"
  406. ! echo "file(s), and the contents of 'rc', or something similar, to"
  407. ! echo '/etc/rc or whatever your system executes when booting.'
  408.   echo
  409.   echo '"make gclean" will clean up everything afterwards.  "make lclean"'
  410.   echo 'does a less drastic cleanup affecting only the library directories.'
  411. --- 1084,1097 ----
  412.   
  413.   echo
  414.   chmod +x doit.root doit.bin doit.news again.root
  415. ! echo "You should now run doit.root as root, doit.bin as $binuid, doit.news"
  416. ! echo "as $newsuid, and again.root as root, in that order.  (This assumes"
  417. ! echo "that the source directories are owned by $binuid.  If you need to do"
  418. ! echo "installation work by hand, run 'doit.bin -i' as the owner; this will"
  419. ! echo "create the programs but won't install them.)  Finally, you will"
  420. ! echo "want to add the contents of 'cron', or something similar, to your"
  421. ! echo "cron's work-to-be-done file(s), and the contents of 'rc', or something"
  422. ! echo "similar, to /etc/rc or whatever your system executes when booting."
  423.   echo
  424.   echo '"make gclean" will clean up everything afterwards.  "make lclean"'
  425.   echo 'does a less drastic cleanup affecting only the library directories.'
  426.  
  427. *** cnpatch/tmp.file    Sun Jul 23 00:19:28 1989
  428. --- conf/sys.proto    Sat Jul 22 23:25:17 1989
  429. ***************
  430. *** 25,27 ****
  431. --- 25,29 ----
  432.   # Send articles in response to sendme messages from louie. (#5)
  433.   louie-real:to.louie/sendme:f:louie/togo
  434.   # Actually the last two could be combined.
  435. + # and send local postings to louie without waiting (beware ihave/sendme)
  436. + louie-local:comp,news,sci,rec,misc,soc,talk/all,!sendme,!ihave:L:
  437.  
  438. *** cnpatch/tmp.file    Sun Jul 23 00:19:39 1989
  439. --- doc/README    Sat Jul  8 23:59:19 1989
  440. ***************
  441. *** 7,9 ****
  442. --- 7,10 ----
  443.   install.out    nroffed version of install
  444.   interface    technical summary of how C News works and its interface to
  445.           the rest of the system
  446. + tmac.cn        freely-redistributable fake of enough of -ms for C News
  447.  
  448. *** cnpatch/tmp.file    Sun Jul 23 00:19:42 1989
  449. --- expire/Makefile    Thu Jul 20 17:54:55 1989
  450. ***************
  451. *** 21,30 ****
  452.   SHELL = /bin/sh
  453.   
  454.   all:    $(THEM)
  455.   
  456.   bininstall:    $(THEM) explist.proto
  457.       -if test ! -d $(NEWSBIN)/expire ; then mkdir $(NEWSBIN)/expire; fi
  458. -     chmod +x $(THEM)
  459.       cp $(THEM) $(NEWSBIN)/expire
  460.   
  461.   newsinstall:    explist.proto
  462. --- 21,30 ----
  463.   SHELL = /bin/sh
  464.   
  465.   all:    $(THEM)
  466. +     chmod +x $(THEM)
  467.   
  468.   bininstall:    $(THEM) explist.proto
  469.       -if test ! -d $(NEWSBIN)/expire ; then mkdir $(NEWSBIN)/expire; fi
  470.       cp $(THEM) $(NEWSBIN)/expire
  471.   
  472.   newsinstall:    explist.proto
  473.  
  474. *** cnpatch/tmp.file    Sun Jul 23 00:19:54 1989
  475. --- input/Makefile    Thu Jul 20 17:55:47 1989
  476. ***************
  477. *** 25,33 ****
  478.       rnews.8 bdecode.c recenews recpnews
  479.   
  480.   all:    $(THEM) rnews
  481. - bininstall:    all
  482.       chmod +x $(THEM) rnews
  483.       -if test ! -d $(NEWSBIN)/input ; then mkdir $(NEWSBIN)/input ; fi
  484.       rm -f $(NEWSBIN)/input/newsspool
  485.       cp $(THEM) $(NEWSBIN)/input
  486. --- 25,33 ----
  487.       rnews.8 bdecode.c recenews recpnews
  488.   
  489.   all:    $(THEM) rnews
  490.       chmod +x $(THEM) rnews
  491. + bininstall:    $(THEM) rnews
  492.       -if test ! -d $(NEWSBIN)/input ; then mkdir $(NEWSBIN)/input ; fi
  493.       rm -f $(NEWSBIN)/input/newsspool
  494.       cp $(THEM) $(NEWSBIN)/input
  495.  
  496. *** cnpatch/tmp.file    Sun Jul 23 00:20:09 1989
  497. --- libcnews/ngmatch.c    Sat Jul 22 22:09:15 1989
  498. ***************
  499. *** 39,45 ****
  500.   static boolean debug = NO;
  501.   
  502.   /* forwards */
  503. ! extern boolean mpatsmatch();
  504.   
  505.   void
  506.   matchdebug(state)
  507. --- 39,46 ----
  508.   static boolean debug = NO;
  509.   
  510.   /* forwards */
  511. ! FORWARD boolean mpatsmatch();
  512. ! FORWARD int onepatmatch();
  513.   
  514.   void
  515.   matchdebug(state)
  516.  
  517. *** cnpatch/tmp.file    Sun Jul 23 00:20:33 1989
  518. --- man/newsbatch.8    Mon Jul 17 17:52:10 1989
  519. ***************
  520. *** 6,12 ****
  521.   .ds c /usr/lib/news
  522.   .\" =()<.ds m @<NEWSMASTER>@>()=
  523.   .ds m usenet
  524. ! .TH NEWSBATCH 8 "4 July 1989" "C News"
  525.   .SH NAME
  526.   sendbatches, batchsplit \- news batching to other sites
  527.   .br
  528. --- 6,12 ----
  529.   .ds c /usr/lib/news
  530.   .\" =()<.ds m @<NEWSMASTER>@>()=
  531.   .ds m usenet
  532. ! .TH NEWSBATCH 8 "17 July 1989" "C News"
  533.   .SH NAME
  534.   sendbatches, batchsplit \- news batching to other sites
  535.   .br
  536. ***************
  537. *** 169,174 ****
  538. --- 169,183 ----
  539.   \fB\-d\ \*a\fR to \fIbatcher\fR will speed it up noticeably.
  540.   Since \fIsendbatches\fR does this, other preparers had better be ready
  541.   to ignore an initial \fB\-d\fR option.
  542. + .PP
  543. + .I Batchih
  544. + and
  545. + .I batchsm
  546. + have to map from the phony ``site name'' given in their \fIbatchparms\fR
  547. + line to the name of the site they should actually send to; they do this
  548. + by stripping off the last `.' and everything that follows (usually
  549. + `.ihave' or `.sendme' respectively, but on machines which limit the size
  550. + of filenames these may have to be shortened).
  551.   .PP
  552.   Batch compressors in the standard distribution are:
  553.   .RS
  554.  
  555. *** cnpatch/tmp.file    Sun Jul 23 00:20:36 1989
  556. --- man/rnews.8    Fri Jul 14 13:06:53 1989
  557. ***************
  558. *** 6,12 ****
  559.   .ds c /usr/lib/news
  560.   .\" =()<.ds m @<NEWSMASTER>@>()=
  561.   .ds m usenet
  562. ! .TH RNEWS 8 "22 June 1989" "C News"
  563.   .SH NAME
  564.   rnews, cunbatch \- accept and spool news input
  565.   .br
  566. --- 6,12 ----
  567.   .ds c /usr/lib/news
  568.   .\" =()<.ds m @<NEWSMASTER>@>()=
  569.   .ds m usenet
  570. ! .TH RNEWS 8 "14 July 1989" "C News"
  571.   .SH NAME
  572.   rnews, cunbatch \- accept and spool news input
  573.   .br
  574. ***************
  575. *** 15,24 ****
  576.   newsrunning \- control news-processing daemon
  577.   .SH SYNOPSIS
  578.   .B rnews
  579. - [ file ... ]
  580.   .br
  581.   .B cunbatch
  582. - [ file ... ]
  583.   .br
  584.   .B \*b/input/newsspool
  585.   [
  586. --- 15,22 ----
  587. ***************
  588. *** 33,40 ****
  589.   {\fBon\fR|\fBoff\fR}
  590.   .SH DESCRIPTION
  591.   .I Rnews
  592. ! accepts the named \fIfile\fR(s) (standard input default)
  593. ! as news, and spools it up for processing, space permitting.
  594.   .I Cunbatch
  595.   is a historical synonym for
  596.   .IR rnews ;
  597. --- 31,38 ----
  598.   {\fBon\fR|\fBoff\fR}
  599.   .SH DESCRIPTION
  600.   .I Rnews
  601. ! accepts news from standard input
  602. ! and spools it up for processing, space permitting.
  603.   .I Cunbatch
  604.   is a historical synonym for
  605.   .IR rnews ;
  606.  
  607. *** cnpatch/tmp.file    Sun Jul 23 00:20:38 1989
  608. --- misc/Makefile    Thu Jul 20 17:57:44 1989
  609. ***************
  610. *** 17,27 ****
  611.   THEM = $(MAINT) $(UTILS)
  612.   
  613.   all:    $(THEM)
  614.   
  615.   bins:    $(UTILBIN)
  616.   
  617.   bininstall: $(THEM)
  618. -     chmod +x $(THEM)
  619.       -if test ! -d $(NEWSBIN)/maint ; then mkdir $(NEWSBIN)/maint ; fi
  620.       cp $(MAINT) $(NEWSBIN)/maint
  621.       cp $(UTILS) $(NEWSBIN)
  622. --- 17,27 ----
  623.   THEM = $(MAINT) $(UTILS)
  624.   
  625.   all:    $(THEM)
  626. +     chmod +x $(THEM)
  627.   
  628.   bins:    $(UTILBIN)
  629.   
  630.   bininstall: $(THEM)
  631.       -if test ! -d $(NEWSBIN)/maint ; then mkdir $(NEWSBIN)/maint ; fi
  632.       cp $(MAINT) $(NEWSBIN)/maint
  633.       cp $(UTILS) $(NEWSBIN)
  634.  
  635. *** cnpatch/tmp.file    Sun Jul 23 00:20:53 1989
  636. --- notebook/README    Sun Jul  9 00:00:27 1989
  637. ***************
  638. *** 6,14 ****
  639.   Most everything here is set up for the -ms macros, although very little
  640.   fancy formatting is used in general.  The standard R, I, and B are the
  641.   only fonts used.  Conversion to another macro package should not be hard.
  642.   
  643.   Ihave.pic.in is an illustration for ihave; ihave.pic is what you get after
  644.   you run ihave.pic.in through pic (in case you have a troff that knows about
  645.   the graphics commands but don't have pic).
  646.   
  647. ! Config and newslock need tbl.  Nothing here uses eqn.
  648. --- 6,15 ----
  649.   Most everything here is set up for the -ms macros, although very little
  650.   fancy formatting is used in general.  The standard R, I, and B are the
  651.   only fonts used.  Conversion to another macro package should not be hard.
  652. + Or see doc/tmac.cn, which is a fake -ms good enough for this stuff.
  653.   
  654.   Ihave.pic.in is an illustration for ihave; ihave.pic is what you get after
  655.   you run ihave.pic.in through pic (in case you have a troff that knows about
  656.   the graphics commands but don't have pic).
  657.   
  658. ! Config, newslock, log need tbl.  Nothing here uses eqn.
  659.  
  660. *** cnpatch/tmp.file    Sun Jul 23 00:20:54 1989
  661. --- notebook/config    Sat Jul  8 21:53:39 1989
  662. ***************
  663. *** 149,155 ****
  664.   # foobar \- does foo, bar, and bletch
  665.   
  666.   # =()<. ${NEWSCONFIG\-@<NEWSCONFIG>@}>()=
  667. ! . ${NEWSCONFIG\-/usr/lib/news/bin/config}
  668.   
  669.   PATH=$NEWSCTL/bin:$NEWSBIN/xxx:$NEWSBIN:$NEWSPATH ; export PATH
  670.   umask $NEWSUMASK
  671. --- 149,155 ----
  672.   # foobar \- does foo, bar, and bletch
  673.   
  674.   # =()<. ${NEWSCONFIG\-@<NEWSCONFIG>@}>()=
  675. ! \&. ${NEWSCONFIG\-/usr/lib/news/bin/config}
  676.   
  677.   PATH=$NEWSCTL/bin:$NEWSBIN/xxx:$NEWSBIN:$NEWSPATH ; export PATH
  678.   umask $NEWSUMASK
  679.  
  680. *** cnpatch/tmp.file    Sun Jul 23 00:20:58 1989
  681. --- notebook/log    Sat Jul  8 23:52:39 1989
  682. ***************
  683. *** 65,71 ****
  684.   Jul  4 07:17:51.757 utgpu - <89Jul4.043358edt.10369@neat.ai.toronto.edu> duplicate
  685.   Jul  4 17:23:28.234 utgpu - <2537@quanta.eng.ohio-state.edu> no subscribed groups in `rec.arts.sf-lovers,rec.arts.startrek,rec.arts.drwho'
  686.   Jul  4 19:17:15.785 utgpu - <89Jul4.190330edt.5559@gpu.utcs.utoronto.ca> all groups `list.humanist' excluded in active
  687. ! .ft R
  688.   .DE
  689.   .PP
  690.   The classification codes are:
  691. --- 65,73 ----
  692.   Jul  4 07:17:51.757 utgpu - <89Jul4.043358edt.10369@neat.ai.toronto.edu> duplicate
  693.   Jul  4 17:23:28.234 utgpu - <2537@quanta.eng.ohio-state.edu> no subscribed groups in `rec.arts.sf-lovers,rec.arts.startrek,rec.arts.drwho'
  694.   Jul  4 19:17:15.785 utgpu - <89Jul4.190330edt.5559@gpu.utcs.utoronto.ca> all groups `list.humanist' excluded in active
  695. ! .vs
  696. ! .ps
  697. ! .ft
  698.   .DE
  699.   .PP
  700.   The classification codes are:
  701.  
  702. *** cnpatch/tmp.file    Sun Jul 23 00:21:15 1989
  703. --- relay/hdrint.h    Sat Jul 22 22:09:15 1989
  704. ***************
  705. *** 10,18 ****
  706.   #endif                /* __STDC__ < 1 */
  707.   #endif                /* __STDC__ */
  708.   
  709. ! #ifndef REALSTDC
  710.   #define const
  711. - #endif                /* REALSTDC */
  712.   
  713.   #ifndef DEFDIST
  714.   #define DEFDIST "world"        /* default Distribution: */
  715. --- 10,20 ----
  716.   #endif                /* __STDC__ < 1 */
  717.   #endif                /* __STDC__ */
  718.   
  719. ! /*
  720. !  * using const seemed like a good idea at the time.  then i discovered
  721. !  * const-poisoning.
  722. !  */
  723.   #define const
  724.   
  725.   #ifndef DEFDIST
  726.   #define DEFDIST "world"        /* default Distribution: */
  727.  
  728. *** cnpatch/tmp.file    Sun Jul 23 00:21:21 1989
  729. --- relay/makefile    Thu Jul 20 17:59:05 1989
  730. ***************
  731. *** 48,53 ****
  732. --- 48,54 ----
  733.       hdrint.h headers.h history.h system.h transmit.h trbatch.h $(SRC)
  734.   
  735.   all: makefile relaynews
  736. +     chmod +x sh/* aux/* ctl/*
  737.   
  738.   mkfile: makefile
  739.       sed '/mkfile/d' makefile | mkconv | sed 's/make/mk/g' >$@
  740. ***************
  741. *** 70,80 ****
  742.       rm -f $(NEWSBIN)/relay/relaynews
  743.       cp relaynews $(NEWSBIN)/relay
  744.       : needs to be news-owned, setuid -- build looks after that
  745. -     chmod +x sh/* aux/* ctl/*
  746.       cp sh/* $(NEWSBIN)/inject
  747.       cp ctl/* $(NEWSBIN)/ctl
  748.       cp aux/* $(NEWSBIN)/relay
  749. !     cp sh/postnews sh/inews $(BIN)
  750.   
  751.   TODO.grep: TODO
  752.       -egrep TODO ../include/*.h *.h *.c sh/* | tr -s " \11" " " >$@
  753. --- 71,81 ----
  754.       rm -f $(NEWSBIN)/relay/relaynews
  755.       cp relaynews $(NEWSBIN)/relay
  756.       : needs to be news-owned, setuid -- build looks after that
  757.       cp sh/* $(NEWSBIN)/inject
  758.       cp ctl/* $(NEWSBIN)/ctl
  759.       cp aux/* $(NEWSBIN)/relay
  760. !     ln $(NEWSBIN)/inject/postnews $(BIN)/postnews || cp sh/postnews $(BIN)
  761. !     ln $(NEWSBIN)/inject/inews $(BIN)/inews || cp sh/inews $(BIN)
  762.   
  763.   TODO.grep: TODO
  764.       -egrep TODO ../include/*.h *.h *.c sh/* | tr -s " \11" " " >$@
  765.  
  766. *** cnpatch/tmp.file    Sun Jul 23 00:21:37 1989
  767. --- relay/sh/inews    Fri Jul 21 15:12:53 1989
  768. ***************
  769. *** 180,192 ****
  770.   
  771.   # post with new headers and .signature
  772.   (anne.jones <$inhdrs        # bash headers
  773. !  # echo "Lines: `        # sop to msb, just uncomment to use
  774. !  # if test -r $HOME/.signature; then
  775. !  #    (cat $inbody; echo '-- '; sed 4q $HOME/.signature) | wc -l
  776. !  # else
  777. !  #    wc -l <$inbody
  778. !  # fi
  779. !  # `"
  780.   
  781.    # strip invisible chars from body, a la B news
  782.    case "$trversion" in
  783. --- 180,192 ----
  784.   
  785.   # post with new headers and .signature
  786.   (anne.jones <$inhdrs        # bash headers
  787. ! # lines="`            # sop to msb, just uncomment to use
  788. ! # (sed 1d $inbody;    # take out the first (blank) line
  789. ! # if test -r $HOME/.signature; then
  790. ! #     echo '-- '
  791. ! #     sed 4q $HOME/.signature
  792. ! # fi) | wc -l `"
  793. ! # echo Lines: $lines
  794.   
  795.    # strip invisible chars from body, a la B news
  796.    case "$trversion" in
  797.  
  798. *** cnpatch/tmp.file    Sun Jul 23 00:21:40 1989
  799. --- relay/transmit.c    Tue Jul 11 12:47:15 1989
  800. ***************
  801. *** 176,183 ****
  802.           bincmd = strsave(binfile("relay"));
  803.       cmd = nemalloc((unsigned)(STRLEN("PATH=") + strlen(ctlcmd) +
  804.           STRLEN(":") + strlen(bincmd) + STRLEN(":") + strlen(newspath()) +
  805. !         STRLEN(" <") + strlen(filename) + STRLEN(" ") +
  806. !         strlen(syscmd) + strlen(filename) + 1));
  807.       (void) strcpy(cmd, "PATH=");
  808.       (void) strcat(cmd, ctlcmd);
  809.       (void) strcat(cmd, ":");
  810. --- 176,183 ----
  811.           bincmd = strsave(binfile("relay"));
  812.       cmd = nemalloc((unsigned)(STRLEN("PATH=") + strlen(ctlcmd) +
  813.           STRLEN(":") + strlen(bincmd) + STRLEN(":") + strlen(newspath()) +
  814. !         STRLEN(";<") + strlen(filename) + STRLEN(" (") +
  815. !         strlen(syscmd) + strlen(filename) + STRLEN(")") + 1));
  816.       (void) strcpy(cmd, "PATH=");
  817.       (void) strcat(cmd, ctlcmd);
  818.       (void) strcat(cmd, ":");
  819. ***************
  820. *** 184,192 ****
  821.       (void) strcat(cmd, bincmd);
  822.       (void) strcat(cmd, ":");
  823.       (void) strcat(cmd, newspath());
  824. !     (void) strcat(cmd, " <");
  825.       (void) strcat(cmd, filename);
  826. !     (void) strcat(cmd, " ");
  827.       percent = index(syscmd, '%');
  828.       if (percent == NULL)
  829.           (void) strcat(cmd, syscmd);
  830. --- 184,192 ----
  831.       (void) strcat(cmd, bincmd);
  832.       (void) strcat(cmd, ":");
  833.       (void) strcat(cmd, newspath());
  834. !     (void) strcat(cmd, ";<");
  835.       (void) strcat(cmd, filename);
  836. !     (void) strcat(cmd, " (");
  837.       percent = index(syscmd, '%');
  838.       if (percent == NULL)
  839.           (void) strcat(cmd, syscmd);
  840. ***************
  841. *** 206,211 ****
  842. --- 206,212 ----
  843.           } else
  844.               (void) sprintf(cmd+strlen(cmd), syscmd, filename);
  845.       }
  846. +     (void) strcat(cmd, ")");
  847.       exitstat = system(cmd);
  848.       if (exitstat != 0) {
  849.           art->a_status |= ST_DROPPED;
  850.  
  851. *** cnpatch/tmp.file    Sun Jul 23 00:21:47 1989
  852. --- rna/makefile    Thu Jul 20 17:59:54 1989
  853. ***************
  854. *** 39,44 ****
  855. --- 39,45 ----
  856.       $(INSTALL) -c $*.sh bin 755 $@
  857.   
  858.   all: readnews checknews
  859. +     chmod +x checknews
  860.       : warning, defs.h may not be right for your system
  861.   
  862.   readnews: $(ROFILES) defs.h $(LIBS)
  863. ***************
  864. *** 55,61 ****
  865.       cp readnews $(BINDIR)
  866.       : "$(INSTALL) - readnews bin 711 $(BINDIR)/readnews $(BINDIR)/news"
  867.   $(BINDIR)/checknews:    checknews
  868. -     chmod +x checknews
  869.       cp checknews $(BINDIR)
  870.   
  871.   defs.h:    at.h # $C
  872. --- 56,61 ----
  873.  
  874. Files that are new:
  875.  
  876. new doc/tmac.cn (patch can't create, so diff against null):
  877. Index: doc/tmac.cn
  878. *** cnpatch/tmp.preposterously.long.name.to.make.patch.behave.right    Sun Jul 23 00:19:04 1989
  879. --- doc/tmac.cn    Sat Jul  8 23:59:43 1989
  880. ***************
  881. *** 0 ****
  882. --- 1,151 ----
  883. + .\" fake -ms, not very functional but enough for C News documents
  884. + .de Ph
  885. + 'sp 2.5
  886. + 'if \\n%>1 'tl @@- % -@@
  887. + 'sp |1i
  888. + 'ns
  889. + 'os
  890. + ..
  891. + .de Pf
  892. + 'sp 2
  893. + 'if \\n%=1 'tl @@@\\*(Da@
  894. + 'bp
  895. + ..
  896. + .de DA
  897. + .ds Da "\\$1
  898. + ..
  899. + .de TL
  900. + \&
  901. + .sp 0.5i
  902. + .ft B
  903. + .ps +2
  904. + .ce 999
  905. + .nr Tl 1
  906. + ..
  907. + .de AU
  908. + .sp 2
  909. + .Et
  910. + ..
  911. + .de Et
  912. + .if \\n(Tl=1 \{\
  913. + .br
  914. + .ps -2
  915. + .ft R
  916. + .nr Tl 2\}
  917. + ..
  918. + .de Eh
  919. + .Et
  920. + .if \\n(Tl=2 \{\
  921. + .ce 0
  922. + .sp 1i
  923. + .nr Tl 0\}
  924. + ..
  925. + .de AI
  926. + .sp 1
  927. + .Et
  928. + ..
  929. + .de AB
  930. + .Eh
  931. + .ll -1i
  932. + .in +1i
  933. + ..
  934. + .de AE
  935. + .br
  936. + .ll
  937. + .in
  938. + .sp 1i
  939. + ..
  940. + .de SH
  941. + .Eh
  942. + .br
  943. + .ne 0.75i
  944. + .sp 1.2
  945. + .in 0
  946. + .ft B
  947. + .nr Sh 1
  948. + ..
  949. + .de PP
  950. + .LP
  951. + .ti 5n
  952. + ..
  953. + .de LP
  954. + .Eh
  955. + .Es
  956. + .in \\n(Rsn
  957. + .sp 0.5
  958. + ..
  959. + .de IP
  960. + .Es
  961. + .br
  962. + .ne 0.7i
  963. + .sp 0.5
  964. + .if \\n(.$>1 .nr Ip \\$2
  965. + .in \\n(Rsn+\\n(Ipn
  966. + .ti \\n(Rsn
  967. + .ie \\w@\\$1@u<\\n(Ipn \{\
  968. + .ta \\n(Ipn
  969. + \&\\$1\t\c\}
  970. + .el \{\
  971. + \\&\\$1
  972. + .br\}
  973. + ..
  974. + .de Es
  975. + .if \\n(Sh=1 \{\
  976. + .ft R
  977. + .nr Sh 0\}
  978. + ..
  979. + .de DS
  980. + .Es
  981. + .br
  982. + .ne 1i
  983. + .sp 0.8
  984. + .nf
  985. + .ti 0
  986. + .ie '\\$1'L' .in \\n(Rsn
  987. + .el .in \\n(Rsn+0.5i
  988. + ..
  989. + .de DE
  990. + .sp 0.8
  991. + .fi
  992. + .in \\n(Rsn
  993. + ..
  994. + .de B
  995. + \\fB\&\\$1\\fR\\$2
  996. + ..
  997. + .de I
  998. + \\fI\&\\$1\\fR\\$2
  999. + ..
  1000. + .de TS
  1001. + .br
  1002. + .ne 2i
  1003. + .sp 1.5
  1004. + .ti 0
  1005. + ..
  1006. + .de TE
  1007. + .sp 1.5
  1008. + ..
  1009. + .de UX
  1010. + UNIX
  1011. + ..
  1012. + .de PS
  1013. + .sp 0.5i
  1014. + .in \\n(Rsn+0.5i
  1015. + .ne \\$1
  1016. + ..
  1017. + .de PE
  1018. + .in
  1019. + .sp 0.5i
  1020. + ..
  1021. + .de RS
  1022. + .nr Rs \\n(Rs+5
  1023. + .in \\n(Rsn
  1024. + ..
  1025. + .de RE
  1026. + .nr Rs \\n(Rs-5
  1027. + .in \\n(Rsn
  1028. + ..
  1029. + .\" setup
  1030. + .wh 0 Ph
  1031. + .wh -1i Pf
  1032. + .ds Lh "C News
  1033. + .nr Ip 5
  1034.  
  1035.  
  1036. end of patch 23-Jul-1989
  1037.  
  1038.  
  1039.