home *** CD-ROM | disk | FTP | other *** search
/ PC-Online 1996 May / PCOnline_05_1996.bin / linux / source / n / trn / trn-3.6 / trn-3
Text File  |  1995-01-09  |  89KB  |  3,546 lines

  1. diff -u --new-file --recursive trn-3.6.orig/.config/README trn-3.6/.config/README
  2. --- trn-3.6.orig/.config/README    Wed Dec 31 19:00:00 1969
  3. +++ trn-3.6/.config/README    Mon Jan  9 16:35:44 1995
  4. @@ -0,0 +1,4 @@
  5. +This directory created by Configure to save information that should
  6. +persist across sessions.
  7. +
  8. +You may safely delete it if you wish.
  9. diff -u --new-file --recursive trn-3.6.orig/.config/instruct trn-3.6/.config/instruct
  10. --- trn-3.6.orig/.config/instruct    Wed Dec 31 19:00:00 1969
  11. +++ trn-3.6/.config/instruct    Mon Jan  9 16:35:48 1995
  12. @@ -0,0 +1 @@
  13. +root
  14. diff -u --new-file --recursive trn-3.6.orig/Makefile trn-3.6/Makefile
  15. --- trn-3.6.orig/Makefile    Wed Dec 31 19:00:00 1969
  16. +++ trn-3.6/Makefile    Mon Jan  9 16:40:46 1995
  17. @@ -0,0 +1,1001 @@
  18. +# $Id: Makefile.SH,v 3.0 1992/03/01 02:13:32 davison Trn $
  19. +#
  20. +# This software is Copyright 1991 by Stan Barber. 
  21. +#
  22. +# Permission is hereby granted to copy, reproduce, redistribute or otherwise
  23. +# use this software as long as: there is no monetary profit gained
  24. +# specifically from the use or reproduction of this software, it is not
  25. +# sold, rented, traded or otherwise marketed, and this copyright notice is
  26. +# included prominently in any copy made. 
  27. +#
  28. +# The author make no claims as to the fitness or correctness of this software
  29. +# for any use whatsoever, and it is provided as is. Any use of this software
  30. +# is at the user's own risk. 
  31. +# 
  32. +# optional defines you can add to the CFLAGS
  33. +#    -DDEBUG                      compile in support for the -D option
  34. +#    -DNO_LISTGROUP               avoids attempting to use LISTGROUP
  35. +#    -DREPLYTO_POSTER_CHECKING    makes -p also check Reply-To (slow)
  36. +
  37. +srcdir = .
  38. +VPATH = .
  39. +
  40. +CC = gcc
  41. +TOUCH = touch
  42. +#YACC = yacc
  43. +#LINT = lint
  44. +lintflags = -phbvxac 
  45. +
  46. +CFLAGS = -O2  
  47. +LDFLAGS = -s
  48. +
  49. +rnbin = /usr/bin
  50. +rnlib = /usr/lib/trn
  51. +mansrc = /usr/man/man1
  52. +manext = 1
  53. +NNTPFLAGS = 
  54. +ndirc = 
  55. +ndiro = 
  56. +strftimec = 
  57. +strftimeo = 
  58. +installfilexp = /usr/lib/trn/filexp
  59. +
  60. +libs =  -ltermcap  -lm -lbsd
  61. +public = trn newsetup newsgroups Pnews Rnmail trn-artchk $(nntpbin)
  62. +private = norm.saver mbox.saver makedir Pnews.header Speller filexp
  63. +util = makedepend newsnews
  64. +manpages = trn.1 Pnews.1 Rnmail.1 newsetup.1 newsgroups.1
  65. +nntpbin=nntplist
  66. +nntpsrc=nntpinit.c nntpclient.c nntpauth.c nntp.c
  67. +nntpobj1=nntpinit.o nntpclient.o nntpauth.o
  68. +nntpobj2=nntp.o
  69. +
  70. +h1 = addng.h art.h artio.h artsrch.h autosub.h backpage.h bits.h cache.h 
  71. +h2 = charsubst.h common.h decode.h final.h hash.h head.h help.h init.h intrp.h
  72. +h3 = kfile.h last.h ng.h ngdata.h ngsrch.h ngstuff.h only.h rcln.h rcstuff.h
  73. +h4 = respond.h rthread.h rt-mt.h rt-ov.h rt-page.h rt-process.h rt-select.h
  74. +h5 = rt-util.h rt-wumpus.h search.h sw.h term.h trn.h util.h util2.h
  75. +
  76. +h = $(h1) $(h2) $(h3) $(h4) $(h5)
  77. +
  78. +c1 = addng.c art.c artio.c artsrch.c autosub.c backpage.c bits.c cache.c
  79. +c2 = charsubst.c decode.c edit_dist.c final.c hash.c head.c help.c init.c
  80. +c3 = intrp.c kfile.c last.c $(ndirc) ng.c ngdata.c nghash.c ngsrch.c ngstuff.c
  81. +c4 = only.c rcln.c rcstuff.c respond.c rthread.c rt-mt.c rt-ov.c
  82. +c5 = rt-process.c rt-page.c rt-select.c rt-util.c rt-wumpus.c search.c
  83. +c6 = $(strftimec) sw.c term.c trn.c util.c util2.c unship.c uudecode.c
  84. +c7 = $(nntpsrc) charsubst.c
  85. +
  86. +c = $(c1) $(c2) $(c3) $(c4) $(c5) $(c6) $(c7)
  87. +
  88. +obj1 = addng.o art.o artio.o artsrch.o autosub.o backpage.o bits.o cache.o
  89. +obj2 = charsubst.o decode.o edit_dist.o final.o hash.o head.o help.o init.o
  90. +obj3 = intrp.o kfile.o last.o $(ndiro) ng.o ngdata.o nghash.o ngsrch.o
  91. +obj4 = ngstuff.o only.o rcln.o rcstuff.o respond.o rthread.o rt-mt.o rt-ov.o
  92. +obj5 = rt-process.o rt-page.o rt-select.o rt-util.o rt-wumpus.o search.o
  93. +obj6 = $(strftimeo) sw.o term.o trn.o util.o util2.o unship.o uudecode.o
  94. +obj7 = parsedate.o $(nntpobj1) $(nntpobj2)
  95. +
  96. +obj = $(obj1) $(obj2) $(obj3) $(obj4) $(obj5) $(obj6) $(obj7)
  97. +
  98. +addedbymake = $(public) $(private) $(util) Makefile.old config.h\
  99. +    parsedate.c cppstdin all
  100. +
  101. +# grrr
  102. +SHELL = /bin/sh
  103. +
  104. +.c.o:
  105. +    $(CC) -c $(CFLAGS) $<
  106. +
  107. +all: $(public) $(private) $(util) Makefile
  108. +    $(TOUCH) all
  109. +
  110. +trn: $(obj)
  111. +    $(CC) $(LDFLAGS) $(obj) $(libs) -o trn
  112. +
  113. +nntpinit.o: nntpinit.c
  114. +    $(CC) -c $(CFLAGS) $(NNTPFLAGS) $<
  115. +
  116. +nntplist: nntplist.o util2.o $(nntpobj1)
  117. +    $(CC) $(LDFLAGS) nntplist.o util2.o $(nntpobj1) -o nntplist $(libs)
  118. +
  119. +trn-artchk: trn-artchk.o util2.o $(nntpobj1)
  120. +    $(CC) $(LDFLAGS) trn-artchk.o util2.o $(nntpobj1) -o trn-artchk $(libs)
  121. +
  122. +parsedate.c: parsedate.y
  123. +    @echo 'Expect 6 shift/reduce conflicts'
  124. +    $(YACC) $(srcdir)/parsedate.y
  125. +    mv -f y.tab.c parsedate.c
  126. +
  127. +unipatch: unipatch.o
  128. +    $(CC) $(LDFLAGS) unipatch.o -o unipatch
  129. +
  130. +Pnews.header: Pnews
  131. +
  132. +# if a .h file depends on another .h file...
  133. +$(h):
  134. +    -$(TOUCH) $@
  135. +
  136. +install: $(public) $(private) $(manpages)
  137. +# won't work with csh
  138. +    export PATH || exit 1
  139. +    - (cd `./filexp $(rnbin)`; mv trn trn.old)
  140. +    - if test `pwd` != `./filexp $(rnbin)`; then cp $(public) `./filexp $(rnbin)`;\
  141. + (cd `./filexp $(rnbin)`; chmod o+x $(public); strip trn trn-artchk $(nntpbin)); fi
  142. +    - if test $(installfilexp) = Rnfilexp; then cp ./filexp `./filexp $(rnbin)/Rnfilexp`; fi
  143. +    - ./makedir `./filexp $(rnlib)`
  144. +    - chmod o+r `./filexp $(rnlib)`
  145. +    - if test `pwd` != `./filexp $(rnlib)`; then cp $(srcdir)/INIT $(private) `./filexp $(rnlib)`; fi
  146. +    - if test ! -f `./filexp $(rnlib)/newsnews`; then cp newsnews `./filexp $(rnlib)`; fi
  147. +    - (cd `./filexp $(rnlib)`; chmod o+x $(private); chmod o+r INIT newsnews)
  148. +    - if test "X$(mansrc)" != "X" -a "X`pwd`" != X`./filexp $(mansrc)`; then \
  149. +for page in $(manpages); do \
  150. +dest=$(mansrc)/`basename $$page .1`.$(manext); \
  151. +rm -f $$dest; cp $(srcdir)/$$page $$dest; chmod 444 $$dest; \
  152. +done; \
  153. +fi
  154. +
  155. +clean:
  156. +    @echo 'Use "make realclean" to also remove the Makefile.'
  157. +    @echo 'Use "make spotless" to even remove config.sh.'
  158. +    rm -rf UU
  159. +    rm -f *.o core $(addedbymake)
  160. +
  161. +realclean:
  162. +    @echo 'You can use "Configure -S ; make depend ; make" to reverse this.'
  163. +    rm -rf UU
  164. +    rm -f *.o core $(addedbymake) Makefile
  165. +
  166. +spotless:
  167. +    rm -rf UU .config
  168. +    rm -f *.o core $(addedbymake) Makefile config.sh
  169. +
  170. +# The following lint has practically everything turned on.  Unfortunately,
  171. +# you have to wade through a lot of mumbo jumbo that can't be suppressed.
  172. +# If the source file has a /*NOSTRICT*/ somewhere, ignore the lint message
  173. +# for that spot.
  174. +
  175. +lint: $(c) parsedate.c
  176. +    $(LINT) $(lintflags) $(defs) $? > trn.fuzz 2>&1
  177. +
  178. +sabertrn: $(c) parsedate.c
  179. +    #load $(c) parsedate.c $(libs)
  180. +
  181. +depend: config.h Makefile makedepend
  182. +    ./makedepend
  183. +
  184. +# AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
  185. +addng.o: EXTERN.h
  186. +addng.o: INTERN.h
  187. +addng.o: addng.c
  188. +addng.o: addng.h
  189. +addng.o: common.h
  190. +addng.o: config.h
  191. +addng.o: final.h
  192. +addng.o: intrp.h
  193. +addng.o: last.h
  194. +addng.o: ngdata.h
  195. +addng.o: nntp.h
  196. +addng.o: nntpclient.h
  197. +addng.o: only.h
  198. +addng.o: rcstuff.h
  199. +addng.o: search.h
  200. +addng.o: trn.h
  201. +addng.o: util.h
  202. +art.o: EXTERN.h
  203. +art.o: INTERN.h
  204. +art.o: art.c
  205. +art.o: art.h
  206. +art.o: artio.h
  207. +art.o: artstate.h
  208. +art.o: backpage.h
  209. +art.o: bits.h
  210. +art.o: cache.h
  211. +art.o: charsubst.h
  212. +art.o: common.h
  213. +art.o: config.h
  214. +art.o: final.h
  215. +art.o: head.h
  216. +art.o: help.h
  217. +art.o: intrp.h
  218. +art.o: ng.h
  219. +art.o: ngdata.h
  220. +art.o: ngstuff.h
  221. +art.o: nntp.h
  222. +art.o: nntpclient.h
  223. +art.o: rcstuff.h
  224. +art.o: rt-select.h
  225. +art.o: rt-util.h
  226. +art.o: rt-wumpus.h
  227. +art.o: rthread.h
  228. +art.o: search.h
  229. +art.o: sw.h
  230. +art.o: term.h
  231. +art.o: trn.h
  232. +art.o: util.h
  233. +art.o: util2.h
  234. +artio.o: EXTERN.h
  235. +artio.o: INTERN.h
  236. +artio.o: art.h
  237. +artio.o: artio.c
  238. +artio.o: artio.h
  239. +artio.o: bits.h
  240. +artio.o: cache.h
  241. +artio.o: common.h
  242. +artio.o: config.h
  243. +artio.o: final.h
  244. +artio.o: head.h
  245. +artio.o: ngdata.h
  246. +artio.o: nntp.h
  247. +artio.o: nntpclient.h
  248. +artio.o: rthread.h
  249. +artsrch.o: EXTERN.h
  250. +artsrch.o: INTERN.h
  251. +artsrch.o: artio.h
  252. +artsrch.o: artsrch.c
  253. +artsrch.o: artsrch.h
  254. +artsrch.o: bits.h
  255. +artsrch.o: cache.h
  256. +artsrch.o: common.h
  257. +artsrch.o: config.h
  258. +artsrch.o: final.h
  259. +artsrch.o: head.h
  260. +artsrch.o: intrp.h
  261. +artsrch.o: kfile.h
  262. +artsrch.o: ng.h
  263. +artsrch.o: ngdata.h
  264. +artsrch.o: ngstuff.h
  265. +artsrch.o: nntp.h
  266. +artsrch.o: nntpclient.h
  267. +artsrch.o: rt-select.h
  268. +artsrch.o: rthread.h
  269. +artsrch.o: search.h
  270. +artsrch.o: term.h
  271. +artsrch.o: util.h
  272. +autosub.o: EXTERN.h
  273. +autosub.o: INTERN.h
  274. +autosub.o: autosub.c
  275. +autosub.o: autosub.h
  276. +autosub.o: common.h
  277. +autosub.o: config.h
  278. +autosub.o: final.h
  279. +autosub.o: ngsrch.h
  280. +autosub.o: search.h
  281. +autosub.o: util.h
  282. +backpage.o: EXTERN.h
  283. +backpage.o: INTERN.h
  284. +backpage.o: backpage.c
  285. +backpage.o: backpage.h
  286. +backpage.o: common.h
  287. +backpage.o: config.h
  288. +backpage.o: final.h
  289. +backpage.o: intrp.h
  290. +bits.o: EXTERN.h
  291. +bits.o: INTERN.h
  292. +bits.o: artio.h
  293. +bits.o: bits.c
  294. +bits.o: bits.h
  295. +bits.o: cache.h
  296. +bits.o: common.h
  297. +bits.o: config.h
  298. +bits.o: final.h
  299. +bits.o: head.h
  300. +bits.o: intrp.h
  301. +bits.o: ndir.h
  302. +bits.o: ng.h
  303. +bits.o: ngdata.h
  304. +bits.o: nntp.h
  305. +bits.o: nntpclient.h
  306. +bits.o: rcln.h
  307. +bits.o: rcstuff.h
  308. +bits.o: rt-select.h
  309. +bits.o: rt-util.h
  310. +bits.o: rthread.h
  311. +bits.o: term.h
  312. +bits.o: trn.h
  313. +bits.o: util.h
  314. +bits.o: util2.h
  315. +cache.o: EXTERN.h
  316. +cache.o: INTERN.h
  317. +cache.o: artsrch.h
  318. +cache.o: bits.h
  319. +cache.o: cache.c
  320. +cache.o: cache.h
  321. +cache.o: common.h
  322. +cache.o: config.h
  323. +cache.o: final.h
  324. +cache.o: hash.h
  325. +cache.o: head.h
  326. +cache.o: intrp.h
  327. +cache.o: ng.h
  328. +cache.o: ngdata.h
  329. +cache.o: nntp.h
  330. +cache.o: nntpclient.h
  331. +cache.o: rcstuff.h
  332. +cache.o: rt-ov.h
  333. +cache.o: rt-page.h
  334. +cache.o: rt-process.h
  335. +cache.o: rt-select.h
  336. +cache.o: rt-util.h
  337. +cache.o: rthread.h
  338. +cache.o: search.h
  339. +cache.o: term.h
  340. +cache.o: trn.h
  341. +cache.o: util.h
  342. +cache.o: util2.h
  343. +charsubst.o: EXTERN.h
  344. +charsubst.o: INTERN.h
  345. +charsubst.o: artstate.h
  346. +charsubst.o: charsubst.c
  347. +charsubst.o: charsubst.h
  348. +charsubst.o: common.h
  349. +charsubst.o: config.h
  350. +charsubst.o: search.h
  351. +decode.o: EXTERN.h
  352. +decode.o: INTERN.h
  353. +decode.o: common.h
  354. +decode.o: config.h
  355. +decode.o: decode.c
  356. +decode.o: decode.h
  357. +edit_dist.o: EXTERN.h
  358. +edit_dist.o: common.h
  359. +edit_dist.o: config.h
  360. +edit_dist.o: edit_dist.c
  361. +edit_dist.o: util.h
  362. +final.o: EXTERN.h
  363. +final.o: INTERN.h
  364. +final.o: artio.h
  365. +final.o: bits.h
  366. +final.o: cache.h
  367. +final.o: common.h
  368. +final.o: config.h
  369. +final.o: final.c
  370. +final.o: final.h
  371. +final.o: init.h
  372. +final.o: intrp.h
  373. +final.o: last.h
  374. +final.o: ng.h
  375. +final.o: ngdata.h
  376. +final.o: nntp.h
  377. +final.o: nntpclient.h
  378. +final.o: rcstuff.h
  379. +final.o: term.h
  380. +final.o: util.h
  381. +hash.o: EXTERN.h
  382. +hash.o: INTERN.h
  383. +hash.o: common.h
  384. +hash.o: config.h
  385. +hash.o: final.h
  386. +hash.o: hash.c
  387. +hash.o: hash.h
  388. +hash.o: util.h
  389. +head.o: EXTERN.h
  390. +head.o: INTERN.h
  391. +head.o: artio.h
  392. +head.o: cache.h
  393. +head.o: common.h
  394. +head.o: config.h
  395. +head.o: final.h
  396. +head.o: hash.h
  397. +head.o: head.c
  398. +head.o: head.h
  399. +head.o: ng.h
  400. +head.o: ngdata.h
  401. +head.o: nntp.h
  402. +head.o: nntpclient.h
  403. +head.o: rt-process.h
  404. +head.o: rt-util.h
  405. +head.o: rthread.h
  406. +head.o: util.h
  407. +help.o: EXTERN.h
  408. +help.o: INTERN.h
  409. +help.o: common.h
  410. +help.o: config.h
  411. +help.o: help.c
  412. +help.o: help.h
  413. +help.o: term.h
  414. +help.o: trn.h
  415. +init.o: EXTERN.h
  416. +init.o: INTERN.h
  417. +init.o: addng.h
  418. +init.o: art.h
  419. +init.o: artio.h
  420. +init.o: artsrch.h
  421. +init.o: backpage.h
  422. +init.o: bits.h
  423. +init.o: cache.h
  424. +init.o: common.h
  425. +init.o: config.h
  426. +init.o: decode.h
  427. +init.o: final.h
  428. +init.o: head.h
  429. +init.o: help.h
  430. +init.o: init.c
  431. +init.o: init.h
  432. +init.o: intrp.h
  433. +init.o: kfile.h
  434. +init.o: last.h
  435. +init.o: ng.h
  436. +init.o: ngdata.h
  437. +init.o: ngsrch.h
  438. +init.o: ngstuff.h
  439. +init.o: nntp.h
  440. +init.o: nntpclient.h
  441. +init.o: only.h
  442. +init.o: rcln.h
  443. +init.o: rcstuff.h
  444. +init.o: respond.h
  445. +init.o: rthread.h
  446. +init.o: search.h
  447. +init.o: sw.h
  448. +init.o: term.h
  449. +init.o: trn.h
  450. +init.o: util.h
  451. +intrp.o: EXTERN.h
  452. +intrp.o: INTERN.h
  453. +intrp.o: artio.h
  454. +intrp.o: artsrch.h
  455. +intrp.o: bits.h
  456. +intrp.o: cache.h
  457. +intrp.o: common.h
  458. +intrp.o: config.h
  459. +intrp.o: final.h
  460. +intrp.o: head.h
  461. +intrp.o: init.h
  462. +intrp.o: intrp.c
  463. +intrp.o: intrp.h
  464. +intrp.o: ng.h
  465. +intrp.o: ngdata.h
  466. +intrp.o: nntp.h
  467. +intrp.o: nntpclient.h
  468. +intrp.o: rcstuff.h
  469. +intrp.o: respond.h
  470. +intrp.o: rt-select.h
  471. +intrp.o: rt-util.h
  472. +intrp.o: rthread.h
  473. +intrp.o: search.h
  474. +intrp.o: term.h
  475. +intrp.o: trn.h
  476. +intrp.o: util.h
  477. +intrp.o: util2.h
  478. +kfile.o: EXTERN.h
  479. +kfile.o: INTERN.h
  480. +kfile.o: artsrch.h
  481. +kfile.o: bits.h
  482. +kfile.o: cache.h
  483. +kfile.o: common.h
  484. +kfile.o: config.h
  485. +kfile.o: hash.h
  486. +kfile.o: intrp.h
  487. +kfile.o: kfile.c
  488. +kfile.o: kfile.h
  489. +kfile.o: ng.h
  490. +kfile.o: ngdata.h
  491. +kfile.o: ngstuff.h
  492. +kfile.o: rcstuff.h
  493. +kfile.o: rt-process.h
  494. +kfile.o: rt-select.h
  495. +kfile.o: rthread.h
  496. +kfile.o: search.h
  497. +kfile.o: term.h
  498. +kfile.o: trn.h
  499. +kfile.o: util.h
  500. +last.o: EXTERN.h
  501. +last.o: INTERN.h
  502. +last.o: common.h
  503. +last.o: config.h
  504. +last.o: intrp.h
  505. +last.o: last.c
  506. +last.o: last.h
  507. +last.o: trn.h
  508. +last.o: util.h
  509. +ndir.o: EXTERN.h
  510. +ndir.o: INTERN.h
  511. +ndir.o: common.h
  512. +ndir.o: config.h
  513. +ndir.o: ndir.c
  514. +ndir.o: ndir.h
  515. +ng.o: EXTERN.h
  516. +ng.o: INTERN.h
  517. +ng.o: art.h
  518. +ng.o: artio.h
  519. +ng.o: artsrch.h
  520. +ng.o: artstate.h
  521. +ng.o: backpage.h
  522. +ng.o: bits.h
  523. +ng.o: cache.h
  524. +ng.o: charsubst.h
  525. +ng.o: common.h
  526. +ng.o: config.h
  527. +ng.o: decode.h
  528. +ng.o: final.h
  529. +ng.o: head.h
  530. +ng.o: help.h
  531. +ng.o: intrp.h
  532. +ng.o: kfile.h
  533. +ng.o: last.h
  534. +ng.o: ng.c
  535. +ng.o: ng.h
  536. +ng.o: ngdata.h
  537. +ng.o: ngstuff.h
  538. +ng.o: nntp.h
  539. +ng.o: nntpclient.h
  540. +ng.o: rcln.h
  541. +ng.o: rcstuff.h
  542. +ng.o: respond.h
  543. +ng.o: rt-select.h
  544. +ng.o: rt-wumpus.h
  545. +ng.o: rthread.h
  546. +ng.o: search.h
  547. +ng.o: sw.h
  548. +ng.o: term.h
  549. +ng.o: trn.h
  550. +ng.o: util.h
  551. +ngdata.o: EXTERN.h
  552. +ngdata.o: INTERN.h
  553. +ngdata.o: bits.h
  554. +ngdata.o: cache.h
  555. +ngdata.o: common.h
  556. +ngdata.o: config.h
  557. +ngdata.o: final.h
  558. +ngdata.o: head.h
  559. +ngdata.o: intrp.h
  560. +ngdata.o: kfile.h
  561. +ngdata.o: ndir.h
  562. +ngdata.o: ng.h
  563. +ngdata.o: ngdata.c
  564. +ngdata.o: ngdata.h
  565. +ngdata.o: nntp.h
  566. +ngdata.o: nntpclient.h
  567. +ngdata.o: rcln.h
  568. +ngdata.o: rcstuff.h
  569. +ngdata.o: rt-select.h
  570. +ngdata.o: rthread.h
  571. +ngdata.o: term.h
  572. +ngdata.o: trn.h
  573. +ngdata.o: util.h
  574. +nghash.o: EXTERN.h
  575. +nghash.o: common.h
  576. +nghash.o: config.h
  577. +nghash.o: final.h
  578. +nghash.o: hash.h
  579. +nghash.o: intrp.h
  580. +nghash.o: ndir.h
  581. +nghash.o: ngdata.h
  582. +nghash.o: nghash.c
  583. +nghash.o: nntp.h
  584. +nghash.o: nntpclient.h
  585. +nghash.o: rcln.h
  586. +nghash.o: rcstuff.h
  587. +nghash.o: term.h
  588. +nghash.o: trn.h
  589. +nghash.o: util.h
  590. +ngsrch.o: EXTERN.h
  591. +ngsrch.o: INTERN.h
  592. +ngsrch.o: common.h
  593. +ngsrch.o: config.h
  594. +ngsrch.o: final.h
  595. +ngsrch.o: ngsrch.c
  596. +ngsrch.o: ngsrch.h
  597. +ngsrch.o: rcln.h
  598. +ngsrch.o: rcstuff.h
  599. +ngsrch.o: search.h
  600. +ngsrch.o: term.h
  601. +ngsrch.o: trn.h
  602. +ngsrch.o: util.h
  603. +ngstuff.o: EXTERN.h
  604. +ngstuff.o: INTERN.h
  605. +ngstuff.o: bits.h
  606. +ngstuff.o: cache.h
  607. +ngstuff.o: common.h
  608. +ngstuff.o: config.h
  609. +ngstuff.o: decode.h
  610. +ngstuff.o: final.h
  611. +ngstuff.o: head.h
  612. +ngstuff.o: intrp.h
  613. +ngstuff.o: kfile.h
  614. +ngstuff.o: ng.h
  615. +ngstuff.o: ngdata.h
  616. +ngstuff.o: ngstuff.c
  617. +ngstuff.o: ngstuff.h
  618. +ngstuff.o: rcstuff.h
  619. +ngstuff.o: respond.h
  620. +ngstuff.o: rt-select.h
  621. +ngstuff.o: rt-wumpus.h
  622. +ngstuff.o: rthread.h
  623. +ngstuff.o: sw.h
  624. +ngstuff.o: term.h
  625. +ngstuff.o: trn.h
  626. +ngstuff.o: util.h
  627. +ngstuff.o: util2.h
  628. +nntp.o: EXTERN.h
  629. +nntp.o: artio.h
  630. +nntp.o: bits.h
  631. +nntp.o: cache.h
  632. +nntp.o: common.h
  633. +nntp.o: config.h
  634. +nntp.o: final.h
  635. +nntp.o: head.h
  636. +nntp.o: init.h
  637. +nntp.o: ngdata.h
  638. +nntp.o: nntp.c
  639. +nntp.o: nntp.h
  640. +nntp.o: nntpclient.h
  641. +nntp.o: rcln.h
  642. +nntp.o: term.h
  643. +nntp.o: trn.h
  644. +nntp.o: util.h
  645. +nntpauth.o: EXTERN.h
  646. +nntpauth.o: INTERN.h
  647. +nntpauth.o: common.h
  648. +nntpauth.o: config.h
  649. +nntpauth.o: nntp.h
  650. +nntpauth.o: nntpauth.c
  651. +nntpauth.o: nntpauth.h
  652. +nntpauth.o: nntpclient.h
  653. +nntpauth.o: util2.h
  654. +nntpclient.o: EXTERN.h
  655. +nntpclient.o: INTERN.h
  656. +nntpclient.o: common.h
  657. +nntpclient.o: config.h
  658. +nntpclient.o: nntpclient.c
  659. +nntpclient.o: nntpclient.h
  660. +nntpinit.o: EXTERN.h
  661. +nntpinit.o: common.h
  662. +nntpinit.o: config.h
  663. +nntpinit.o: nntpclient.h
  664. +nntpinit.o: nntpinit.c
  665. +nntplist.o: EXTERN.h
  666. +nntplist.o: common.h
  667. +nntplist.o: config.h
  668. +nntplist.o: nntpclient.h
  669. +nntplist.o: nntplist.c
  670. +only.o: EXTERN.h
  671. +only.o: INTERN.h
  672. +only.o: common.h
  673. +only.o: config.h
  674. +only.o: final.h
  675. +only.o: ngsrch.h
  676. +only.o: only.c
  677. +only.o: only.h
  678. +only.o: search.h
  679. +only.o: util.h
  680. +parsedate.o: config.h
  681. +parsedate.o: parsedate.y
  682. +rcln.o: EXTERN.h
  683. +rcln.o: INTERN.h
  684. +rcln.o: common.h
  685. +rcln.o: config.h
  686. +rcln.o: ngdata.h
  687. +rcln.o: rcln.c
  688. +rcln.o: rcln.h
  689. +rcln.o: rcstuff.h
  690. +rcln.o: util.h
  691. +rcln.o: util2.h
  692. +rcstuff.o: EXTERN.h
  693. +rcstuff.o: INTERN.h
  694. +rcstuff.o: autosub.h
  695. +rcstuff.o: bits.h
  696. +rcstuff.o: cache.h
  697. +rcstuff.o: common.h
  698. +rcstuff.o: config.h
  699. +rcstuff.o: final.h
  700. +rcstuff.o: hash.h
  701. +rcstuff.o: intrp.h
  702. +rcstuff.o: ngdata.h
  703. +rcstuff.o: nntp.h
  704. +rcstuff.o: nntpclient.h
  705. +rcstuff.o: only.h
  706. +rcstuff.o: rcln.h
  707. +rcstuff.o: rcstuff.c
  708. +rcstuff.o: rcstuff.h
  709. +rcstuff.o: search.h
  710. +rcstuff.o: term.h
  711. +rcstuff.o: trn.h
  712. +rcstuff.o: util.h
  713. +respond.o: EXTERN.h
  714. +respond.o: INTERN.h
  715. +respond.o: artio.h
  716. +respond.o: cache.h
  717. +respond.o: charsubst.h
  718. +respond.o: common.h
  719. +respond.o: config.h
  720. +respond.o: decode.h
  721. +respond.o: final.h
  722. +respond.o: head.h
  723. +respond.o: intrp.h
  724. +respond.o: ng.h
  725. +respond.o: ngdata.h
  726. +respond.o: nntp.h
  727. +respond.o: nntpclient.h
  728. +respond.o: respond.c
  729. +respond.o: respond.h
  730. +respond.o: term.h
  731. +respond.o: trn.h
  732. +respond.o: util.h
  733. +respond.o: util2.h
  734. +rt-mt.o: EXTERN.h
  735. +rt-mt.o: INTERN.h
  736. +rt-mt.o: bits.h
  737. +rt-mt.o: cache.h
  738. +rt-mt.o: common.h
  739. +rt-mt.o: config.h
  740. +rt-mt.o: hash.h
  741. +rt-mt.o: intrp.h
  742. +rt-mt.o: ng.h
  743. +rt-mt.o: ngdata.h
  744. +rt-mt.o: nntp.h
  745. +rt-mt.o: nntpclient.h
  746. +rt-mt.o: rcln.h
  747. +rt-mt.o: rt-mt.c
  748. +rt-mt.o: rt-mt.h
  749. +rt-mt.o: rt-process.h
  750. +rt-mt.o: rthread.h
  751. +rt-mt.o: trn.h
  752. +rt-mt.o: util.h
  753. +rt-ov.o: EXTERN.h
  754. +rt-ov.o: INTERN.h
  755. +rt-ov.o: bits.h
  756. +rt-ov.o: cache.h
  757. +rt-ov.o: common.h
  758. +rt-ov.o: config.h
  759. +rt-ov.o: final.h
  760. +rt-ov.o: hash.h
  761. +rt-ov.o: head.h
  762. +rt-ov.o: ng.h
  763. +rt-ov.o: ngdata.h
  764. +rt-ov.o: nntp.h
  765. +rt-ov.o: nntpclient.h
  766. +rt-ov.o: overview.h
  767. +rt-ov.o: rt-ov.c
  768. +rt-ov.o: rt-ov.h
  769. +rt-ov.o: rt-process.h
  770. +rt-ov.o: rt-util.h
  771. +rt-ov.o: rthread.h
  772. +rt-ov.o: term.h
  773. +rt-ov.o: trn.h
  774. +rt-ov.o: util.h
  775. +rt-page.o: EXTERN.h
  776. +rt-page.o: INTERN.h
  777. +rt-page.o: cache.h
  778. +rt-page.o: common.h
  779. +rt-page.o: config.h
  780. +rt-page.o: ngdata.h
  781. +rt-page.o: rt-page.c
  782. +rt-page.o: rt-page.h
  783. +rt-page.o: rt-select.h
  784. +rt-page.o: rt-util.h
  785. +rt-page.o: rthread.h
  786. +rt-page.o: term.h
  787. +rt-page.o: trn.h
  788. +rt-page.o: util.h
  789. +rt-process.o: EXTERN.h
  790. +rt-process.o: INTERN.h
  791. +rt-process.o: bits.h
  792. +rt-process.o: cache.h
  793. +rt-process.o: common.h
  794. +rt-process.o: config.h
  795. +rt-process.o: final.h
  796. +rt-process.o: hash.h
  797. +rt-process.o: intrp.h
  798. +rt-process.o: kfile.h
  799. +rt-process.o: ng.h
  800. +rt-process.o: ngdata.h
  801. +rt-process.o: rcln.h
  802. +rt-process.o: rt-process.c
  803. +rt-process.o: rt-process.h
  804. +rt-process.o: rt-select.h
  805. +rt-process.o: rthread.h
  806. +rt-process.o: trn.h
  807. +rt-process.o: util.h
  808. +rt-select.o: EXTERN.h
  809. +rt-select.o: INTERN.h
  810. +rt-select.o: artsrch.h
  811. +rt-select.o: bits.h
  812. +rt-select.o: cache.h
  813. +rt-select.o: common.h
  814. +rt-select.o: config.h
  815. +rt-select.o: final.h
  816. +rt-select.o: help.h
  817. +rt-select.o: kfile.h
  818. +rt-select.o: ng.h
  819. +rt-select.o: ngdata.h
  820. +rt-select.o: ngstuff.h
  821. +rt-select.o: rt-page.h
  822. +rt-select.o: rt-select.c
  823. +rt-select.o: rt-select.h
  824. +rt-select.o: rt-util.h
  825. +rt-select.o: rthread.h
  826. +rt-select.o: search.h
  827. +rt-select.o: term.h
  828. +rt-select.o: trn.h
  829. +rt-select.o: util.h
  830. +rt-util.o: EXTERN.h
  831. +rt-util.o: INTERN.h
  832. +rt-util.o: artio.h
  833. +rt-util.o: cache.h
  834. +rt-util.o: common.h
  835. +rt-util.o: config.h
  836. +rt-util.o: ngdata.h
  837. +rt-util.o: nntp.h
  838. +rt-util.o: nntpclient.h
  839. +rt-util.o: rt-select.h
  840. +rt-util.o: rt-util.c
  841. +rt-util.o: rt-util.h
  842. +rt-util.o: rthread.h
  843. +rt-util.o: term.h
  844. +rt-wumpus.o: EXTERN.h
  845. +rt-wumpus.o: INTERN.h
  846. +rt-wumpus.o: artio.h
  847. +rt-wumpus.o: backpage.h
  848. +rt-wumpus.o: cache.h
  849. +rt-wumpus.o: common.h
  850. +rt-wumpus.o: config.h
  851. +rt-wumpus.o: final.h
  852. +rt-wumpus.o: head.h
  853. +rt-wumpus.o: ng.h
  854. +rt-wumpus.o: ngdata.h
  855. +rt-wumpus.o: rt-select.h
  856. +rt-wumpus.o: rt-wumpus.c
  857. +rt-wumpus.o: rt-wumpus.h
  858. +rt-wumpus.o: rthread.h
  859. +rt-wumpus.o: term.h
  860. +rt-wumpus.o: util.h
  861. +rthread.o: EXTERN.h
  862. +rthread.o: INTERN.h
  863. +rthread.o: artstate.h
  864. +rthread.o: bits.h
  865. +rthread.o: cache.h
  866. +rthread.o: common.h
  867. +rthread.o: config.h
  868. +rthread.o: final.h
  869. +rthread.o: hash.h
  870. +rthread.o: head.h
  871. +rthread.o: intrp.h
  872. +rthread.o: kfile.h
  873. +rthread.o: ng.h
  874. +rthread.o: ngdata.h
  875. +rthread.o: nntp.h
  876. +rthread.o: nntpclient.h
  877. +rthread.o: rcln.h
  878. +rthread.o: rcstuff.h
  879. +rthread.o: rt-mt.h
  880. +rthread.o: rt-ov.h
  881. +rthread.o: rt-page.h
  882. +rthread.o: rt-process.h
  883. +rthread.o: rt-select.h
  884. +rthread.o: rt-util.h
  885. +rthread.o: rt-wumpus.h
  886. +rthread.o: rthread.c
  887. +rthread.o: rthread.h
  888. +rthread.o: search.h
  889. +rthread.o: trn.h
  890. +rthread.o: util.h
  891. +search.o: EXTERN.h
  892. +search.o: INTERN.h
  893. +search.o: common.h
  894. +search.o: config.h
  895. +search.o: search.c
  896. +search.o: search.h
  897. +search.o: util.h
  898. +strftime.o: EXTERN.h
  899. +strftime.o: common.h
  900. +strftime.o: config.h
  901. +strftime.o: strftime.c
  902. +sw.o: EXTERN.h
  903. +sw.o: INTERN.h
  904. +sw.o: artstate.h
  905. +sw.o: cache.h
  906. +sw.o: charsubst.h
  907. +sw.o: common.h
  908. +sw.o: config.h
  909. +sw.o: head.h
  910. +sw.o: intrp.h
  911. +sw.o: ng.h
  912. +sw.o: ngdata.h
  913. +sw.o: only.h
  914. +sw.o: rt-page.h
  915. +sw.o: rt-util.h
  916. +sw.o: search.h
  917. +sw.o: sw.c
  918. +sw.o: sw.h
  919. +sw.o: term.h
  920. +sw.o: trn.h
  921. +sw.o: util.h
  922. +sw.o: util2.h
  923. +term.o: EXTERN.h
  924. +term.o: INTERN.h
  925. +term.o: cache.h
  926. +term.o: common.h
  927. +term.o: config.h
  928. +term.o: final.h
  929. +term.o: help.h
  930. +term.o: intrp.h
  931. +term.o: term.c
  932. +term.o: term.h
  933. +term.o: util.h
  934. +term.o: util2.h
  935. +test.o: test.c
  936. +trn-artchk.o: EXTERN.h
  937. +trn-artchk.o: common.h
  938. +trn-artchk.o: config.h
  939. +trn-artchk.o: nntpclient.h
  940. +trn-artchk.o: trn-artchk.c
  941. +trn.o: EXTERN.h
  942. +trn.o: INTERN.h
  943. +trn.o: addng.h
  944. +trn.o: cache.h
  945. +trn.o: common.h
  946. +trn.o: config.h
  947. +trn.o: final.h
  948. +trn.o: help.h
  949. +trn.o: init.h
  950. +trn.o: intrp.h
  951. +trn.o: kfile.h
  952. +trn.o: last.h
  953. +trn.o: ng.h
  954. +trn.o: ngdata.h
  955. +trn.o: ngsrch.h
  956. +trn.o: ngstuff.h
  957. +trn.o: nntp.h
  958. +trn.o: nntpclient.h
  959. +trn.o: only.h
  960. +trn.o: patchlevel.h
  961. +trn.o: rcln.h
  962. +trn.o: rcstuff.h
  963. +trn.o: search.h
  964. +trn.o: sw.h
  965. +trn.o: term.h
  966. +trn.o: trn.c
  967. +trn.o: trn.h
  968. +trn.o: util.h
  969. +trn.o: util2.h
  970. +unipatch.o: unipatch.c
  971. +unship.o: EXTERN.h
  972. +unship.o: common.h
  973. +unship.o: config.h
  974. +unship.o: decode.h
  975. +unship.o: respond.h
  976. +unship.o: unship.c
  977. +util.o: EXTERN.h
  978. +util.o: INTERN.h
  979. +util.o: common.h
  980. +util.o: config.h
  981. +util.o: final.h
  982. +util.o: nntp.h
  983. +util.o: nntpauth.h
  984. +util.o: nntpclient.h
  985. +util.o: term.h
  986. +util.o: util.c
  987. +util.o: util.h
  988. +util2.o: EXTERN.h
  989. +util2.o: INTERN.h
  990. +util2.o: common.h
  991. +util2.o: config.h
  992. +util2.o: nntp.h
  993. +util2.o: nntpauth.h
  994. +util2.o: nntpclient.h
  995. +util2.o: util.h
  996. +util2.o: util2.c
  997. +util2.o: util2.h
  998. +uudecode.o: EXTERN.h
  999. +uudecode.o: common.h
  1000. +uudecode.o: config.h
  1001. +uudecode.o: decode.h
  1002. +uudecode.o: respond.h
  1003. +uudecode.o: uudecode.c
  1004. +Makefile: Makefile.SH config.sh ; /bin/sh $(srcdir)/Makefile.SH
  1005. +Pnews: Pnews.SH config.sh ; /bin/sh $(srcdir)/Pnews.SH
  1006. +Policy.sh: Policy.sh.SH config.sh ; /bin/sh $(srcdir)/Policy.sh.SH
  1007. +Rnmail: Rnmail.SH config.sh ; /bin/sh $(srcdir)/Rnmail.SH
  1008. +Speller: Speller.SH config.sh ; /bin/sh $(srcdir)/Speller.SH
  1009. +config.h: config.h.SH config.sh ; /bin/sh $(srcdir)/config.h.SH
  1010. +filexp: filexp.SH config.sh ; /bin/sh $(srcdir)/filexp.SH
  1011. +makedepend: makedepend.SH config.sh ; /bin/sh $(srcdir)/makedepend.SH
  1012. +makedir: makedir.SH config.sh ; /bin/sh $(srcdir)/makedir.SH
  1013. +mbox.saver: mbox.saver.SH config.sh ; /bin/sh $(srcdir)/mbox.saver.SH
  1014. +newsetup: newsetup.SH config.sh ; /bin/sh $(srcdir)/newsetup.SH
  1015. +newsgroups: newsgroups.SH config.sh ; /bin/sh $(srcdir)/newsgroups.SH
  1016. +newsnews: newsnews.SH config.sh ; /bin/sh $(srcdir)/newsnews.SH
  1017. +norm.saver: norm.saver.SH config.sh ; /bin/sh $(srcdir)/norm.saver.SH
  1018. +# WARNING: Put nothing here or make depend will gobble it up!
  1019. diff -u --new-file --recursive trn-3.6.orig/Pnews trn-3.6/Pnews
  1020. --- trn-3.6.orig/Pnews    Wed Dec 31 19:00:00 1969
  1021. +++ trn-3.6/Pnews    Mon Jan  9 16:40:47 1995
  1022. @@ -0,0 +1,554 @@
  1023. +#!/bin/sh
  1024. +# $Id: Pnews.SH,v 3.0 1992/02/23 21:25:39 davison Trn $
  1025. +# 
  1026. +# This software is Copyright 1991 by Stan Barber. 
  1027. +#
  1028. +# Permission is hereby granted to copy, reproduce, redistribute or otherwise
  1029. +# use this software as long as: there is no monetary profit gained
  1030. +# specifically from the use or reproduction of this software, it is not
  1031. +# sold, rented, traded or otherwise marketed, and this copyright notice is
  1032. +# included prominently in any copy made. 
  1033. +#
  1034. +# The author make no claims as to the fitness or correctness of this software
  1035. +# for any use whatsoever, and it is provided as is. Any use of this software
  1036. +# is at the user's own risk. 
  1037. +#
  1038. +# syntax: Pnews -h headerfile            or
  1039. +#      Pnews -h headerfile oldarticle    or
  1040. +#         Pnews newsgroup title            or just
  1041. +#         Pnews
  1042. +
  1043. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  1044. +
  1045. +# System dependencies
  1046. +
  1047. +mailer="${RNMAILER-/usr/sbin/sendmail}"
  1048. +# if you change this to something that does signatures, take out signature code
  1049. +
  1050. +case define in
  1051. +define)
  1052. +    # where recordings and distributions are kept
  1053. +    lib=`/usr/lib/trn/filexp /tmp`
  1054. +    # where important rn things are kept
  1055. +    rnlib=`/usr/lib/trn/filexp /usr/lib/trn`
  1056. +    artcheck=trn-artchk
  1057. +    nntplist=nntplist
  1058. +    ;;
  1059. +undef)
  1060. +    # where recordings and distributions are kept
  1061. +    lib="/tmp"
  1062. +    # where important rn things are kept
  1063. +    rnlib="/usr/lib/trn"
  1064. +    artcheck=/usr/bin/trn-artchk
  1065. +    nntplist=/usr/bin/nntplist
  1066. +    ;;
  1067. +esac
  1068. +
  1069. +# your organization name
  1070. +orgname="/etc/organization"
  1071. +# what pager you use--if you have kernal paging use cat
  1072. +pager="${PAGER-/bin/more}"
  1073. +# how you derive full names, bsd, usg, or other
  1074. +nametype="bsd"
  1075. +# default editor
  1076. +defeditor="/usr/bin/vi"
  1077. +# how not to echo with newline
  1078. +n="-n"
  1079. +c=""
  1080. +
  1081. +# You should also look at the distribution warnings below marked !DIST!
  1082. +# to make sure any distribution regions you are a member of are included.
  1083. +# The following are some prototypical distribution groups.  If you do not
  1084. +# use them all set the unused ones to a non-null string such as 'none'.
  1085. +loc="none"
  1086. +org="none"
  1087. +multistate="none"
  1088. +city="none"
  1089. +state="none"
  1090. +cntry="none"
  1091. +cont="none"
  1092. +
  1093. +active=none
  1094. +test=test
  1095. +sed=sed
  1096. +echo=echo
  1097. +cat=cat
  1098. +egrep=egrep
  1099. +grep=grep
  1100. +tr=tr
  1101. +inews=/usr/bin/inews
  1102. +cp=cp
  1103. +sleep=sleep
  1104. +rm=rm
  1105. +who=
  1106. +mv=mv
  1107. +
  1108. +nidump=
  1109. +ypmatch=
  1110. +
  1111. +orgname=${NEWSORG-${ORGANIZATION-$orgname}}
  1112. +homedir=${HOME-$LOGDIR}
  1113. +dotdir=${DOTDIR-$homedir}
  1114. +tmpart=$dotdir/.article
  1115. +speller=$rnlib/Speller
  1116. +
  1117. +tmp="${TMPDIR-/tmp}"
  1118. +newsgroups=${NEWSGROUPS-$lib/newsgroups}
  1119. +active=${NEWSACTIVE-$active}
  1120. +case "$active" in
  1121. +none) active="$tmp/Pnact.$$";;
  1122. +esac
  1123. +news_sig=${NEWSSIGNATURE-$dotdir/.news_sig}
  1124. +
  1125. +case "$NETSPEED" in
  1126. +fast)
  1127. +    if $test ! -f "$newsgroups"; then
  1128. +    newsgroups="$tmp/Pnng.$$";
  1129. +    rmlist="$newsgroups";
  1130. +    cmdlist="$nntplist -o $newsgroups newsgroups ;";
  1131. +    fi
  1132. +    if $test ! -f "$active"; then
  1133. +    active="$tmp/Pnact.$$";
  1134. +    rmlist="$rmlist $active";
  1135. +    cmdlist="$cmdlist $nntplist -o $active active";
  1136. +    fi
  1137. +    ;;
  1138. +esac
  1139. +
  1140. +if $test -f $dotdir/.pnewsexpert; then
  1141. +    expertise=expert
  1142. +else
  1143. +    $cat <<'EOM'
  1144. +I see you've never used this version of Pnews before.  I will give you extra
  1145. +help this first time through, but then you must remember what you learned.
  1146. +If you don't understand any question, type h and a CR (carriage return) for
  1147. +help.
  1148. +
  1149. +If you've never posted an article to the net before, it is HIGHLY recommended
  1150. +that you read the netiquette document found in news.announce.newusers so
  1151. +that you'll know to avoid the commonest blunders.  To do that, interrupt
  1152. +Pnews, get to the top-level prompt of [t]rn, and use the command
  1153. +"g news.announce.newusers" to go to that group.
  1154. +
  1155. +EOM
  1156. +    expertise=beginner
  1157. +fi
  1158. +
  1159. +case $cntry in
  1160. +  can) Stpr=Province ; stpr=province ;;
  1161. +  *)   Stpr=State ; stpr=state ;;
  1162. +esac
  1163. +
  1164. +case $multistate in
  1165. +  pnw) multistpr="Pacific NorthWest" ;;
  1166. +  *)   multistpr="Multi-State Area" ;;
  1167. +esac
  1168. +
  1169. +headerfile=""
  1170. +case $# in
  1171. +0) ;;
  1172. +*)  case $1 in
  1173. +    -h)
  1174. +    headerfile="$2"
  1175. +    shift
  1176. +    shift
  1177. +    case $# in
  1178. +    0)
  1179. +        oldart=""
  1180. +        ;;
  1181. +    *)
  1182. +        oldart="$1"
  1183. +        shift
  1184. +        ;;
  1185. +    esac
  1186. +    ;;
  1187. +    esac
  1188. +    ;;
  1189. +esac
  1190. +
  1191. +case $headerfile in
  1192. +'')
  1193. +    . $rnlib/Pnews.header
  1194. +    ;;
  1195. +*)
  1196. +    $cat < $headerfile  > $tmpart
  1197. +    ;;
  1198. +esac
  1199. +    rescue="$sleep 1; $cat $tmpart >>${HOME-$LOGDIR}/dead.article ; $rm -f $rmlist ; $echo Article appended to ${HOME-$LOGDIR}/dead.article ; exit"
  1200. +    if $test -n "$rmlist" ; then
  1201. +    trap "$rm -f $rmlist" 0
  1202. +    fi
  1203. +    trap "trap : 1; $rescue" 1
  1204. +    trap "$rescue" 2
  1205. +
  1206. +$echo ""
  1207. +
  1208. +# extract the newsgroups list and distribution
  1209. +hdr_newsgroups=`$sed -n -e '/^Newsgroups:/{' -e 's///' -e 's/,/ /g' -e p -e q -e '}' $tmpart`
  1210. +hdr_distribution=`$sed -n -e '/^Distribution:/{' -e 's///' -e p -e q -e '}' $tmpart`
  1211. +
  1212. +# check for "poster" magic cookie.  Allow erroneous user@site too.
  1213. +flag=0
  1214. +for ng in $hdr_newsgroups ; do
  1215. +    case "$ng" in
  1216. +    poster)    flag=1 ;;
  1217. +    *@*) flag=1 ;;
  1218. +    *)    ;;
  1219. +    esac
  1220. +done
  1221. +case $flag in
  1222. +1)
  1223. +    $cat <<'EOM'
  1224. +
  1225. +The original author has requested that messages be sent back via mail
  1226. +rather than posting to news.  Do you want to jump out of this and
  1227. +EOM
  1228. +    $echo $n "mail your reply instead? [yn] $c"
  1229. +    read ans
  1230. +    case $ans in
  1231. +    n*) tweak="$tmp/Pntwk.$$"
  1232. +        $sed '1,/^[     ]*$/{/^Newsgroups:/d;
  1233. +        s/^X-ORIGINAL-NEWSGROUPS:/Newsgroups:/;}' $tmpart >$tweak
  1234. +        $cp $tweak $tmpart
  1235. +        $rm -f $tweak
  1236. +        ;;
  1237. +    *)  exit ;;
  1238. +    esac
  1239. +    $echo " "
  1240. +    $echo "The Cc: line should have the poster's requested return address."
  1241. +    ;;
  1242. +esac
  1243. +  
  1244. +# play recorded message
  1245. +if $test -s ${lib}/recording ; then
  1246. +     for ng in $hdr_newsgroups ; do
  1247. +    _rec1=${lib}/`$sed -n "/^$ng/s/^.*    //p" ${lib}/recording`
  1248. +    _tmp=`$echo $ng |$sed "s/\..*//"`
  1249. +    _rec2=${lib}/`$cat -s ${lib}/recording|$grep ${_tmp}.all|$sed "s/^.*    //"`
  1250. +    if $test -f ${_rec1} ; then
  1251. +        $cat -s ${_rec1}
  1252. +    fi
  1253. +    if $test -f ${_rec2} ; then
  1254. +        $cat -s ${_rec2}
  1255. +    fi
  1256. +    done
  1257. +fi
  1258. +
  1259. +# determine the distribution of this message
  1260. +set X $hdr_distribution
  1261. +shift
  1262. +if $test $# -gt 0 ; then
  1263. +    dist=$1.whatever
  1264. +else
  1265. +    set X $hdr_newsgroups
  1266. +    shift
  1267. +    if $test $# -gt 0 ; then
  1268. +    dist=$1.whatever
  1269. +    else
  1270. +    dist=misc.whatever
  1271. +    fi
  1272. +fi
  1273. +case $dist in
  1274. +*.*)
  1275. +    ;;
  1276. +*)
  1277. +    dist=$dist.whatever
  1278. +    ;;
  1279. +esac
  1280. +
  1281. +case "$FAST_PNEWS" in
  1282. +y*) ;;
  1283. +*)
  1284. +# tell them what we think they are doing... !DIST!
  1285. +case $dist in
  1286. +world.*|comp.*|news.*|sci.*|rec.*|misc.*|soc.*|talk.*|alt.*|'')
  1287. +    $cat <<'EOM'
  1288. +This program posts news to thousands of machines throughout the entire
  1289. +civilized world.  Your message will cost the net hundreds if not thousands of
  1290. +dollars to send everywhere.  Please be sure you know what you are doing.
  1291. +
  1292. +EOM
  1293. +    ;;
  1294. +vmsnet.*)
  1295. +    $echo 'This program posts news to many machines.'
  1296. +    ;;
  1297. +bit.*)
  1298. +    $echo 'This program posts news to many machines on BITNET.'
  1299. +    ;;
  1300. +ddn.*)
  1301. +    $echo 'This program posts news to many machines throughout the internet.'
  1302. +    ;;
  1303. +$cont.*)
  1304. +    $echo 'This program posts news to many machines throughout the continent.'
  1305. +    ;;
  1306. +$cntry.*)
  1307. +    $echo 'This program posts news to many machines throughout the country.'
  1308. +    ;;
  1309. +$multistate.*)
  1310. +    $echo "This program posts news to many machines throughout the ${multistpr}."
  1311. +    ;;
  1312. +$state.*)
  1313. +    $echo "This program posts news to many machines throughout the ${stpr}."
  1314. +    ;;
  1315. +$city.*)
  1316. +    $echo 'This program posts news to many machines throughout the city.'
  1317. +    ;;
  1318. +$org.*)
  1319. +    $echo 'This program posts news to machines throughout the organization.'
  1320. +    ;;
  1321. +$loc.*)
  1322. +    $echo 'This program posts news to machines throughout the local organization.'
  1323. +    ;;
  1324. +*.*)
  1325. +    $echo 'This program may post news to many machines.'
  1326. +    ;;
  1327. +to.*)
  1328. +    $echo 'This program may post news to a particular machine.'
  1329. +    ;;
  1330. +*)
  1331. +    $echo 'This program posts news to everyone on the machine.'
  1332. +    ;;
  1333. +esac
  1334. +ans=""
  1335. +while $test "X$ans" = X ; do
  1336. +    $echo $n "Are you absolutely sure that you want to do this? [ny] $c"
  1337. +    read ans
  1338. +    case $ans in
  1339. +    y*) ;;
  1340. +    f*) ;;
  1341. +    h*) $cat <<'EOH'
  1342. +
  1343. +Type n or CR to exit, y to post.
  1344. +
  1345. +EOH
  1346. +    ans="" ;;
  1347. +    *) exit ;;
  1348. +    esac
  1349. +done
  1350. +;;
  1351. +esac
  1352. +
  1353. +# run nntplist in the background, if necessary
  1354. +if $test -n "$cmdlist"; then
  1355. +    ( eval $cmdlist ) >/dev/null 2>&1 &
  1356. +fi
  1357. +
  1358. +case "$FAST_PNEWS" in
  1359. +y*) file=''
  1360. +    $echo "" >> $tmpart
  1361. +    state=edit
  1362. +    ;;
  1363. +*)  file=h;;
  1364. +esac
  1365. +while $test "X$file" = Xh ; do
  1366. +    $echo ""
  1367. +    $echo $n "Prepared file to include [none]: $c"
  1368. +    read file
  1369. +    case $file in
  1370. +    h)
  1371. +    $cat <<'EOH'
  1372. +
  1373. +If you have already produced the body of your article, type the filename
  1374. +for it here.  If you just want to proceed directly to the editor, type a
  1375. +RETURN.  In any event, you will be allowed to edit as many times as you
  1376. +want before you send off the article.
  1377. +EOH
  1378. +    ;;
  1379. +    '')
  1380. +    $echo "" >> $tmpart
  1381. +    state=edit
  1382. +    ;;
  1383. +    *)
  1384. +    $cat $file >>$tmpart
  1385. +    state=check
  1386. +    ;;
  1387. +    esac
  1388. +done
  1389. +
  1390. +$echo ""
  1391. +
  1392. +if $test -r $news_sig; then
  1393. +    $echo "-- " >> $tmpart
  1394. +    $sed 4q $news_sig >> $tmpart
  1395. +fi
  1396. +
  1397. +while : ; do
  1398. +    case $state in
  1399. +    edit)
  1400. +    case $expertise in
  1401. +    beginner)
  1402. +        $cat </dev/null >$dotdir/.pnewsexpert
  1403. +        $cat <<'EOMessage'
  1404. +A temporary file has been created for you to edit.  Be sure to leave at
  1405. +least one blank line between the header and the body of your message.
  1406. +(And until a certain bug is fixed all over the net, don't start the body of
  1407. +your message with any indentation, or it may get eaten.)
  1408. +
  1409. +Within the header may be fields that you don't understand.  If you don't
  1410. +understand a field (or even if you do), you can simply leave it blank, and
  1411. +it will go away when the article is posted.
  1412. +
  1413. +Type return to get the default editor, or type the name of your favorite
  1414. +editor.
  1415. +
  1416. +EOMessage
  1417. +        ;;
  1418. +    esac
  1419. +    case "${VISUAL-${EDITOR-}}" in
  1420. +    '')
  1421. +        tmp=h
  1422. +        ;;
  1423. +    *)
  1424. +        tmp=''
  1425. +        ;;
  1426. +    esac
  1427. +    while $test "X$tmp" = Xh ; do
  1428. +        $echo $n "Editor [${VISUAL-${EDITOR-$defeditor}}]: $c"
  1429. +        read tmp
  1430. +        case $tmp in
  1431. +        h)
  1432. +        $cat <<'EOH'
  1433. +
  1434. +Type a return to get the default editor, or type the name of the editor you
  1435. +prefer.  The default editor depends on the VISUAL and EDITOR environment
  1436. +variables.
  1437. +
  1438. +EOH
  1439. +        ;;
  1440. +        '')
  1441. +        ;;
  1442. +        *)
  1443. +        VISUAL=$tmp
  1444. +        export VISUAL
  1445. +        ;;
  1446. +        esac
  1447. +    done
  1448. +    trap : 2
  1449. +    ${VISUAL-${EDITOR-$defeditor}} $tmpart $oldart
  1450. +    trap "$rescue" 2
  1451. +    state=check
  1452. +    ;;
  1453. +    
  1454. +    check)
  1455. +    # wait for possible background nntplist
  1456. +    $test -n "$cmdlist" && wait
  1457. +
  1458. +    # warn about long lines, malformed headers, misspelled newsgroups
  1459. +    ($artcheck $tmpart 79 $newsgroups $active) 2>/dev/null
  1460. +    state=ask
  1461. +    ;;
  1462. +
  1463. +    ask)
  1464. +    $echo ""
  1465. +    $echo $n "Check spelling, Send, Abort, Edit, or List? $c"
  1466. +    read ans
  1467. +
  1468. +    case "$ans" in
  1469. +    [aA]*)
  1470. +        state=rescue
  1471. +        ;;
  1472. +    [eE]*)
  1473. +        set $ans
  1474. +        case $# in
  1475. +        2)  VISUAL="$2" ;;
  1476. +        esac
  1477. +        state=edit
  1478. +        ;;
  1479. +    [lL]*)
  1480. +        $pager $tmpart
  1481. +        state=ask
  1482. +        ;;
  1483. +    [cC]*|[sS][pP]*)
  1484. +        $speller $tmpart
  1485. +        state=ask
  1486. +        ;;
  1487. +    [sS]*)
  1488. +        state=send
  1489. +        ;;
  1490. +    [hH]*)
  1491. +        $cat <<'EOH'
  1492. +
  1493. +Type c to check the article's spelling, s to send the article, a to abort
  1494. +and append the article to dead.article, e to edit the article again, or l
  1495. +to list the article with your pager.
  1496. +
  1497. +To invoke an alternate editor, type 'e editor'.
  1498. +EOH
  1499. +    esac
  1500. +    ;;
  1501. +    
  1502. +    send)
  1503. +    set X `$sed < $tmpart -n -e '/^Newsgroups: /{' -e p -e q -e '}'`
  1504. +    shift
  1505. +    case $# in
  1506. +    2)
  1507. +        state=cleanup
  1508. +        #posted_to="$2"
  1509. +        headerstrip='1,/^[     ]*$/{/^[A-Z][-A-Za-z0-9]*:[     ]*$/d;
  1510. +            /^X-ORIGINAL-NEWSGROUPS:/d;
  1511. +            /^[Cc][Cc]:/d;
  1512. +            /^Distribution: world/d;}'
  1513. +        if $sed "$headerstrip" $tmpart | $inews -h ; then
  1514. +            : null
  1515. +        else
  1516. +            state=ask
  1517. +        fi
  1518. +        cc=`$sed -n '1,/^[     ]*$/{/^[Cc][Cc]:[     ][^     ]/p;}' $tmpart|
  1519. +         $sed 's/^[Cc][Cc]:[     ][     ]*//'`
  1520. +        if $test "X$cc" != X ; then
  1521. +            case "$mailer" in
  1522. +            *recmail)    set X ;;
  1523. +            *sendmail)    set X -t ;;
  1524. +            *)        set X `echo $cc | $sed 's/,/ /g'` ;;
  1525. +            esac
  1526. +            shift
  1527. +            (#$echo "X-Also-Posted-To: $posted_to"
  1528. +             case "$mailer" in
  1529. +             *recmail|*sendmail) $echo To: $cc ;;
  1530. +             esac
  1531. +             $sed "$headerstrip" $tmpart
  1532. +             if $test -f $homedir/.signature; then
  1533. +            $echo "-- "
  1534. +            $cat $homedir/.signature
  1535. +             fi
  1536. +            ) | $mailer $@
  1537. +        fi
  1538. +        ;;
  1539. +    *)
  1540. +        $echo ""
  1541. +        $echo "Malformed Newsgroups line."
  1542. +        $echo ""
  1543. +        $sleep 1
  1544. +        state=edit
  1545. +        ;;
  1546. +    esac
  1547. +    ;;
  1548. +    rescue)
  1549. +    if $test -s $tmpart; then
  1550. +        $cat $tmpart >> ${HOME-$LOGDIR}/dead.article
  1551. +        $echo "Article appended to ${HOME-$LOGDIR}/dead.article"
  1552. +        $echo "A copy may be temporarily found in $tmpart"
  1553. +    else
  1554. +        $echo "Null article discarded."
  1555. +    fi
  1556. +    exit
  1557. +    ;;
  1558. +    cleanup)
  1559. +    case "${AUTHORCOPY-none}" in
  1560. +    none)
  1561. +        ;;
  1562. +    *)
  1563. +        set X ${USER-${LOGNAME-`$who am i`}} unknown
  1564. +        shift
  1565. +        $rnlib/mbox.saver $tmpart "." "." 0 0 Pnews $AUTHORCOPY "From $1 `LANG= date`"
  1566. +        if $test $? -eq 0 ; then
  1567. +        $echo "Article appended to $AUTHORCOPY"
  1568. +        else
  1569. +        $echo "Cannot append to $AUTHORCOPY"
  1570. +        fi
  1571. +        ;;
  1572. +    esac
  1573. +    exit
  1574. +    ;;
  1575. +    esac
  1576. +done
  1577. diff -u --new-file --recursive trn-3.6.orig/Pnews.header trn-3.6/Pnews.header
  1578. --- trn-3.6.orig/Pnews.header    Wed Dec 31 19:00:00 1969
  1579. +++ trn-3.6/Pnews.header    Mon Jan  9 16:40:47 1995
  1580. @@ -0,0 +1,208 @@
  1581. +case $# in
  1582. +0)
  1583. +    ng=h
  1584. +    while $test "X$ng" = Xh ; do
  1585. +    $echo ""
  1586. +    $echo $n "Newsgroup(s): $c"
  1587. +    read ng
  1588. +    case $ng in
  1589. +    h)
  1590. +        $cat <<'EOH'
  1591. +
  1592. +Type the name of one or more newsgroups to which you wish to post an article.
  1593. +If you want to post to multiple newsgroups, it is better to do them all at
  1594. +once than to post to each newsgroup individually, which defeats the news
  1595. +reading programs' strategies of eliminating duplicates.
  1596. +
  1597. +Separate multiple newsgroup names with commas.
  1598. +EOH
  1599. +        ;;
  1600. +    esac
  1601. +    done
  1602. +    ;;
  1603. +*)
  1604. +    ng=$1
  1605. +    shift
  1606. +    ;;
  1607. +esac
  1608. +case $ng in
  1609. +*\ *)
  1610. +    ng=`$echo "$ng" | $sed 's/[, ] */,/g'`
  1611. +    ;;
  1612. +esac
  1613. +case $ng in
  1614. +ddn.*)
  1615. +    defdist=inet
  1616. +    dist=h
  1617. +    ;;
  1618. +*.*)
  1619. +    defdist=''
  1620. +    dist=h
  1621. +    ;;
  1622. +*)
  1623. +    defdist=''
  1624. +    dist=''
  1625. +    ;;
  1626. +esac
  1627. +
  1628. +while $test "X$dist" = Xh ; do
  1629. +    if $test -f $lib/distributions; then
  1630. +    $echo " "
  1631. +    $echo "Your local distribution prefixes are:"
  1632. +    $cat $lib/distributions
  1633. +    $echo " "
  1634. +    else
  1635. +    $egrep -v '[     ]none$' <<EOM
  1636. +
  1637. +Your local distribution prefixes are:
  1638. +    Local organization:    $loc
  1639. +    Organization:    $org
  1640. +    City:        $city
  1641. +    $Stpr:          $state
  1642. +    $multistpr:    $multistate
  1643. +    Country:        $cntry
  1644. +    Continent:        $cont
  1645. +    Everywhere:        <null> (not "world")
  1646. +
  1647. +EOM
  1648. +    fi
  1649. +    $echo $n "Distribution ($defdist): $c"
  1650. +    read dist
  1651. +    case $dist in
  1652. +    '') dist="$defdist" ;;
  1653. +    esac
  1654. +    case "$dist" in
  1655. +    h)
  1656. +    $cat <<'EOH'
  1657. +
  1658. +The Distribution line may be used to limit the distribution of an article
  1659. +to some subset of the systems that would receive the article based only on
  1660. +the Newsgroups line.  For example, if you want to sell your car in talk.auto,
  1661. +and you live in New Jersey, you might want to put "nj" on the Distribution
  1662. +line to avoid advertising in California, which has enough problems of its own.
  1663. +The actual area designators to use depend on where you are, of course.
  1664. +EOH
  1665. +    ;;
  1666. +    world*|comp*|news*|sci*|rec*|misc*|soc*|talk*|alt*)
  1667. +    dist=''
  1668. +    ;;
  1669. +    ''|$loc|$org|$city|$state|$multistate|$cntry|$cont|$defdist)
  1670. +    ;;
  1671. +    *)  
  1672. +    if $test -f $lib/distributions && \
  1673. +      $egrep "^$dist[     ]" $lib/distributions >$tmpart && \
  1674. +      $test -s $tmpart; then
  1675. +        : null
  1676. +    else
  1677. +        $echo "Unrecognized distribution prefix--type h for help, CR to use anyway."
  1678. +        defdist=$dist
  1679. +        dist=h
  1680. +    fi
  1681. +    ;;
  1682. +    esac
  1683. +done
  1684. +
  1685. +follow=""
  1686. +
  1687. +# LCP 16-Oct-91 Subject line is required.  Make it a little more
  1688. +# difficult to omit.  Added "while : ; do", ... "done", and "if"
  1689. +# at end of while loop.
  1690. +while : ; do
  1691. +  case $# in
  1692. +  0)
  1693. +    title=h
  1694. +    while $test "X$title" = Xh ; do
  1695. +    $echo ""
  1696. +    $echo $n "Title/Subject: $c"
  1697. +    read title
  1698. +    case $title in
  1699. +    h)
  1700. +        $cat <<'EOH'
  1701. +
  1702. +Type the title for your article.  Please make it as informative as possible
  1703. +(within reason) so that people who aren't interested won't have to read the
  1704. +article to find out they aren't interested.  This includes marking movie
  1705. +spoilers as (spoiler), and rotated jokes as (rot 13).
  1706. +EOH
  1707. +    ;;
  1708. +    esac
  1709. +    done
  1710. +    ;;
  1711. +  *)
  1712. +    title="$*"
  1713. +    # LCP 16-Oct-91 Added "set" and "shift".  Must insure $# is 0
  1714. +    # in case the title is all white space and we make another
  1715. +    # pass thru this loop.
  1716. +    set X
  1717. +    shift
  1718. +    ;;
  1719. +  esac
  1720. +  if expr "X$title" : "^X[    ]*$" > /dev/null 2>&1
  1721. +  then
  1722. +    $cat <<'EOH'
  1723. +
  1724. +Articles without a "Subject:" line will not be accepted by the News
  1725. +system.  Please give a Title/Subject line for your article.
  1726. +EOH
  1727. +  else
  1728. +     break
  1729. +  fi
  1730. +done
  1731. +
  1732. +
  1733. +# now build a file with a header for them to edit
  1734. +
  1735. +set X ${USER-${LOGNAME-`$who am i`}}
  1736. +shift
  1737. +logname=$1
  1738. +case $logname in
  1739. +*!*) logname=`expr "$logname" : '!\(.*\)$'` ;;
  1740. +esac
  1741. +case ${NAME-$nametype} in
  1742. +bsd)
  1743. +    if $test "X$ypmatch" != X; then
  1744. +        fullname=`$ypmatch $logname passwd 2>/dev/null | $sed -e "s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^,:;]*\).*"'$'"/\1/"`
  1745. +    elif $test "X$nidump" != X; then
  1746. +        fullname=`$nidump passwd / | $sed -e "/^$logname:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^,:;]*\).*"'$'"/\1/" -e "q" -e "}" -e "d"`
  1747. +    fi
  1748. +    if $test "X$fullname" = X; then
  1749. +        fullname=`$sed </etc/passwd -e "/^$logname:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^,:;]*\).*"'$'"/\1/" -e "q" -e "}" -e "d"`
  1750. +    fi
  1751. +    case $fullname in
  1752. +    *'&'*) : GACK
  1753. +    lname=`$echo $logname | $tr 'a-z' 'A-Z'`
  1754. +    lname=`$echo $lname $logname | $sed 's/^\(.\)[^ ]* ./\1/'`
  1755. +    fullname=`$echo "$fullname" | $sed "s/&/${lname}/"`
  1756. +    ;;
  1757. +    esac
  1758. +    ;;
  1759. +usg)
  1760. +    if $test "X$ypmatch" != X; then
  1761. +    fullname=`$ypmatch $logname passwd 2>/dev/null | $sed -e "s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^(:]*\).*"'$'"/\1/" -e "s/^.*-//" -e "q"`
  1762. +    fi
  1763. +    if $test "X$fullname" = X; then
  1764. +    fullname=`$sed </etc/passwd -e "/^$logname:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^(:]*\).*"'$'"/\1/" -e "s/^.*-//" -e "q" -e "}" -e "d"`
  1765. +    fi
  1766. +    ;;
  1767. +*)
  1768. +    fullname=${NAME-`$cat $dotdir/.fullname`}
  1769. +    ;;
  1770. +esac
  1771. +
  1772. +case $orgname in
  1773. +/*) orgname=`$cat $orgname` ;;
  1774. +esac
  1775. +
  1776. +$sed -e '/^Reply-To: $/d' > $tmpart <<EOHeader
  1777. +Newsgroups: $ng
  1778. +Subject: $title
  1779. +Summary: 
  1780. +Reply-To: $REPLYTO
  1781. +Followup-To: $follow
  1782. +Distribution: $dist
  1783. +Organization: $orgname
  1784. +Keywords: 
  1785. +Cc: 
  1786. +
  1787. +EOHeader
  1788. +
  1789. diff -u --new-file --recursive trn-3.6.orig/Rnmail trn-3.6/Rnmail
  1790. --- trn-3.6.orig/Rnmail    Wed Dec 31 19:00:00 1969
  1791. +++ trn-3.6/Rnmail    Mon Jan  9 16:40:47 1995
  1792. @@ -0,0 +1,315 @@
  1793. +#!/bin/sh
  1794. +# $Id: Rnmail.SH,v 3.0 1992/02/23 21:25:39 davison Trn $
  1795. +# 
  1796. +# This software is Copyright 1991 by Stan Barber. 
  1797. +#
  1798. +# Permission is hereby granted to copy, reproduce, redistribute or otherwise
  1799. +# use this software as long as: there is no monetary profit gained
  1800. +# specifically from the use or reproduction of this software, it is not
  1801. +# sold, rented, traded or otherwise marketed, and this copyright notice is
  1802. +# included prominently in any copy made. 
  1803. +#
  1804. +# The author make no claims as to the fitness or correctness of this software
  1805. +# for any use whatsoever, and it is provided as is. Any use of this software
  1806. +# is at the user's own risk. 
  1807. +#
  1808. +#
  1809. +# syntax: Rnmail -h headerfile [oldart]        or
  1810. +#         Rnmail destination-list         or just
  1811. +#         Rnmail
  1812. +
  1813. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  1814. +
  1815. +# System dependencies
  1816. +
  1817. +mailer="${RNMAILER-/usr/sbin/sendmail}"
  1818. +# if you change this to something that does signatures, take out signature code
  1819. +
  1820. +# your organization name
  1821. +orgname="/etc/organization"
  1822. +# what pager you use--if you have kernal paging use cat
  1823. +pager="${PAGER-/bin/more}"
  1824. +# how you derive full names, bsd, usg, or other
  1825. +nametype="bsd"
  1826. +# default editor
  1827. +defeditor="/usr/bin/vi"
  1828. +# where the non-publics are
  1829. +case define in
  1830. +define)  rnlib=`/usr/lib/trn/filexp /usr/lib/trn` ;;
  1831. +undef)   rnlib="/usr/lib/trn" ;;
  1832. +esac
  1833. +# how not to do a newline with echo
  1834. +n="-n"
  1835. +c=""
  1836. +
  1837. +test=test
  1838. +sed=sed
  1839. +echo=echo
  1840. +cat=cat
  1841. +grep=grep
  1842. +rm=rm
  1843. +sleep=sleep
  1844. +who=
  1845. +
  1846. +orgname=${NEWSORG-${ORGANIZATION-$orgname}}
  1847. +dotdir=${DOTDIR-${HOME-$LOGDIR}}
  1848. +tmpart=$dotdir/.letter
  1849. +speller=$rnlib/Speller
  1850. +mail_sig=${MAILSIGNATURE-$dotdir/.mail_sig}
  1851. +
  1852. +headerfile=""
  1853. +case $# in
  1854. +0) ;;
  1855. +*)  case $1 in
  1856. +    -h)
  1857. +    headerfile="$2"
  1858. +    case $# in
  1859. +    3) oldart=$3 ;;
  1860. +    esac
  1861. +    ;;
  1862. +    esac
  1863. +    ;;
  1864. +esac
  1865. +
  1866. +case $headerfile in
  1867. +'')
  1868. +    case $# in
  1869. +    0)
  1870. +    to=h
  1871. +    while $test "X$to" = Xh ; do
  1872. +        $echo ""
  1873. +        $echo $n "To: $c"
  1874. +        read to
  1875. +        case $to in
  1876. +        h)
  1877. +        $cat <<'EOH'
  1878. +
  1879. +Type the net address of those people to whom you wish the message sent.
  1880. +Additional recipients may be added on the Cc: line when you edit.
  1881. +
  1882. +Separate multiple addresses with spaces.
  1883. +
  1884. +EOH
  1885. +        ;;
  1886. +        esac
  1887. +    done
  1888. +    ;;
  1889. +    *)
  1890. +    to="$*"
  1891. +    ;;
  1892. +    esac
  1893. +    to=`$echo "$to" | $sed 's/  */ /g'`
  1894. +
  1895. +    title=h
  1896. +    while $test "X$title" = Xh ; do
  1897. +    $echo ""
  1898. +    $echo $n "Title/Subject: $c"
  1899. +    read title
  1900. +    case $title in
  1901. +    h)
  1902. +        $cat <<'EOH'
  1903. +
  1904. +Type the title for your message.  
  1905. +EOH
  1906. +        ;;
  1907. +    esac
  1908. +    done
  1909. +
  1910. +# now build a file with a header for them to edit
  1911. +    
  1912. +    case $orgname in
  1913. +    /*) orgname=`$cat $orgname` ;;
  1914. +    esac
  1915. +
  1916. +    $sed -e '/^Reply-To: $/d' > $tmpart <<EOHeader
  1917. +To: $to
  1918. +Subject: $title
  1919. +Organization: $orgname
  1920. +Reply-To: $REPLYTO
  1921. +Cc:
  1922. +Bcc:
  1923. +
  1924. +EOHeader
  1925. +
  1926. +    ;;
  1927. +*)
  1928. +    $cat < $headerfile  > $tmpart
  1929. +    ;;
  1930. +esac
  1931. +
  1932. +
  1933. +file=h
  1934. +while $test X$file = Xh ; do
  1935. +    $echo ""
  1936. +    $echo $n "Prepared file to include [none]: $c"
  1937. +    read file
  1938. +    case $file in
  1939. +    h)
  1940. +    $cat <<'EOH'
  1941. +
  1942. +If you have already produced the body of your message, type the filename
  1943. +for it here.  If you just want to proceed directly to the editor, type a
  1944. +RETURN.  In any event, you will be allowed to edit as many times as you
  1945. +want before you send off the message.
  1946. +EOH
  1947. +    ;;
  1948. +    '')
  1949. +    $echo "" >> $tmpart
  1950. +    state=edit
  1951. +    ;;
  1952. +    *)
  1953. +    $cat $file >>$tmpart
  1954. +    state=ask
  1955. +    ;;
  1956. +    esac
  1957. +done
  1958. +
  1959. +$echo ""
  1960. +
  1961. +if $test -r $mail_sig; then
  1962. +    $echo "-- " >> $tmpart
  1963. +    $cat $mail_sig >> $tmpart
  1964. +fi
  1965. +
  1966. +while : ; do
  1967. +    case $state in
  1968. +    edit)
  1969. +    rescue="$sleep 1; $cat $tmpart >>${HOME-$LOGDIR}/dead.letter ; $echo Message appended to ${HOME-$LOGDIR}/dead.letter ; exit"
  1970. +    trap "$rescue" 1
  1971. +    trap : 2
  1972. +    case "${VISUAL-${EDITOR-}}" in
  1973. +    '')
  1974. +        tmp=h
  1975. +        ;;
  1976. +    *)
  1977. +        tmp=''
  1978. +        ;;
  1979. +    esac
  1980. +    while $test "X$tmp" = Xh ; do
  1981. +        $echo $n "Editor [${VISUAL-${EDITOR-$defeditor}}]: $c"
  1982. +        read tmp
  1983. +        case $tmp in
  1984. +        h)
  1985. +        $cat <<'EOH'
  1986. +
  1987. +Type a return to get the default editor, or type the name of the editor you
  1988. +prefer.  The default editor depends on the VISUAL and EDITOR environment
  1989. +variables.
  1990. +
  1991. +EOH
  1992. +        ;;
  1993. +        '')
  1994. +        ;;
  1995. +        *)
  1996. +        VISUAL=$tmp
  1997. +        export VISUAL
  1998. +        ;;
  1999. +        esac
  2000. +    done
  2001. +    ${VISUAL-${EDITOR-$defeditor}} $tmpart $oldart
  2002. +    trap "$rescue" 2
  2003. +    state=ask
  2004. +    ;;
  2005. +    
  2006. +    ask)
  2007. +    $echo ""
  2008. +    $echo $n "Check spelling, Send, Abort, Edit, or List? $c"
  2009. +    read ans
  2010. +
  2011. +    case $ans in
  2012. +    [aA]*)
  2013. +        state=rescue
  2014. +        ;;
  2015. +    [eE]*)
  2016. +        set $ans
  2017. +        case $# in
  2018. +        2)  VISUAL="$2" ;;
  2019. +        esac
  2020. +        state=edit
  2021. +        ;;
  2022. +    [lL]*)
  2023. +        $pager $tmpart
  2024. +        state=ask
  2025. +        ;;
  2026. +    [cC]*|[sS][pP]*)
  2027. +        $speller $tmpart
  2028. +        state=ask
  2029. +        ;;
  2030. +    [sS]*)
  2031. +        state=send
  2032. +        ;;
  2033. +    [hH]*)
  2034. +        $cat <<'EOH'
  2035. +
  2036. +Type c to check the message's spelling, s to send the message, a to abort
  2037. +and append the message to dead.letter, e to edit the message again, or l
  2038. +to list the message with your pager.
  2039. +
  2040. +To invoke an alternate editor, type 'e editor'.
  2041. +EOH
  2042. +    esac
  2043. +    ;;
  2044. +    
  2045. +    send)
  2046. +    if $test -f $dotdir/.signature; then
  2047. +        $echo $n "Append .signature file? [y] $c"
  2048. +        read ans
  2049. +        case $ans in
  2050. +        ''|y*)
  2051. +        $echo "-- " >> $tmpart
  2052. +        cat $dotdir/.signature >> $tmpart
  2053. +        ;;
  2054. +        esac
  2055. +    fi
  2056. +    case $mailer in
  2057. +    *sendmail)
  2058. +        $mailer -t <$tmpart
  2059. +        ;;
  2060. +# but recmail does not know about Bcc, alas
  2061. +    *recmail)
  2062. +        $mailer <$tmpart
  2063. +        ;;
  2064. +    *)
  2065. +        set X `$sed <$tmpart -n -e '/^To:/{' -e 's/To: *//p' -e q -e '}'`
  2066. +        shift
  2067. +        set X "$@" `$sed <$tmpart -n -e '/^Cc:/{' -e 's/Cc: *//p' -e q -e '}'`
  2068. +        shift
  2069. +        set X "$@" `$sed <$tmpart -n -e '/^Bcc:/{' -e 's/Bcc: *//p' -e q -e '}'`
  2070. +        shift
  2071. +        $grep -v "^Bcc:"  <$tmpart | $mailer "$@"
  2072. +        ;;
  2073. +    esac
  2074. +    case $? in
  2075. +    0)
  2076. +        state=cleanup
  2077. +        ;;
  2078. +    *)
  2079. +        state=rescue
  2080. +        ;;
  2081. +    esac
  2082. +    ;;
  2083. +    rescue)
  2084. +    $cat $tmpart >> ${HOME-$LOGDIR}/dead.letter
  2085. +    $echo "Message appended to ${HOME-$LOGDIR}/dead.letter"
  2086. +    $echo "A copy may be temporarily found in $tmpart"
  2087. +    exit
  2088. +    ;;
  2089. +    cleanup)
  2090. +    case "${MAILRECORD-none}" in
  2091. +    none)
  2092. +        ;;
  2093. +    *)
  2094. +        set X ${USER-${LOGNAME-`$who am i`}} unknown
  2095. +        shift
  2096. +        $rnlib/mbox.saver $tmpart "." "." 0 0 Pnews $MAILRECORD "From $1 `LANG= date`"
  2097. +        if $test $? -eq 0 ; then
  2098. +        $echo "Message appended to $MAILRECORD"
  2099. +        else
  2100. +        $echo "Cannot append to $MAILRECORD"
  2101. +        fi
  2102. +        ;;
  2103. +    esac
  2104. +    exit
  2105. +    ;;
  2106. +    esac
  2107. +done
  2108. diff -u --new-file --recursive trn-3.6.orig/Speller trn-3.6/Speller
  2109. --- trn-3.6.orig/Speller    Wed Dec 31 19:00:00 1969
  2110. +++ trn-3.6/Speller    Mon Jan  9 16:40:48 1995
  2111. @@ -0,0 +1,163 @@
  2112. +#!/bin/sh
  2113. +# $Id: Speller.SH,v 3.0 1992/02/23 21:25:39 davison Trn $
  2114. +#    Speller - a script to disassemble a posting; use ispell to spell-
  2115. +#    check the body along with the Subject, Keywords, and Summary lines;
  2116. +#    and put it all back together again.
  2117. +#
  2118. +#    Written by Eric Schnoebelen, (eric@cirr.com)
  2119. +#                    Fri May 14 20:33:48 CDT 1993
  2120. +
  2121. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  2122. +
  2123. +# what pager you use--if you have kernal paging use cat
  2124. +pager="${PAGER-/bin/more}"
  2125. +# either the ispell program or "none"
  2126. +ispell=/usr/bin/ispell
  2127. +ispell_options=-x
  2128. +test=test
  2129. +sed=sed
  2130. +echo=echo
  2131. +cat=cat
  2132. +awk=awk
  2133. +rm=rm
  2134. +mv=mv
  2135. +diff=diff
  2136. +ed=ed
  2137. +spell=spell
  2138. +basename=basename
  2139. +
  2140. +tmpdir="${TMPDIR-/tmp}"
  2141. +
  2142. +# get us some temporary files.
  2143. +hdrs=$tmpdir/sp$$hdr
  2144. +body=$tmpdir/sp$$body
  2145. +sig=$tmpdir/sp$$sig
  2146. +mine=$tmpdir/sp$$mine
  2147. +quoted=$tmpdir/sp$$quoted
  2148. +bad=$tmpdir/sp$$bad
  2149. +
  2150. +Cmdname=`$basename $0`
  2151. +
  2152. +if $test "X$1" = X; then
  2153. +    $echo "$Cmdname: insufficent arguments" >&2
  2154. +    $echo "$Cmdname: usage: $Cmdname <filename>" >&2 
  2155. +    exit 1
  2156. +fi
  2157. +
  2158. +trap "$rm -f $hdrs $body $body~ $sig $mine $quoted $bad; exit 1" 0 1 2 15
  2159. +
  2160. +while $test "X$1" != X; do
  2161. +
  2162. +    # create the files, so that cat is quiet later..
  2163. +    >$hdrs
  2164. +    >$body
  2165. +    >$sig
  2166. +    >$mine
  2167. +    >$quoted
  2168. +
  2169. +    # tear the wanted headers out and toss them at body, leaving the 
  2170. +    # the remainder to be put back in later.
  2171. +
  2172. +    $awk 'BEGIN { inhdr = 1; keephdr = 0; insig = 0 } 
  2173. +    /^$/        { 
  2174. +            inhdr = 0;
  2175. +            print $0 > Body;
  2176. +            next;
  2177. +            }
  2178. +    /^-- $/        {
  2179. +            insig = 1;
  2180. +            print $0 > Sig;
  2181. +            next;
  2182. +            }
  2183. +    /^Subject: /    { 
  2184. +            if (inhdr) { 
  2185. +                keephdr = 1;
  2186. +                print $0 > Body;
  2187. +                next;
  2188. +            }  
  2189. +            }
  2190. +    /^Keywords: /    {
  2191. +            if (inhdr) { 
  2192. +                keephdr = 1;
  2193. +                print $0 > Body 
  2194. +            }
  2195. +            next;
  2196. +            }
  2197. +    /^Summary: /    { if (inhdr) { 
  2198. +                keephdr = 1;
  2199. +                print $0 > Body 
  2200. +            }
  2201. +            next;
  2202. +            }
  2203. +    /^[ \t]/    {
  2204. +                if (keephdr && indhr) {
  2205. +                print $0 > Body;
  2206. +                } else if (inhdr) {
  2207. +                print $0 > Hdrs;
  2208. +                }
  2209. +            }
  2210. +    /^.*: /        { if (inhdr) { 
  2211. +                keephdr = 0;
  2212. +                print $0 > Hdrs;
  2213. +                next;
  2214. +            } }
  2215. +    /^.*$/        { if (!inhdr && !insig) {
  2216. +                print $0 > Body;
  2217. +                next;
  2218. +            } 
  2219. +            if (insig) {
  2220. +                print $0 > Sig;
  2221. +                next
  2222. +            } }
  2223. +    ' Body=$body Hdrs=$hdrs Sig=$sig $1
  2224. +
  2225. +    # now rip out the quoted text from the article, so we only
  2226. +    # spell check our own pristine prose..
  2227. +
  2228. +    if $test "X$QUOTECHARS" = X ; then
  2229. +    $mv $body $mine
  2230. +    else
  2231. +    $sed -e "/^$QUOTECHARS/s/.*//" $body >$mine
  2232. +    $diff -e $mine $body > $quoted
  2233. +    fi
  2234. +
  2235. +    # ok, we've torn everything asunder, now lets spell check
  2236. +    # the guts of the article..
  2237. +
  2238. +    if $test "X$ispell" = "Xnone"; then
  2239. +    $spell $ispell_options $mine > $bad
  2240. +    if $test -s $bad ; then
  2241. +        ($echo ---- misspelled words -------------------------------------
  2242. +         #$cat $bad | fmt
  2243. +         $cat $bad | pr -t -4
  2244. +         $echo -----------------------------------------------------------
  2245. +        ) | $pager
  2246. +    else
  2247. +        $echo 'No misspelled words.'
  2248. +    fi
  2249. +    else
  2250. +    $ispell $ispell_options $mine
  2251. +    fi
  2252. +
  2253. +    if $test $? -ne 0; then
  2254. +    $echo "$Cmdname: error returned, leaving message untouched"
  2255. +
  2256. +    # don't want to mess with this file again, either
  2257. +    shift
  2258. +    continue
  2259. +    fi
  2260. +
  2261. +    # resurrect the body of the article..
  2262. +    if $test -s $quoted ; then
  2263. +    ($cat $quoted; $echo w $body; $echo q) | $ed - $mine
  2264. +    else
  2265. +    $mv $mine $body
  2266. +    fi
  2267. +
  2268. +    # ..and re-assemble the article.
  2269. +    $cat $hdrs $body $sig >$1
  2270. +
  2271. +    # move to the next filename!
  2272. +    shift
  2273. +
  2274. +done
  2275. diff -u --new-file --recursive trn-3.6.orig/config.h trn-3.6/config.h
  2276. --- trn-3.6.orig/config.h    Wed Dec 31 19:00:00 1969
  2277. +++ trn-3.6/config.h    Mon Jan  9 16:40:48 1995
  2278. @@ -0,0 +1,463 @@
  2279. +/*
  2280. + * This file was produced by running the config.h.SH script, which
  2281. + * gets its values from config.sh, which is generally produced by
  2282. + * running Configure.
  2283. + *
  2284. + * Feel free to modify any of this as the need arises.  Note, however,
  2285. + * that running config.h.SH again will wipe out any changes you've made.
  2286. + * For a more permanent change edit config.sh and rerun config.h.SH.
  2287. + *
  2288. + * $Id: Config_h.U,v 3.0.1.2 1993/08/24 12:13:20 ram Exp $
  2289. + */
  2290. +
  2291. +/* Configuration time: Mon Jan  9 16:35:58 EST 1995
  2292. + * Configured by: root
  2293. + * Target system: linux fuzzy 1.1.73 #1 mon dec 19 21:32:00 cst 1994 i486 
  2294. + */
  2295. +
  2296. +#ifndef _config_h_
  2297. +#define _config_h_
  2298. +
  2299. +/* EUNICE:
  2300. + *    This symbol, if defined, indicates that the program is being compiled
  2301. + *    under the EUNICE package under VMS.  The program will need to handle
  2302. + *    things like files that don't go away the first time you unlink them,
  2303. + *    due to version numbering.  It will also need to compensate for lack
  2304. + *    of a respectable link() command.
  2305. + */
  2306. +/* VMS:
  2307. + *    This symbol, if defined, indicates that the program is running under
  2308. + *    VMS.  It is currently only set in conjunction with the EUNICE symbol.
  2309. + */
  2310. +/*#define EUNICE        *//**/
  2311. +/*#define VMS        *//**/
  2312. +
  2313. +/* HAS_GETPWENT:
  2314. + *    This symbol, if defined, indicates that the getpwent() routine
  2315. + *    should be used instead of the getpw() routine.
  2316. + */
  2317. +#define HAS_GETPWENT    /**/
  2318. +
  2319. +/* HAS_TERMLIB:
  2320. + *    This symbol, when defined, indicates that termlib-style routines
  2321. + *    are available.  There is nothing to include.
  2322. + */
  2323. +#define    HAS_TERMLIB    /**/
  2324. +
  2325. +/* INTERNET:
  2326. + *    This symbol, if defined, indicates that there is a mailer available
  2327. + *    which supports internet-style addresses (user@site.domain).
  2328. + */
  2329. +#define    INTERNET    /**/
  2330. +
  2331. +/* HAS_MEMCMP:
  2332. + *    This symbol, if defined, indicates that the memcmp routine is available
  2333. + *    to compare blocks of memory.
  2334. + */
  2335. +#define HAS_MEMCMP    /**/
  2336. +
  2337. +/* HAS_MEMCPY:
  2338. + *    This symbol, if defined, indicates that the memcpy routine is available
  2339. + *    to copy blocks of memory.
  2340. + */
  2341. +#define HAS_MEMCPY    /**/
  2342. +
  2343. +/* HAS_MEMSET:
  2344. + *    This symbol, if defined, indicates that the memset routine is available
  2345. + *    to set blocks of memory.
  2346. + */
  2347. +#define HAS_MEMSET    /**/
  2348. +
  2349. +/* NEWS_ADMIN:
  2350. + *    This symbol, if defined, contains the login name of the news
  2351. + *    administrator.
  2352. + */
  2353. +#define NEWS_ADMIN "news"        /**/
  2354. +
  2355. +/* NOLINEBUF:
  2356. + *    This symbol, if defined, indicates that stdout is not buffered, so that
  2357. + *    the program can call setbuf() or setlinebuf() for efficiency.
  2358. + */
  2359. +/*#define    NOLINEBUF    *//**/
  2360. +
  2361. +/* NORMSIG:
  2362. + *    This symbol, if defined, indicates that normal signal handling routines
  2363. + *    should be used, as opposed to the ones in 4.1bsd (sigset, etc.).
  2364. + */
  2365. +#define NORMSIG        /**/
  2366. +
  2367. +/* HAS_RDCHK:
  2368. + *    This symbol, if defined, indicates that the rdchk routine is available
  2369. + *    to find out if there is input pending on an IO channel.  Generally
  2370. + *    the routine is used only if FIONREAD and O_NDELAY aren't available.
  2371. + */
  2372. +/*#define HAS_RDCHK        *//**/
  2373. +
  2374. +/* HAS_RENAME:
  2375. + *    This symbol, if defined, indicates that the rename routine is available
  2376. + *    to rename files.  Otherwise you should do the unlink(), link(), unlink()
  2377. + *    trick.
  2378. + */
  2379. +#define HAS_RENAME    /**/
  2380. +
  2381. +/* HAS_SIGBLOCK:
  2382. + *    This symbol, if defined, indicates that the sigblock routine is
  2383. + *    available to block signal reception.
  2384. + */
  2385. +#define HAS_SIGBLOCK    /**/
  2386. +
  2387. +/* HAS_SIGHOLD:
  2388. + *    This symbol, if defined, indicates that the sighold routine is
  2389. + *    available to hold signals.
  2390. + */
  2391. +/*#define HAS_SIGHOLD    *//**/
  2392. +
  2393. +/* HAS_STRCASECMP:
  2394. + *    This symbol, if defined, indicates that the strcasecmp() routine is
  2395. + *    available for case-insensitive string compares.
  2396. + */
  2397. +#define HAS_STRCASECMP    /**/
  2398. +
  2399. +/* HAS_VFORK:
  2400. + *    This symbol, if defined, indicates that vfork() exists.
  2401. + */
  2402. +#define HAS_VFORK    /**/
  2403. +
  2404. +/* Signal_t:
  2405. + *    This symbol's value is either "void" or "int", corresponding to the
  2406. + *    appropriate return type of a signal handler.  Thus, you can declare
  2407. + *    a signal handler using "Signal_t (*handler)()", and define the
  2408. + *    handler using "Signal_t handler(sig)".
  2409. + */
  2410. +#define Signal_t void    /* Signal handler's return type */
  2411. +
  2412. +/* DEFEDITOR:
  2413. + *    This symbol contains the full pathname of the default editor.
  2414. + */
  2415. +#define DEFEDITOR "/usr/bin/vi"        /**/
  2416. +
  2417. +/* I_DIRENT:
  2418. + *    This symbol, if defined, indicates to the C program that it should
  2419. + *    include <dirent.h>. Using this symbol also triggers the definition
  2420. + *    of the Direntry_t define which ends up being 'struct dirent' or
  2421. + *    'struct direct' depending on the availability of <dirent.h>.
  2422. + */
  2423. +#define I_DIRENT        /**/
  2424. +#ifdef I_DIRENT
  2425. +#define Direntry_t struct dirent
  2426. +#else
  2427. +#define Direntry_t struct direct
  2428. +#endif
  2429. +
  2430. +/* I_STDLIB:
  2431. + *    This symbol, if defined, indicates that <stdlib.h> exists and should
  2432. + *    be included.
  2433. + */
  2434. +#define I_STDLIB        /**/
  2435. +
  2436. +/* I_STRING:
  2437. + *    This symbol, if defined, indicates to the C program that it should
  2438. + *    include <string.h> (USG systems) instead of <strings.h> (BSD systems).
  2439. + */
  2440. +#define I_STRING        /**/
  2441. +
  2442. +/* I_SYS_DIR:
  2443. + *    This symbol, if defined, indicates to the C program that it should
  2444. + *    include <sys/dir.h>.
  2445. + */
  2446. +#define I_SYS_DIR        /**/
  2447. +
  2448. +/* I_SYS_IOCTL:
  2449. + *    This symbol, if defined, indicates that <sys/ioctl.h> exists and should
  2450. + *    be included. Otherwise, include <sgtty.h> or <termio.h>.
  2451. + */
  2452. +/* I_SYS_FILIO:
  2453. + *    This symbol, if defined, indicates that <sys/filio.h> exists and
  2454. + *    should be included instead of <sys/ioctl.h>.
  2455. + */
  2456. +#define    I_SYS_IOCTL        /**/
  2457. +/*#define    I_SYS_FILIO        *//**/
  2458. +
  2459. +/* I_SYS_NDIR:
  2460. + *    This symbol, if defined, indicates to the C program that it should
  2461. + *    include <sys/ndir.h>.
  2462. + */
  2463. +/*#define I_SYS_NDIR    *//**/
  2464. +
  2465. +/* I_TERMIO:
  2466. + *    This symbol, if defined, indicates that the program should include
  2467. + *    <termio.h> rather than <sgtty.h>.  There are also differences in
  2468. + *    the ioctl() calls that depend on the value of this symbol.
  2469. + */
  2470. +/* I_TERMIOS:
  2471. + *    This symbol, if defined, indicates that the program should include
  2472. + *    the POSIX termios.h rather than sgtty.h or termio.h.
  2473. + *    There are also differences in the ioctl() calls that depend on the
  2474. + *    value of this symbol.
  2475. + */
  2476. +/* I_SGTTY:
  2477. + *    This symbol, if defined, indicates that the program should include
  2478. + *    <sgtty.h> rather than <termio.h>.  There are also differences in
  2479. + *    the ioctl() calls that depend on the value of this symbol.
  2480. + */
  2481. +/*#define I_TERMIO        *//**/
  2482. +#define I_TERMIOS        /**/
  2483. +/*#define I_SGTTY        *//**/
  2484. +
  2485. +/* I_UNISTD:
  2486. + *    This symbol, if defined, indicates to the C program that it should
  2487. + *    include <unistd.h>.
  2488. + */
  2489. +#define I_UNISTD        /**/
  2490. +
  2491. +/* I_VFORK:
  2492. + *    This symbol, if defined, indicates to the C program that it should
  2493. + *    include vfork.h.
  2494. + */
  2495. +/*#define I_VFORK    *//**/
  2496. +
  2497. +/* MAILFILE:
  2498. + *    This symbol contains the interpretable name of the mail spool file
  2499. + *    for the current user.  The program must be prepared to substitute
  2500. + *    the HOME directory for %~, and the login id for %L.
  2501. + */
  2502. +#define MAILFILE "/var/spool/mail/%L"        /**/
  2503. +
  2504. +/* MBOXCHAR:
  2505. + *    This symbol contains a character which will match the beginning
  2506. + *    of a mailbox file.
  2507. + */
  2508. +#define MBOXCHAR 'F'        /**/
  2509. +
  2510. +/* PASSNAMES:
  2511. + *    This symbol, if defined, indicates that full names are stored in
  2512. + *    the /etc/passwd file.
  2513. + */
  2514. +/* BERKNAMES:
  2515. + *    This symbol, if defined, indicates that full names are stored in
  2516. + *    the /etc/passwd file in Berkeley format (name first thing, everything
  2517. + *    up to first comma, with & replaced by capitalized login id, yuck).
  2518. + */
  2519. +#define PASSNAMES /*  (undef to take name from ~/.fullname) */
  2520. +#define BERKNAMES /* (that is, ":name,stuff:") */
  2521. +
  2522. +/* ORGNAME:
  2523. + *    This symbol contains either the organizaton name or the full pathname
  2524. + *    of a file containing the organization name, which the program must
  2525. + *    be prepared to open and substitute the contents of.
  2526. + */
  2527. +#define ORGNAME "/etc/organization"        /**/
  2528. +
  2529. +/* PREFSHELL:
  2530. + *    This symbol contains the full name of the preferred user shell on this
  2531. + *    system.  Usual values are /bin/csh, /bin/ksh, /bin/sh.
  2532. + */
  2533. +#define PREFSHELL "/bin/bash"        /**/
  2534. +
  2535. +/* ROOTID:
  2536. + *    This symbol contains the uid of root, normally 0.
  2537. + */
  2538. +#define ROOTID 0        /**/
  2539. +
  2540. +/* ACTIVE:
  2541. + *    The name of the active file for the news system.  This file contains
  2542. + *    the list of active newsgroups.  The name may have ~ on the front.
  2543. + */
  2544. +/* ACTIVE_TIMES:
  2545. + *    The name of the active.times file for the news system.
  2546. + */
  2547. +#define ACTIVE "none"        /**/
  2548. +#define ACTIVE_TIMES "nntp"        /**/
  2549. +
  2550. +/* HAS_FTIME:
  2551. + *    This symbol, if defined, indicates that the ftime() routine exists.
  2552. + *    It is basically a sub-second accuracy clock, but is less accurate
  2553. + *    than gettimeofday(2) anyway. The type "Timeval" should be used to
  2554. + *    refer to "struct timeb".
  2555. + */
  2556. +#define HAS_FTIME        /**/
  2557. +
  2558. +/* HAS_GETHOSTNAME:
  2559. + *    This symbol, if defined, indicates that the C program may use the
  2560. + *    gethostname() routine to derive the host name.  See also HAS_UNAME
  2561. + *    and PHOSTCMD.
  2562. + */
  2563. +/* HAS_UNAME:
  2564. + *    This symbol, if defined, indicates that the C program may use the
  2565. + *    uname() routine to derive the host name.  See also HAS_GETHOSTNAME
  2566. + *    and PHOSTCMD.
  2567. + */
  2568. +/* PHOSTCMD:
  2569. + *    This symbol, if defined, indicates that the C program may use the
  2570. + *    contents of PHOSTCMD as a command to feed to the popen() routine
  2571. + *    to derive the host name.  See also HAS_GETHOSTNAME and HAS_UNAME.
  2572. + *    Note that the command uses a fully qualified path, so that it is safe
  2573. + *    even if used by a process with super-user privileges.
  2574. + */
  2575. +/*#define HAS_GETHOSTNAME    *//**/
  2576. +/*#define HAS_UNAME        *//**/
  2577. +/*#define PHOSTCMD ""    *//* How to get the host name */
  2578. +
  2579. +/* HAS_GETWD:
  2580. + *    This symbol, if defined, indicates that the getwd routine is
  2581. + *    available to get the working directory.
  2582. + */
  2583. +/* HAS_GETCWD:
  2584. + *    This symbol, if defined, indicates that the getcwd routine is
  2585. + *    available.  This is never defined if getwd is found first.
  2586. + */
  2587. +#define HAS_GETWD        /**/
  2588. +/*#define HAS_GETCWD        *//**/
  2589. +
  2590. +/* IGNOREORG:
  2591. + *    This symbol, if defined, indicates that the ORGANIZATION environment
  2592. + *    variable does not contain an organization name.
  2593. + */
  2594. +/*#define IGNOREORG        *//**/
  2595. +
  2596. +/* MIMESHOW:
  2597. + *    This symbol points to the program to run to show a mime article.
  2598. + */
  2599. +/* MIMESTORE:
  2600. + *    This symbol points to the program to run to store a mime article.
  2601. + */
  2602. +/*#define MIMESHOW "none"    *//**/
  2603. +/*#define MIMESTORE "none"    *//**/
  2604. +
  2605. +/* USE_NNTP:
  2606. + *    This symbol, if defined, indicates that NNTP should be used.
  2607. + */
  2608. +/* USE_GENAUTH:
  2609. + *    This symbol, if defined, indicates that authinfo generic
  2610. + *    authentication is to be supported.
  2611. + */
  2612. +/* SERVER_NAME:
  2613. + *    When using NNTP, this symbol indicates the server name or a
  2614. + *    file to open to read the server name.
  2615. + */
  2616. +/* USE_XTHREAD:
  2617. + *    This symbol, if defined, indicates that .thread files can be
  2618. + *    gotten via NNTP.  It is never defined if USE_NNTP is undefined.
  2619. + */
  2620. +/* USE_XOVER:
  2621. + *    This symbol, if defined, indicates that .overview files can be
  2622. + *    gotten via NNTP.  It is never defined if USE_NNTP is undefined.
  2623. + */
  2624. +#define USE_NNTP    /**/
  2625. +/*#define USE_GENAUTH    *//**/
  2626. +#define SERVER_NAME "/etc/nntpserver"      /**/
  2627. +#define USE_XTHREAD      /**/
  2628. +#define USE_XOVER    /**/
  2629. +
  2630. +/* void:
  2631. + *    This symbol is used for void functions.  On implementations which
  2632. + *    support void appropriately, its value is "void".  Otherwise, its
  2633. + *    value should be set to "int".
  2634. + */
  2635. +/*#define void int    *//**/
  2636. +
  2637. +/* size_t:
  2638. + *    This symbol is defined as an int if no size_t definition exists.
  2639. + */
  2640. +/*#define    size_t int        *//**/
  2641. +
  2642. +/* HAS_STRCHR:
  2643. + *    This symbol is defined to indicate that the strchr()/strrchr()
  2644. + *    functions are available for string searching. If not, try the
  2645. + *    index()/rindex() pair.
  2646. + */
  2647. +#define HAS_STRCHR    /**/
  2648. +
  2649. +/* HAS_STRFTIME:
  2650. + *    This symbol, if defined, indicates that the strftime routine is
  2651. + *    available to format locale-specific times.
  2652. + */
  2653. +#define    HAS_STRFTIME        /**/
  2654. +
  2655. +/* EMULATE_NDIR:
  2656. + *    This symbol, if defined, indicates that the program should compile
  2657. + *    the ndir.c code provided with the package.
  2658. + */
  2659. +/* I_NDIR:
  2660. + *    This symbol, if defined, indicates that the program should include the
  2661. + *    system's version of ndir.h, rather than the one with this package.
  2662. + */
  2663. +/*#define    EMULATE_NDIR        *//**/
  2664. +/*#define    I_NDIR        *//**/
  2665. +
  2666. +/* I_PTEM:
  2667. + *    This symbol, if defined, indicates to the C program that it should
  2668. + *    include ptem.h.
  2669. + */
  2670. +/*#define I_PTEM        *//**/
  2671. +
  2672. +/* I_TIME:
  2673. + *    This symbol, if defined, indicates to the C program that it should
  2674. + *    include <time.h>.
  2675. + */
  2676. +/* I_SYS_TIME:
  2677. + *    This symbol, if defined, indicates to the C program that it should
  2678. + *    include <sys/time.h>.
  2679. + */
  2680. +/*#define I_TIME        *//**/
  2681. +#define I_SYS_TIME        /**/
  2682. +
  2683. +/* NEWSLIB:
  2684. + *    This symbol contains the name of the directory serving as the news
  2685. + *    library.  The program must be prepared to do ~ expansion on it.
  2686. + */
  2687. +#define NEWSLIB "/tmp"        /**/
  2688. +
  2689. +/* NEWSSPOOL:
  2690. + *    This symbol contains the directory name where news articles are
  2691. + *    spooled.  The program must be prepared to do ~ expansion on it.
  2692. + */
  2693. +#define NEWSSPOOL "/tmp"        /**/
  2694. +
  2695. +/* PHOSTNAME:
  2696. + *    This symbol contains the posting host's name or a file from which
  2697. + *    to read its name.
  2698. + */
  2699. +#define PHOSTNAME "/etc/HOSTNAME"        /**/
  2700. +
  2701. +/* PRIVLIB:
  2702. + *    This symbol contains the name of the private library for this package.
  2703. + *    The library is private in the sense that it needn't be in anyone's
  2704. + *    execution path, but it should be accessible by the world.  The program
  2705. + *    should be prepared to do ~ expansion.
  2706. + */
  2707. +#define PRIVLIB "/usr/lib/trn"        /**/
  2708. +
  2709. +/* THREAD_DIR:
  2710. + *    This symbol indicates where the thread files go.
  2711. + */
  2712. +/* OVERVIEW_DIR:
  2713. + *    This symbol indicates where the overview files go.
  2714. + */
  2715. +/* USE_MT:
  2716. + *    This symbol indicates if thread file support is desired.
  2717. + */
  2718. +/* USE_OV:
  2719. + *    This symbol indicates if overview file support is desired.
  2720. + */
  2721. +#define THREAD_DIR    "/tmp"        /**/
  2722. +#define OVERVIEW_DIR    "/tmp"        /**/
  2723. +#define USE_MT        /**/
  2724. +#define USE_OV        /**/
  2725. +
  2726. +/* THREAD_INIT:
  2727. + *    This symbol indicates we act like trn no matter what our name is.
  2728. + */
  2729. +/* SELECT_INIT:
  2730. + *    This symbol indicates we default to the selector for group entry.
  2731. + */
  2732. +#define THREAD_INIT    FALSE
  2733. +#define SELECT_INIT    TRUE
  2734. +
  2735. +/*#define LONG_THREAD_NAMES    *//**/
  2736. +
  2737. +#define CANCEL    "/usr/bin/inews -h <%h"
  2738. +#define SPEED_OVER_MEM    /* use more memory to run faster */
  2739. +/*#define ANCIENT_NEWS    *//* if your B news system is <= 2.10.1 */
  2740. +
  2741. +#endif
  2742. diff -u --new-file --recursive trn-3.6.orig/config.sh trn-3.6/config.sh
  2743. --- trn-3.6.orig/config.sh    Wed Dec 31 19:00:00 1969
  2744. +++ trn-3.6/config.sh    Mon Jan  9 16:40:41 1995
  2745. @@ -0,0 +1,220 @@
  2746. +#!/bin/sh
  2747. +#
  2748. +# This file was produced by running the Configure script. It holds all the
  2749. +# definitions figured out by Configure. Should you modify one of these values,
  2750. +# do not forget to propagate your changes by running "Configure -der". You may
  2751. +# instead choose to run each of the .SH files by yourself, or "Configure -S".
  2752. +#
  2753. +
  2754. +# Configuration time: Mon Jan  9 16:35:58 EST 1995
  2755. +# Configured by: root
  2756. +# Target system: linux fuzzy 1.1.73 #1 mon dec 19 21:32:00 cst 1994 i486 
  2757. +
  2758. +d_bsd='undef'
  2759. +d_eunice='undef'
  2760. +d_xenix='undef'
  2761. +eunicefix=':'
  2762. +Mcc='Mcc'
  2763. +awk='awk'
  2764. +basename='basename'
  2765. +bash='bash'
  2766. +cat='cat'
  2767. +cp='cp'
  2768. +cpp='cpp'
  2769. +csh='csh'
  2770. +date='date'
  2771. +diff='diff'
  2772. +echo='echo'
  2773. +ed='ed'
  2774. +egrep='egrep'
  2775. +expr='expr'
  2776. +grep='grep'
  2777. +inews='inews'
  2778. +ispell='ispell'
  2779. +ksh='ksh'
  2780. +less='less'
  2781. +lint=''
  2782. +mail='mail'
  2783. +metamail='metamail'
  2784. +mhn='mhn'
  2785. +mkdir='mkdir'
  2786. +more='more'
  2787. +munpack='munpack'
  2788. +mv='mv'
  2789. +nroff='nroff'
  2790. +pg='pg'
  2791. +rm='rm'
  2792. +rmail='rmail'
  2793. +sed='sed'
  2794. +sendmail='sendmail'
  2795. +smail='smail'
  2796. +sort='sort'
  2797. +spell='spell'
  2798. +tail='tail'
  2799. +test='test'
  2800. +tr='tr'
  2801. +uname='uname'
  2802. +uniq='uniq'
  2803. +uuname='uuname'
  2804. +vi='vi'
  2805. +vspell=''
  2806. +who=''
  2807. +hint='recommended'
  2808. +myuname='linux fuzzy 1.1.73 #1 mon dec 19 21:32:00 cst 1994 i486 '
  2809. +srcdir='.'
  2810. +vincludes=''
  2811. +vpath='.'
  2812. +Id='$Id'
  2813. +Log='$Log'
  2814. +active='none'
  2815. +acttimes='nntp'
  2816. +d_acttimes='define'
  2817. +myactive='.falseactive'
  2818. +bin='/usr/bin'
  2819. +binexp='/usr/bin'
  2820. +installbin='/usr/bin'
  2821. +cc='gcc'
  2822. +ccflags=''
  2823. +cppflags=''
  2824. +ldflags='-s'
  2825. +lkflags=''
  2826. +optimize='-O2'
  2827. +cf_by='root'
  2828. +cf_time='Mon Jan  9 16:35:58 EST 1995'
  2829. +contains='grep'
  2830. +cpplast='-'
  2831. +cppminus='-'
  2832. +cpprun='gcc -E'
  2833. +cppstdin='gcc -E'
  2834. +d_ftime='define'
  2835. +aphostcmd=''
  2836. +d_gethname='undef'
  2837. +d_phostcmd='undef'
  2838. +d_uname='undef'
  2839. +d_getpwent='define'
  2840. +d_getcwd='undef'
  2841. +d_getwd='define'
  2842. +d_havetlib='define'
  2843. +termlib='-ltermcap'
  2844. +d_ignoreorg='undef'
  2845. +d_internet='define'
  2846. +d_memcmp='define'
  2847. +d_memcpy='define'
  2848. +d_memset='define'
  2849. +d_mimeshow='undef'
  2850. +d_mimestore='undef'
  2851. +mimeshow="none"
  2852. +mimestore="none"
  2853. +d_newsadm='define'
  2854. +newsadmin='news'
  2855. +d_nntp='define'
  2856. +d_xdata='define'
  2857. +d_genauth='undef'
  2858. +servername='/etc/nntpserver'
  2859. +d_nolnbuf='undef'
  2860. +d_normsig='define'
  2861. +jobslib=''
  2862. +d_novoid='undef'
  2863. +void=''
  2864. +d_portable='define'
  2865. +d_rdchk='undef'
  2866. +d_rename='define'
  2867. +d_sigblock='define'
  2868. +d_sighold='undef'
  2869. +d_sizet='undef'
  2870. +d_strccmp='define'
  2871. +d_strchr='define'
  2872. +d_strftime='define'
  2873. +strftimec=''
  2874. +strftimeo=''
  2875. +d_libndir='undef'
  2876. +d_usendir='undef'
  2877. +libndir=''
  2878. +ndirc=''
  2879. +ndiro=''
  2880. +d_vfork='define'
  2881. +d_voidsig='define'
  2882. +signal_t='void'
  2883. +defeditor='/usr/bin/vi'
  2884. +filexp='/usr/lib/trn/filexp'
  2885. +d_dirnamlen=''
  2886. +i_dirent='define'
  2887. +i_ptem='undef'
  2888. +i_stdlib='define'
  2889. +i_string='define'
  2890. +strings='/usr/include/string.h'
  2891. +i_sysdir='define'
  2892. +d_voidtty=''
  2893. +i_bsdioctl=''
  2894. +i_sysfilio='undef'
  2895. +i_sysioctl='define'
  2896. +i_syssockio=''
  2897. +i_sysndir='undef'
  2898. +i_sgtty='undef'
  2899. +i_termio='undef'
  2900. +i_termios='define'
  2901. +i_systime='define'
  2902. +i_time='undef'
  2903. +i_unistd='define'
  2904. +i_vfork='undef'
  2905. +ispell_options='-x'
  2906. +ispell_prg='/usr/bin/ispell'
  2907. +libc='/usr/lib/libc.a'
  2908. +plibpth='/usr/ccs/lib /usr/lib /usr/ucblib /usr/local/lib'
  2909. +xlibpth='/usr/lib/386 /lib/386'
  2910. +libs='-lbsd'
  2911. +citydist='none'
  2912. +cntrydist='none'
  2913. +contdist='none'
  2914. +locdist='none'
  2915. +multistatedist='none'
  2916. +orgdist='none'
  2917. +statedist='none'
  2918. +mailer='/usr/sbin/sendmail'
  2919. +mailfile='/var/spool/mail/%L'
  2920. +installmansrc='/usr/man/man1'
  2921. +manext='1'
  2922. +mansrc='/usr/man/man1'
  2923. +mansrcexp='/usr/man/man1'
  2924. +mboxchar='F'
  2925. +c=''
  2926. +n='-n'
  2927. +d_berknames='define'
  2928. +d_passnames='define'
  2929. +d_usgnames='undef'
  2930. +nametype='bsd'
  2931. +inewsloc='/usr/bin/inews'
  2932. +newslib='/tmp'
  2933. +newslibexp='/tmp'
  2934. +newsspool='/tmp'
  2935. +orgname='/etc/organization'
  2936. +package='trn'
  2937. +spackage='Trn'
  2938. +pager='/bin/more'
  2939. +phost='/etc/HOSTNAME'
  2940. +phostcmd=''
  2941. +prefshell='/bin/bash'
  2942. +installprivlib='/usr/lib/trn'
  2943. +privlib='/usr/lib/trn'
  2944. +privlibexp='/usr/lib/trn'
  2945. +rootid='0'
  2946. +sharpbang='#!'
  2947. +shsharp='true'
  2948. +spitshell='cat'
  2949. +startsh='#!/bin/sh'
  2950. +sysman='/usr/man/man1'
  2951. +d_usemt='define'
  2952. +d_useov='define'
  2953. +overviewdir='/tmp'
  2954. +threaddir='/tmp'
  2955. +trn_init='FALSE'
  2956. +trn_select='TRUE'
  2957. +nm_opt=''
  2958. +runnm='true'
  2959. +usenm='true'
  2960. +incpath=''
  2961. +mips=''
  2962. +mips_type=''
  2963. +usrinc='/usr/include'
  2964. +PATCHLEVEL="3.6 (20 Nov 1994)"
  2965. +CONFIG=true
  2966. diff -u --new-file --recursive trn-3.6.orig/filexp trn-3.6/filexp
  2967. --- trn-3.6.orig/filexp    Wed Dec 31 19:00:00 1969
  2968. +++ trn-3.6/filexp    Mon Jan  9 16:40:48 1995
  2969. @@ -0,0 +1,38 @@
  2970. +#!/bin/sh
  2971. +sed=sed
  2972. +expr=expr
  2973. +basename=basename
  2974. +test=test
  2975. +: expand filename
  2976. +case "$1" in
  2977. + ~/*|~)
  2978. +    echo $1 | $sed "s|~|${HOME-$LOGDIR}|"
  2979. +    ;;
  2980. + ~*)
  2981. +    if $test -f /bin/csh; then
  2982. +        /bin/csh -f -c "glob $1"
  2983. +        failed=$?
  2984. +        echo ""
  2985. +        exit $failed
  2986. +    else
  2987. +        name=`$expr x$1 : '..\([^/]*\)'`
  2988. +        dir=`$sed -n -e "/^${name}:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\).*"'$'"/\1/" -e p -e q -e '}' </etc/passwd`
  2989. +        if $test ! -d "$dir"; then
  2990. +            me=`$basename $0`
  2991. +            echo "$me: can't locate home directory for: $name" >&2
  2992. +            exit 1
  2993. +        fi
  2994. +        case "$1" in
  2995. +        */*)
  2996. +            echo $dir/`$expr x$1 : '..[^/]*/\(.*\)'`
  2997. +            ;;
  2998. +        *)
  2999. +            echo $dir
  3000. +            ;;
  3001. +        esac
  3002. +    fi
  3003. +    ;;
  3004. +*)
  3005. +    echo $1
  3006. +    ;;
  3007. +esac
  3008. diff -u --new-file --recursive trn-3.6.orig/hints/Policy.sh trn-3.6/hints/Policy.sh
  3009. --- trn-3.6.orig/hints/Policy.sh    Wed Dec 31 19:00:00 1969
  3010. +++ trn-3.6/hints/Policy.sh    Mon Jan  9 16:40:47 1995
  3011. @@ -0,0 +1,135 @@
  3012. +#!/bin/sh
  3013. +#
  3014. +#  This file was produced by running the Polich.sh.SH script, which
  3015. +#  gets its values from config.sh, which is generally produced by
  3016. +#  running Configure.
  3017. +# 
  3018. +#  $Id: Policy.sh.SH,v 3.5 1994/04/24 16:47:38 davison Trn $
  3019. +
  3020. +# login name of the person who configured trn (not particularly interesting).
  3021. +cf_by='root'
  3022. +# time of configuration (not particularly interesting).
  3023. +cf_time='Mon Jan  9 16:35:58 EST 1995'
  3024. +
  3025. +#        install directives.
  3026. +
  3027. +#        bin directories (string values)
  3028. +#    name of the final resting place
  3029. +bin='/usr/bin'
  3030. +#    how to get to the final resting place (thank you, AFS)
  3031. +installbin='/usr/bin'
  3032. +
  3033. +#        private libraries
  3034. +#    name of the final resting place for those items in the library
  3035. +#    directory (string value)
  3036. +privlib='/usr/lib/trn'
  3037. +#    How to get to the library final resting place (thanks, AFS)
  3038. +installprivlib='/usr/lib/trn'
  3039. +
  3040. +#    interesting questions about man
  3041. +#     where do man page sources go?
  3042. +mansrc='/usr/man/man1'
  3043. +#    what extention do man pages get?
  3044. +manext='1'
  3045. +
  3046. +#        path to assorted programs that we might want to override.
  3047. +#    name of the default editor.  (string value)
  3048. +defeditor='/usr/bin/vi'
  3049. +#    prefered user shell (string value)
  3050. +prefshell='/bin/bash'
  3051. +#    favorite local pager (string value)
  3052. +pager='/bin/more'
  3053. +# where is inews?  (string value)
  3054. +inewsloc='/usr/bin/inews'
  3055. +#    path to interactive speller or "none" (string value)
  3056. +ispell_prg='/usr/bin/ispell'
  3057. +#    spelling options for ispell_prg or "spell" if "none" (string value)
  3058. +ispell_options='-x'
  3059. +
  3060. +#        internal options
  3061. +#    ignore the ORGANIZATION environment variable? (define/undef)
  3062. +d_ignoreorg='undef'
  3063. +#    does the mailer understand FQDN addressing? (define/undef)
  3064. +d_internet='define'
  3065. +#    do you have a news admin? (define/undef)
  3066. +d_newsadm='define'
  3067. +#    name of the news admin? (string value)
  3068. +newsadmin='news'
  3069. +#    read via NNTP? (define/undef)
  3070. +d_nntp='define'
  3071. +#    use the XDATA NNTP extension? (define/undef)
  3072. +d_xdata='define'
  3073. +#    path to a file containing a server name, or a hostname (string value)
  3074. +servername='/etc/nntpserver'
  3075. +
  3076. +#    distribution names (string values)
  3077. +# local city
  3078. +citydist='none'
  3079. +# "local" country
  3080. +cntrydist='none'
  3081. +# "local" continent
  3082. +contdist='none'
  3083. +# site distribution
  3084. +locdist='none'
  3085. +# organizational distribution
  3086. +orgdist='none'
  3087. +# state/province distribution name
  3088. +statedist='none'
  3089. +# multistate region distribution name
  3090. +multistatedist='none'
  3091. +
  3092. +#        Naming information.
  3093. +#    password file contains names (define/undef)
  3094. +d_passnames='define'
  3095. +#    berkeley style password entries (name first in GCOS) (define/undef)
  3096. +d_berknames='define'
  3097. +#    USG style password entries (account number first in GCOS)
  3098. +#    (define/undef)
  3099. +d_usgnames='undef'
  3100. +#    what type of name to use.. (bsd/usg/other)
  3101. +nametype='bsd'
  3102. +
  3103. +#    How portable do we want to be? Determines if we do lookups now
  3104. +#    or wait until run time.  (define/undef)
  3105. +d_portable='define'
  3106. +
  3107. +#        news library information
  3108. +#    where is the news library (usually /usr/lib/news) may contain ~<usrname>
  3109. +newslib='/tmp'
  3110. +#    absolute path name to /usr/lib/news.
  3111. +newslibexp='/tmp'
  3112. +#    where is the news spool (usually /{var,usr}/spool/news)
  3113. +newsspool='/tmp'
  3114. +#    active file stuff, like where is it, what is its name, etc
  3115. +#    path to the active file. (string value)
  3116. +active='none'
  3117. +#    do we have an active.times file? (define/undef)
  3118. +d_acttimes='define'
  3119. +#    path to the active.times file. (string value)
  3120. +acttimes='nntp'
  3121. +#    organizations name. path to file, or constant string
  3122. +orgname='/etc/organization'
  3123. +
  3124. +#    only one of the two following is needed
  3125. +#    command to find the posting hosts name (string value, optional)
  3126. +phostcmd=''
  3127. +#    file containing posting hosts name or constant string
  3128. +#                (string value, optional)
  3129. +#
  3130. +phost='/etc/HOSTNAME'
  3131. +
  3132. +#    what should we use? mthreads or overview
  3133. +#    use the mthreads format? (define/undef)
  3134. +d_usemt='define'
  3135. +#    where do we find the thread files? (string value)
  3136. +threaddir='/tmp'
  3137. +#    use the overview format? (define/undef)
  3138. +d_useov='define'
  3139. +#    where do we find the .overview fils? (string value)
  3140. +overviewdir='/tmp'
  3141. +
  3142. +#    trn start up options
  3143. +trn_init='FALSE'
  3144. +#    start up with the selector? 
  3145. +trn_select='TRUE'
  3146. +
  3147. diff -u --new-file --recursive trn-3.6.orig/makedepend trn-3.6/makedepend
  3148. --- trn-3.6.orig/makedepend    Wed Dec 31 19:00:00 1969
  3149. +++ trn-3.6/makedepend    Mon Jan  9 16:40:48 1995
  3150. @@ -0,0 +1,69 @@
  3151. +#!/bin/sh
  3152. +# $Id: makedepend.SH,v 3.0 1991/09/09 20:23:31 davison Trn $
  3153. +# 
  3154. +# This software is Copyright 1991 by Stan Barber. 
  3155. +#
  3156. +# Permission is hereby granted to copy, reproduce, redistribute or otherwise
  3157. +# use this software as long as: there is no monetary profit gained
  3158. +# specifically from the use or reproduction of this software, it is not
  3159. +# sold, rented, traded or otherwise marketed, and this copyright notice is
  3160. +# included prominently in any copy made. 
  3161. +#
  3162. +# The author make no claims as to the fitness or correctness of this software
  3163. +# for any use whatsoever, and it is provided as is. Any use of this software
  3164. +# is at the user's own risk. 
  3165. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  3166. +
  3167. +srcdir=.
  3168. +objdir=/cdrom/source/n/trn/trn-3.6
  3169. +deptmp=$objdir/.deptmp
  3170. +cat /dev/null >$deptmp
  3171. +echo "(Note: this is going to take a while.)"
  3172. +cd $srcdir
  3173. +for file in *.[cy]; do
  3174. +    case "$file" in
  3175. +    *.c) filebase=`basename $file .c`;;
  3176. +    *.y) filebase=`basename $file .y`;;
  3177. +    esac
  3178. +    echo "Finding dependencies for $filebase.o."
  3179. +    sed -n <$file \
  3180. +    -e "/^${filebase}_init(/q" \
  3181. +    -e '/^#/{' \
  3182. +    -e 's|/\*.*$||' \
  3183. +    -e 's/\\[     ]*$//' \
  3184. +    -e p \
  3185. +    -e '}' | gcc -E -I$objdir -I/usr/include - | sed \
  3186. +    -e '/^# *line/s/line//'     -e '/^# *[0-9]/!d' \
  3187. +    -e 's/^.*"\(.*\)".*$/'$filebase'.o: \1/' \
  3188. +    -e 's|: \./|: |' \
  3189. +    -e "s|$objdir/||" \
  3190. +    -e 's/: .*\.c/: '$file'/' | \
  3191. +    uniq | sort | uniq >>$deptmp
  3192. +done
  3193. +
  3194. +for file in *.SH; do
  3195. +    echo `basename $file .SH`: $file config.sh \; /bin/sh "\$(srcdir)/$file" >>$deptmp
  3196. +done
  3197. +
  3198. +cd $objdir
  3199. +
  3200. +sed <Makefile >Makefile.new -e '1,/^# AUTOMATICALLY/!d'
  3201. +
  3202. +if test -s $deptmp; then
  3203. +    echo "Updating Makefile..."
  3204. +    sed -e 's/\$[^(]/$$/g' $deptmp | egrep -v /usr/include >dependencies
  3205. +else
  3206. +    echo "You don't seem to have a proper C preprocessor.  Using grep instead."
  3207. +    cd $srcdir
  3208. +    egrep '^#include ' *.[cyh] ?.[cyh] >$deptmp
  3209. +    cd $objdir
  3210. +    echo "Updating Makefile..."
  3211. +    <$deptmp sed -n 's|c:#include "\(.*\)".*$$|o: \1|p' > dependencies
  3212. +    <$deptmp sed -n 's|y:#include "\(.*\)".*$$|o: \1|p' >> dependencies
  3213. +    <$deptmp sed -n 's|h:#include "\(.*\)".*$$|h: \1|p' >> dependencies
  3214. +fi
  3215. +echo "# WARNING: Put nothing here or make depend will gobble it up!" >> dependencies
  3216. +mv Makefile Makefile.old
  3217. +mv Makefile.new Makefile
  3218. +cat dependencies >>Makefile
  3219. +rm $deptmp
  3220. diff -u --new-file --recursive trn-3.6.orig/makedir trn-3.6/makedir
  3221. --- trn-3.6.orig/makedir    Wed Dec 31 19:00:00 1969
  3222. +++ trn-3.6/makedir    Mon Jan  9 16:40:48 1995
  3223. @@ -0,0 +1,52 @@
  3224. +#!/bin/sh
  3225. +# $Id: makedir.SH,v 2.11 90/09/17 17:03:55 hokey Exp Locker: hokey $
  3226. +# 
  3227. +# $Log:    makedir.SH,v $
  3228. +# Revision 2.11  90/09/17  17:03:55  hokey
  3229. +# 2.11 alpha baseline
  3230. +# 
  3231. +
  3232. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  3233. +
  3234. +case $# in
  3235. +  0)
  3236. +    echo "makedir pathname filenameflag"
  3237. +    exit 1
  3238. +    ;;
  3239. +esac
  3240. +
  3241. +: guarantee one slash before 1st component
  3242. +case $1 in
  3243. +  /*) ;;
  3244. +  *)  set ./$1 $2 ;;
  3245. +esac
  3246. +
  3247. +: strip last component if it is to be a filename
  3248. +case X$2 in
  3249. +  X1) set `echo $1 | sed 's:\(.*\)/[^/]*$:\1:'` ;;
  3250. +  *)  set $1 ;;
  3251. +esac
  3252. +
  3253. +: return reasonable status if nothing to be created
  3254. +if test -d "$1" ; then
  3255. +    exit 0
  3256. +fi
  3257. +
  3258. +list=''
  3259. +while : ; do
  3260. +    case $1 in
  3261. +    */*)
  3262. +    list="$1 $list"
  3263. +    set `echo $1 | sed 's:\(.*\)/:\1 :'`
  3264. +    ;;
  3265. +    *)
  3266. +    break
  3267. +    ;;
  3268. +    esac
  3269. +done
  3270. +
  3271. +set $list
  3272. +
  3273. +for dir do
  3274. +    mkdir $dir >/dev/null 2>&1
  3275. +done
  3276. diff -u --new-file --recursive trn-3.6.orig/mbox.saver trn-3.6/mbox.saver
  3277. --- trn-3.6.orig/mbox.saver    Wed Dec 31 19:00:00 1969
  3278. +++ trn-3.6/mbox.saver    Mon Jan  9 16:40:48 1995
  3279. @@ -0,0 +1,34 @@
  3280. +#!/bin/sh
  3281. +# $Id: mbox.saver.SH,v 3.0 1991/09/09 20:23:31 davison Trn $
  3282. +# 
  3283. +# This software is Copyright 1991 by Stan Barber. 
  3284. +#
  3285. +# Permission is hereby granted to copy, reproduce, redistribute or otherwise
  3286. +# use this software as long as: there is no monetary profit gained
  3287. +# specifically from the use or reproduction of this software, it is not
  3288. +# sold, rented, traded or otherwise marketed, and this copyright notice is
  3289. +# included prominently in any copy made. 
  3290. +#
  3291. +# The author make no claims as to the fitness or correctness of this software
  3292. +# for any use whatsoever, and it is provided as is. Any use of this software
  3293. +# is at the user's own risk. 
  3294. +# 
  3295. +#    Arguments:
  3296. +#    1 Full name of article (%A)
  3297. +#    2 Public news spool directory (%P)
  3298. +#    3 Directory of current newsgroup (%c)
  3299. +#    4 Article number (%a)
  3300. +#    5 Where in article to start (%B)
  3301. +#    6 Newsgroup name (%C)
  3302. +#    7 Save destination (%b)
  3303. +#    8 First line of message, normally From...
  3304. +#
  3305. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  3306. +
  3307. + ( echo "$8"
  3308. +  if test "$5" = 0 -a ! "$4" = 0 ; then
  3309. +    echo "Article: $4 of $6"
  3310. +  fi
  3311. +  tail +$5c $1 | sed "s/^[Ff]rom />& /"
  3312. +  echo ""
  3313. +  echo "" ) >> $7
  3314. diff -u --new-file --recursive trn-3.6.orig/newsetup trn-3.6/newsetup
  3315. --- trn-3.6.orig/newsetup    Wed Dec 31 19:00:00 1969
  3316. +++ trn-3.6/newsetup    Mon Jan  9 16:40:49 1995
  3317. @@ -0,0 +1,98 @@
  3318. +#!/bin/sh
  3319. +# $Id: newsetup.SH,v 3.0 1992/02/01 03:09:32 davison Trn $
  3320. +# 
  3321. +# This software is Copyright 1991 by Stan Barber. 
  3322. +#
  3323. +# Permission is hereby granted to copy, reproduce, redistribute or otherwise
  3324. +# use this software as long as: there is no monetary profit gained
  3325. +# specifically from the use or reproduction of this software, it is not
  3326. +# sold, rented, traded or otherwise marketed, and this copyright notice is
  3327. +# included prominently in any copy made. 
  3328. +#
  3329. +# The author make no claims as to the fitness or correctness of this software
  3330. +# for any use whatsoever, and it is provided as is. Any use of this software
  3331. +# is at the user's own risk. 
  3332. +
  3333. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  3334. +
  3335. +: syntax: newsetup
  3336. +
  3337. +case define in
  3338. +define)
  3339. +    # where recordings, distributions and moderators are kept
  3340. +    lib=`/usr/lib/trn/filexp /tmp`
  3341. +    # where important rn things are kept
  3342. +    rnlib=`/usr/lib/trn/filexp /usr/lib/trn`
  3343. +    nntplist=nntplist
  3344. +    ;;
  3345. +undef)
  3346. +    # where recordings, distributions and moderators are kept
  3347. +    lib="/tmp"
  3348. +    # where important rn things are kept
  3349. +    rnlib="/usr/lib/trn"
  3350. +    nntplist=/usr/bin/nntplist
  3351. +    ;;
  3352. +esac
  3353. +
  3354. +test=test
  3355. +echo=echo
  3356. +cat=cat
  3357. +mv=mv
  3358. +rm=rm
  3359. +cp=cp
  3360. +
  3361. +dotdir="${DOTDIR-${HOME-$LOGDIR}}"
  3362. +newsrc="$dotdir/.newsrc"
  3363. +tmp="${TMPDIR-/tmp}"
  3364. +
  3365. +subs="$lib/subscriptions"
  3366. +tmpsubs="$tmp/trnsubs.$$"
  3367. +
  3368. +$cat <<'EOH'
  3369. +
  3370. +Welcome to trn.  Here's some important things to remember:
  3371. +
  3372. +  o  Trn is an extension of rn and has a similar command syntax.
  3373. +  o  To access all the new features, specify the options -x and -X.  These
  3374. +     options MAY be on by default, but it won't hurt to be redundant.
  3375. +  o  Single-character commands don't require a carriage return -- only
  3376. +     commands that let you type in an argument.
  3377. +  o  At ANY prompt, you may type 'h' for help.  There are many different help
  3378. +     menus, depending on the context.  Also, typing <esc>h in the middle of a
  3379. +     multi-character command will list escape substitutions.
  3380. +  o  Typing a space to any prompt means to do the normal thing.  You could
  3381. +     spend all day reading news and never hit anything but the space bar.
  3382. +  o  If you have never used the news system before, you may find the articles
  3383. +     in news.announce.newusers to be helpful.
  3384. +  o  Please consult the man page for complete information.
  3385. +
  3386. +EOH
  3387. +
  3388. +$rm -f $newsrc-old
  3389. +$echo "Creating $newsrc to be used by news programs."
  3390. +
  3391. +if $test -s "$newsrc"; then
  3392. +    $echo "Saving your current one as $newsrc-old..."
  3393. +    $mv -f $newsrc $newsrc-old
  3394. +fi
  3395. +
  3396. +if $test -r $subs; then
  3397. +    $cp $subs $newsrc
  3398. +else
  3399. +    ($nntplist -o $tmpsubs subscriptions) >/dev/null 2>&1
  3400. +    if $test -s $tmpsubs; then
  3401. +    $cp $tmpsubs $newsrc
  3402. +    else
  3403. +    $cat <<EOM >$newsrc
  3404. +news.announce.newusers: 
  3405. +EOM
  3406. +    fi
  3407. +    $rm -f $tmpsubs
  3408. +fi
  3409. +
  3410. +$cat <<'EOH'
  3411. +Done.
  3412. +
  3413. +To add new group use "a pattern" or "g newsgroup.name".  To get rid of
  3414. +newsgroups you aren't interested in, use the 'u' command.
  3415. +EOH
  3416. diff -u --new-file --recursive trn-3.6.orig/newsgroups trn-3.6/newsgroups
  3417. --- trn-3.6.orig/newsgroups    Wed Dec 31 19:00:00 1969
  3418. +++ trn-3.6/newsgroups    Mon Jan  9 16:40:49 1995
  3419. @@ -0,0 +1,73 @@
  3420. +#!/bin/sh
  3421. +# $Id: newsgroups.SH,v 3.0 1992/02/01 03:09:32 davison Trn $
  3422. +# 
  3423. +# This software is Copyright 1991 by Stan Barber. 
  3424. +#
  3425. +# Permission is hereby granted to copy, reproduce, redistribute or otherwise
  3426. +# use this software as long as: there is no monetary profit gained
  3427. +# specifically from the use or reproduction of this software, it is not
  3428. +# sold, rented, traded or otherwise marketed, and this copyright notice is
  3429. +# included prominently in any copy made. 
  3430. +#
  3431. +# The author make no claims as to the fitness or correctness of this software
  3432. +# for any use whatsoever, and it is provided as is. Any use of this software
  3433. +# is at the user's own risk. 
  3434. +
  3435. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  3436. +
  3437. +: syntax: newsgroups [pattern] [pipeflag]
  3438. +
  3439. +: System Dependencies
  3440. +
  3441. +: You might want to change pager to a "make column" program if you have one.
  3442. +: On the other hand, if your kernel does paging, cat would probably do.
  3443. +pager="/bin/more"
  3444. +
  3445. +
  3446. +active="/tmp/active.$$"
  3447. +rnlib=/usr/lib/trn
  3448. +case $rnlib in
  3449. +~*) rnlib=`/usr/lib/trn/filexp $rnlib` ;;
  3450. +esac
  3451. +nntplist=/usr/bin/nntplist
  3452. +
  3453. +: End of system dependencies, hopefully
  3454. +
  3455. +if $nntplist -o $active ACTIVE; then
  3456. +    : nothing
  3457. +else
  3458. +    exit 1
  3459. +fi
  3460. +
  3461. +if test $# -ge 2 ; then
  3462. +    pager=cat
  3463. +else
  3464. +    echo "Completely unsubscribed newsgroups:"
  3465. +fi
  3466. +
  3467. +dotdir=${DOTDIR-${HOME-$LOGDIR}}
  3468. +newsrc=$dotdir/.newsrc
  3469. +
  3470. +: Throwing .newsrc into the pot twice is a lovely hack to prevent
  3471. +: bogus newsgroups from showing up as unsubscribed.
  3472. +
  3473. +cat $newsrc $newsrc $active | \
  3474. +sed -n    -e '/^options/d' \
  3475. +    -e '/^[     ]/d' \
  3476. +    -e '/^control/d' \
  3477. +    -e '/^to\./d' \
  3478. +     -e '/ x$/d' \
  3479. +    -e 's/^\([^ !:]*\)[ !:].*$/\1/' \
  3480. +    -e "/.*$1/p" | \
  3481. +sort | uniq -u | $pager
  3482. +rm -f $active
  3483. +if test $# -ge 2 ; then
  3484. +    exit
  3485. +fi
  3486. +echo -n "[Type return to continue] "
  3487. +read tmp
  3488. +echo ""
  3489. +echo "Unsubscribed but mentioned in $newsrc:"
  3490. +sed -n < $newsrc \
  3491. +    -e "/$1.*!/"'s/^\([^!]*\)!.*$/\1/p' | \
  3492. +sort | $pager
  3493. diff -u --new-file --recursive trn-3.6.orig/newsnews trn-3.6/newsnews
  3494. --- trn-3.6.orig/newsnews    Wed Dec 31 19:00:00 1969
  3495. +++ trn-3.6/newsnews    Mon Jan  9 16:40:49 1995
  3496. @@ -0,0 +1,13 @@
  3497. +            *** NEWS NEWS ***
  3498. +
  3499. +Welcome to trn 3.6, which continues on the feature trail, adding support
  3500. +for slow net connections, and squashing some bugs.  Trn is "threaded read
  3501. +news", based on rn.
  3502. +
  3503. +You can type 'h' at any prompt to display a summary of the commands that
  3504. +are available.
  3505. +
  3506. +This message will not be displayed again unless it is updated with new
  3507. +information.
  3508. +
  3509. +Wayne Davison  <davison@borland.com>
  3510. diff -u --new-file --recursive trn-3.6.orig/norm.saver trn-3.6/norm.saver
  3511. --- trn-3.6.orig/norm.saver    Wed Dec 31 19:00:00 1969
  3512. +++ trn-3.6/norm.saver    Mon Jan  9 16:40:49 1995
  3513. @@ -0,0 +1,32 @@
  3514. +#!/bin/sh
  3515. +# $Id: norm.saver.SH,v 3.0 1991/09/09 20:23:31 davison Trn $
  3516. +# 
  3517. +# This software is Copyright 1991 by Stan Barber. 
  3518. +#
  3519. +# Permission is hereby granted to copy, reproduce, redistribute or otherwise
  3520. +# use this software as long as: there is no monetary profit gained
  3521. +# specifically from the use or reproduction of this software, it is not
  3522. +# sold, rented, traded or otherwise marketed, and this copyright notice is
  3523. +# included prominently in any copy made. 
  3524. +#
  3525. +# The author make no claims as to the fitness or correctness of this software
  3526. +# for any use whatsoever, and it is provided as is. Any use of this software
  3527. +# is at the user's own risk. 
  3528. +# 
  3529. +#    Arguments:
  3530. +#    1 Full name of article (%A)
  3531. +#    2 Public news spool directory (%P)
  3532. +#    3 Directory of current newsgroup (%c)
  3533. +#    4 Article number (%a)
  3534. +#    5 Where in article to start (%B)
  3535. +#    6 Newsgroup name (%C)
  3536. +#    7 Save destination (%b)
  3537. +#
  3538. +export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0; kill $$)
  3539. +
  3540. +( case "$5" in
  3541. +  0) echo "Article $4 of $6:" ;;
  3542. +  esac
  3543. +  tail +$5c $1
  3544. +  echo ""
  3545. +  echo "" ) >> $7
  3546.