1Unoffical Patch #17	(larry@garfield.cs.mun.ca Nov 19, 1991)
2
3	- core dump due to selecting last_article+1 on screen
4
5	- core dump due to consolidating (closing) last subject in a group
6  	  under certain circumstances.
7
8	- selecting consolidated articles with = command did not highlight
9  	  the selected consolidated articles correctly.
10
11	- fixed unconditional CLEAR TO END OF LINE that erased the next line on
12  	  some terminals.
13
14Unofficial Patch #18	(larry@garfield.cs.mun.ca;  Dec  1, 1991)
15
16	- possible core dump/strange behavior when using '=' command to
17	  return to the menu from article reading mode.
18	  (Reported by Olaf Schlueter [olaf@oski.toppoint.de])
19
20	- articles marked as A_LEAVE_NEXT ('=') are not given any special
21	  attention in consolidated menu mode.  I considered this incorrect
22	  (I leave stuff around all the time :) and modified nn's behavior
23	  to notice them.
24
25	- unable to de-select an auto-selected subject when using
26	  consolidated-menu mode.
27
28Patch #17 and #18 made official (peter@DIALix.oz.au)
29
30Patch #19		(peter@DIALix.oz.au; 28 Nov 92)
31
32Title:	Reduction in startup time
33From:	Geoff Collyer <geoff@world.std.com>
34	The initial startup time can be cut in half.
35
36Title:	A/UX 3.0 support
37From:	Jim Jagielski <jim@jagubox.gsfc.nasa.gov>
38	Support for Apple A/UX 3.0, originally by Alexis Rosen
39
40Title:	NeXT-2.2 support
41From:	Lele Gaifax <lele@itnsg1.cineca.it>
42
43Title:	Misc "static" function declarations corrected in prototypes.
44From:	Lele Gaifax <lele@itnsg1.cineca.it>
45
46Title:	NNTP name canolicalization in /usr/lib/nntp_server vs gethostname()
47From:	Mark R. Levinson <chicken@minerva.npac.syr.edu>
48	The code now converts the name from nntp_server to the official name
49	before comparing it to the gethostname() result.  This is useful if
50	nntp_server points to an alias (ie: news.your.domain.name)
51
52Title:	Count lines if no "Lines:" field present.
53From:	Paul Eggert <eggert@twinsun.com> and Luc Rooijakkers <lwj@cs.kun.nl>
54	If there is no "Lines:" field, NN will count them.
55
56Title:	Correct line counting algorithm conflict with NNTP and folders/digests.
57From:	Peter Wemm <peter@DIALix.oz.au>
58	The code would attempt to fetch a sub-article from a folder or
59	digest from the NNTP server - which is clearly not possible...
60
61Title:	Make line counting optional
62From:	Peter Wemm <peter@DIALix.oz.au>
63	#define DONT_COUNT_LINES option to config - it is undesirable to
64	fetch all articles from a remote NNTP server just to display a
65	line count on the menu.
66
67Title:	print a "??" instead of "-1" for lines count in some display modes
68From:	J. Porter Clark <jpc@avdms8.msfc.nasa.gov>
69	If you change the "layout", it is possible for NN to display a -1
70	in the lines count field.
71
72Title:	Timezone misalculations
73From:	Paul Eggert <eggert@twinsun.com>
74	NN mishandled non-GMT timezones in sorting resulting in articles being
75	presented out of order.
76
77Title:	NNGRAB speedups
78From:	Paul Eggert <eggert@twinsun.com>
79	nngrab generated unnecessary files and processes (especially on
80	BSD'ish machines that do not have a built-in "[" in the shell
81
82Title:	NN wastes time seeking to find the file size
83From:	Paul Eggert <eggert@twinsun.com>
84	Make NN count bytes as they are read rather than seeking all over the
85	place.
86
87Title:	Correct NN's header parser to RFC compliant behavior
88From:	Paul Eggert <eggert@twinsun.com>
89	NN gets confused on some variations of legitimate header continuation
90	lines.
91
92Title:	Remove defunct comp.ai.neural-nets digest special handling
93From:	Paul Eggert <eggert@twinsun.com>
94	The comp.ai.neural-nets digests are now in standard form.
95
96Title:	Improve ":decode" to recognize more formats
97From:	Mark Rawling <Mark.Rawling@mel.dit.csiro.au>
98	Fix for fault in the chtbl code
99
100Title:	Add a "ignore-formfeed" variable
101From:	Romain King <romain@pryamid.com>
102	Special request: display "^L" instead of a page break.  Not on
103	be default.
104
105Title:	Fix that darn "NO DIRECTORY (ok)" message that nnmaster is so fond of.
106From:	Steve Simmons <scs@lokkur.dexter.mi.us>
107	If nnmaster is going to complain about a missing directory, at least
108	say which one it is....
109
110Title:	get aux script to clean up common editor backup files
111From:	Minh Tran-Le <mtranle@paris.intellicorp.com>
112	Emacs makes file~ backups, some make file.bak, etc. Try and clean
113	up a few of them after launching an editor.
114
115Title:	make aux script generate control messages that INN will accept.
116From:	Peter Wemm <peter@DIALix.oz.au>
117	INN's inews is pretty fussy in what it will accept..
118
119Title:	Resolve conflict NN with INN on SVR4/386
120From:	Peter Wemm <peter@DIALix.oz.au>
121	SVR4/386 has an "interesting" feature: You can write to a file
122	with mmap() **without** updating the timestamps....
123	INN uses this for the active file, nnmaster now has a "-U" switch
124	to force an unconditional scan of the active file after the timeout,
125	rather than if the timestamps changed.
126
127Title:	VMS ANU-NEWS compatability
128From:	Matt Heffron <heffron@falstaff.css.beckman.com>
129	VMS ANU-NEWS's NNTP returns a different error code on no-such-article
130
131Title:	Log group that generated a nntp error
132From:	Matt Heffron <heffron@falstaff.css.beckman.com>
133	If a NNTP error is generated, log the group that caused it.
134
135Title:	Support terminals without clr_eol capability
136From:	Luc Rooijakkers <lwj@cs.kun.nl>
137	Some ancient terminals cannot clear to end-of-line. Simulate it by
138	outputting spaces. This means that printf/puts/putchar/stdout can
139	no longer be used in visual mode, because term.c has to keep track
140	of the cursor position. Use the new tprintf/tputc instead (but only
141	from files that are always linked with term.o). A list of the files
142	that may do printf/puts/putchar/stdout is in `noterm'.
143
144Title:	Miscellaneous cleanup of term.c
145From:	Luc Rooijakkers <lwj@cs.kun.nl>
146	Use tputs correctly unless BROKEN_TPUTS is #defined (UNISYS?)
147
148Title:	Allow backslash to escape semicolons in extra headers
149From:	Luc Rooijakkers <lwj@cs.kun.nl>
150	This is necessary to let the user add a MIME Content-Type header
151	via the news-header or mail-header variables.
152
153Title:	Fixed annoying cursor position during some messages
154From:	Luc Rooijakkers <lwj@cs.kun.nl>
155	Don't reposition the cursor to the prompt line after a message
156	if the message has overwritten the prompt.
157
158Title:	Fixed invisible error messages
159From:	Luc Rooijakkers <lwj@cs.kun.nl>
160	If terminal has a separate `visual mode' screen, printf/nn_exit
161	sequences don't work. Replaced user_error by nn_exitmsg which has
162	the exit status as additional first argument, and replaced the
163	printf/nn_exit sequences by calls to nn_exitmsg
164
165Title:	Added charset variable and 8-bit checking for posts
166From:	Luc Rooijakkers <lwj@cs.kun.nl>
167	The new charset variable can be set to the character set of the
168	terminal. It also determines the default value of the
169	data-bits variable.
170	If a message is posted whose body contains 8-bit characters
171	and charset is not set to "unknown", nn will add MIME-Version
172	and Content-XXX headers indicating its character set.
173	Such messages cannot be posted if the current character set
174	is a 7-bit set.
175	To obtain the previous behaviour, do `set charset unknown'.
176
177Title:	Cleaned fill/nofill use in nn.1.* files
178From:	Luc Rooijakkers
179	Lots of examples in the manual were being filled by *roff.
180
181Title:	Sped up aux.sh and made it more portable
182From:	Luc Rooijakkers
183	Using case instead of if is faster on shells that don't have if
184
185Title:	Preview mode and menu.c
186From:	Steven Grimm <koreth@hyperion.com>
187	The symptom: previewing (usually via auto-preview-mode) an article on
188	the next-to-last page of a group menu then going to the last page of
189	the menu caused nn to dump core if the previewed article had a greater
190	article number than the last article on the last screen.  For example,
191	viewing article 'h' would cause the problem if the last screen only
192	went up to 'e'.
193
194Title:	Correct a small over-optimization in term.c
195From:	Luc Rooijakkers
196	My term.c contained one cursor position update too many, causing
197	things to go wrong sometimes.
198
199Title:	DecStation/Ultrix 4.2 support
200From:	"stolen" from Toivo Pedaste <toivo@uniwa.uwa.edu.au> my Peter Wemm.
201	conf/m-dec3100.h for mips machines running Ultrix.
202
203Title:	Misc cleanups of bad code
204From:	Paul Eggert <eggert@twinsun.com>
205	The code is loaded with functions that return no value, etc.
206	This is a start at fixing some of the more serious faults.
207
208Title:	Macro to call metamail
209From:	mikew@kpc.com
210	A simple example macro for passing MIME articles to metamail
211
212Title:	Bug in folder code procuces core dump.
213From:	Stefan Schwarz <stefans@bauv106.bauv.unibw-muenchen.de>
214
215Title:	rfmail support
216From:	Bo Kullmar <bk@kullmar.kullmar.se>
217
218Title:	Clean up code part 2
219From:	Peter Wemm <peter@DIALix.oz.au>
220	Continued on from what Paul Eggert started... AARRGGHH!! It's a mess!
221
222Title:	Update help screens
223From:	Peter Wemm <peter@DIALix.oz.au>
224	As suggested by Bill Wohler <wohler@sap-ag.de>, sort out the help
225	pages to "clarify" the differences between a few commands, and to
226	add the "(" and ")" keys.. [darn.. It's a tight fit in there.]
227
228Title:	Domain/OS fixes and others
229From:	Michael T Pins <mtpins@icaen.uiowa.edu>
230	1> Makes nnmaster run much happier on HP/Apollo's running Domain/OS
231	2> Allows nn to compile on variants of HP-UX, among others, that it
232	   won't compile on otherwise.
233
234Title:	aux.sh fixes
235From:	Peter Wemm <peter@DIALix.oz.au>, bug reports from many...
236	The changes to aux.sh to use "here documents" broke a lot of
237	/bin/sh's Hack them out of the code, as not everybody has ksh.
238
239Title:	SunOS 4.1 supports window siziing
240From:	Paul Eggert <eggert@twinsun.com>
241	Add a change to s-sunos4-0.h
242
243Title:	Add support for PCS Cadmus with MIPS cpu
244From:	Peter Pichol <pp@informatik.uni-kiel.dbp.de>)
245	Create m-pcs.h
246
247Title:	Add support for DEC Alpha's running OSF/1
248From:	Mike Wexler <mikew@kpc.com>
249	Create m-alpha.h and s-osf1.h
250
251Title:	A way to read even less news!
252From:	Keld.Simonsen@dkuug.dk
253	It has been an old desire (viz. the FAQ) to be able to skip
254	followups to subjects, one did not care to read. The following two
255	variables implement a way to omit these followups, plus a way to
256	auto-select the articles that you are most likely to be interested
257	in, namely followups to articles that you have already read, or
258	followups to articles you have posted yourself.
259
260	The killing of uninteresting followups is done without entries in
261	the kill file. The thread is killed if the root article of the
262	thread is a followup itself, and the subject is not selected.
263
264	The default of this patch to nn is no changed behaviour.
265
266	Two new variables are introduced, can be set in the .nn/init file:
267
268	ignore-re  (boolean, default false)
269	If set, articles with subjects already seen in a previous
270	invocation of nn or another newsreader - and not auto-selected -
271	are automatically killed.
272
273	auto-select-rw (boolean, default false)
274	If set, a subject of an article read or posted is automatically
275	used for subsequent auto-selecting (if not already selected).
276
277Title:	Fixes for non ANSI SunOS cc
278From:	Paul Eggert <eggert@twinsun.com>
279
280	NN 6.4.19gamma's term.c contains a cast that assumes that the
281	compiler is an ANSI C compiler.  This doesn't work in K&R
282	compilers (e.g. SunOS 4.1.2 with bundled cc).
283
284Title:	void vs int mixups in return values
285From:	Paul Eggert <eggert@twinsun.com>
286	Here's a patch to NN 6.4.19gamma's term.c that fixes a problem
287	where it returns a value in a void function.
288
289Title:	After you `:set record xxx', `:set' misdisplays mail-record
290From:	Paul Eggert <eggert@twinsun.com>
291	The :set listing were incorrectly displaying mail-record and
292	news-record as always unset.
293
294Title:	Improvement/bug fix to nn: archiving full articles using NNTP
295From:	Fred Hucht <fred@hal6000.thp.Uni-Duisburg.DE>
296	If you set nnmaster to archive articles while in NNTP mode, it
297	only archived the headers...
298
299Title:	Add a flag to show Originator
300From:	Jim Jagielski <jim@jagubox.gsfc.nasa.gov>
301	Add's support for 'J' in news-header to display the "Originator:"
302
303Title:	Catch short term error conditions to prevent nnmaster aborting.
304From:	J.P.M. van der Jagt <jeanpaul@duteca.et.tudelft.nl>
305	Prevent things like "400 Server load too high, try again later"
306	from making nnmaster exit.
307
308Title:	make nn 6.4 PL18 compile (and work ;-)) for hp_ux 8.0.
309From:	Bart Muyzer <bartm@cv.ruu.nl>
310
311Title:	`nn -xXm' does't clear to end of line (NN 6.4.19gamma)
312From:	Paul Eggert <eggert@shadow.twinsun.com>
313	NN wasn't properly clearing to end-of-line after each output
314	line.
315
316From:	Paul Eggert <eggert@twinsun.com>
317Title:	infelicities in NN 6.4.19gamma term.c
318       	The term.c code had some really bizzare conditional tests that
319	were uncessesary, and some were obvious typos.  This patch doesn't
320	fix any real bugs, but it removes the needless code.  It also
321	introduces a few optimizations in critical places: (This is a
322	particularly big win on most Sparcs, which don't have integer
323	division.)
324
325From:	Peter Wemm <peter@zeus.DIALix.oz.au>
326Title:	silly bug in nn-use-elm script
327	contrib/nn-use-elm had a leading  #/bin/sh instead of #!/bin/sh
328	This causes invocation of csh on many systems... (including mine :-)
329
330From:	Peter Wemm <peter@zeus.DIALix.oz.au>
331Title:	long standing bug in sort.c
332	non-related articles were often being associated in
333	subject-match-parts mode.  This tries to make it less likely.
334
335From:	Steve Grimm <koreth@hyperion.com>
336Title:	prefix.c fix, HAVE_TRUNCATE for SunOS.
337	prefix.c change #ifdef NNTP to #ifdef INEWS_PATH
338	SunOS has truncate.
339
340From:	Michael Masterson <mjm@thumper.progcons.com>
341Title:	account.c is broken
342	The code uses a structure before defined if accounting is enabled.
343	Update s-sys5-4.h.  m-i80386.h needs work.
344
345From:	Peter Wemm <peter@DIALix.oz.au>
346Title:	improve m-i80386.h
347	m-i80386.h didn't deal with network byte order very well.  As far as
348	I can tell, if you want network byte order, then you probably want it
349	for NFS sharing.  In which case you have TCP/IP.  Use it's routines.
350
351From:	Steven Grimm <koreth@hyperion.com>
352Title:	Patch for preview mode display glitch
353	the 'xn' termcap flag is conflicting with clrline() and long
354	subject lines, causing the following line to be cleared.
355
356From:	Peter Wemm <peter@DIALix.oz.au>
357Title:	fix aux.sh
358	aux.sh was failing when using the nn_elm script from the FAQ.
359	In the process of reformatting it, I found the bug, a missing
360	semicolon.  It would fail whenever mailer-pipe-input was unset.
361
362From:	Peter Wemm <peter@DIALix.oz.au>
363Title:	The Biggie!  Merge in NOV code!
364	Well, this is the big one.  #ifdef NOV in config.h, and it even works
365	over NNTP.  The some of the hacks to get NN to use the libnov code is
366	pretty baroque, but necessary in order to maintain compatability.
367	NN's internals are *very* dependant on the nnmaster database and it
368	does not particularly appreciate the change.  If you enable NOV, all
369	bets are off. :-)  Most of the code is from Geoff Collyer
370	<geoff@world.std.com> although the NNTP mods and other tweaks are
371	from others whom I cannot identify..
372	This is very much a Stop-Gap solution.
373
374From:	Michael Masterson <mjm@thumper.progcons.com>
375Title:	auto-select-rw and maybe ignore-re kill folder mode
376	NN takes a SEGV while reading a folder with these enabled.
377	[Peter: I'm unable to reproduce the bug....]
378
379From:	Steven Grimm <koreth@hyperion.com>
380Title:	Patch for ignore-re and -x
381	Here's a tiny patch so that ignore-re is turned off when you're
382	using the -x flag, or when you go into a group to read old
383	articles.  I think this is better than the way it currently works;
384	currently, if you have ignore-re set on a group, there's no way
385	(that I can discover) to get nn to show you an article whose
386	thread's initial article has expired.
387
388From:	Peter Wemm <peter@DIALix.oz.au>
389Title:	folder move vs. auto-select-rw
390	Basically, patch up Michael Masterson's problem.  Although I
391	couldn't core dump (lucky me..), I did notice that if I was
392	reading a folder, the articles I read were added to the kill file.
393	I've added a temporary override to auto-select-rw that makes it
394	ignored in a folder.  This should fix Michael's problem.
395
396From:	Peter Wemm <peter@DIALix.oz.au>
397Title:	6.4.19 is no more.
398	So as to distinguish out butchering from Kim's work, we've decided
399	on a revision "bump".  It's NN-6.5 now.
400
401From:	Peter Wemm <peter@DIALix.oz.au>
402Title:	gcc -Wall cleanup
403	It now compiles a lot more cleanly under -Wall, but not 100%
404	clean..  :-)  I found some sneaky bugs in the menu code and the
405	init file parser in the process.
406
407From:	Peter Wemm <peter@DIALix.oz.au>
408Title:	Merge in Article search from Andy Burgess <aab@cichlid.com>
409	There are numerous collisions with the NOV code, and it does not
410	work with digests, etc, etc.  It is *not* enabled in config.h by
411	default, as It has not revieved enough testing by the group.
412	It's also not documented in the manual... (Volunteers?)
413	Also, don't enable this if you read via nntp... Your server will
414	hate you...
415
416-- 6.5.0 beta goes out Aug 31 1993 --
417
418From:	Paul Eggert <eggert@twinsun.com>
419Title:	The code still says 6.4 in various files, including the documentation.
420
421From:	Paul Eggert <eggert@twinsun.com>
422Title:	Bogus prototypes for syslog() functions are wrong.
423
424From:	Paul Eggert <eggert@twinsun.com>
425Title:	NO_X_NEWSREADER should be defined by default.
426	[Peter: Awww!  If Tin can do it, why can't I? :-) ]
427
428From:	Paul Eggert <eggert@twinsun.com>
429Title:	Redeclaration of catch_winch on machines with RESIZING
430
431From:	Paul Eggert <eggert@twinsun.com>
432Subject: nn-6.5.0 mishandles time zone changes near short month boundaries
433	NN 6.5.0 mishandles non-GMT time zones near short month
434	boundaries, which causes articles to be incorrectly sorted by
435	date.  For example, pack_date("30 Sep 1993 23:00 -0700") and
436	pack_date("1 Oct 1993 06:00 GMT") should yield the same value, but
437	in NN 6.5.0 the former yields 3614760 while the latter yields
438	3616200.  This is becoming more and more of a problem as more
439	people use non-GMT time zones in their news.  Here is a patch.
440
441From:	Toivo Pedaste <toivo@uniwa.uwa.edu.au>
442Title:	Missing 'static' on some functions
443	db_init_group(), catch_winch(), grep_article()
444
445From:	Steve Davies <srd@peora.sdc.ccur.com>
446Title:	signal prototypes misdeclared
447	There were a few places where signal handlers were declared void,
448	but in fact were sig_type. This was OK on machines that had the
449	same definition, but not on those with sig_type == int.
450	Also, truncate() is messed up..
451
452From:	Steve Grimm <koreth@hyperion.com>
453Title:	tidy up config.h
454	There were a few typos and errors in config.h-dist
455
456From:	Peter Wemm <peter@DIALix.oz.au>
457Title:	fix up prototype problems with truncate and gethostname
458	It seems every system has a different idea on what they are supposed
459	to be.  I give up...  NN has not got internal functions called
460	nn_truncate and nn_gethostname, which are prototyped, and will call
461	"the real thing" if it's available.  It seems the safest way.
462
463From:	Steve Davies <srd@peora.sdc.ccur.com>
464Title:	6.5 NOV + NNTP cleanups
465	NN + NNTP + NOV : db.c, global.h, nn.c, nntp.c
466	- This patch fixes problems when NN is run on the same machine as
467	the NNTP server.
468	- When compiled with NNTP and NOV, a temp file was being created
469	when the active, active.times, and .overview files were read from
470	the NNTP server.  This patch eliminates the creation of that
471	temporary file.  In db.c (readactfile, readtimfile,
472	db_read_group), instead of reading from the temp file, the data is
473	read directly from the NNTP server.  The idea for this comes from
474	Peter Orbaek (poe@daimi.aau.dk).  This requires a simple patch to
475	the nov sources (which probably should be applied by hand rather
476	than running this file through patch):
477	[NOTE: NN-6.5 contains a 'nov-lite' distribution with this patch
478	applied and everything non-essential for NN removed. -Peter ]
479
480--- nov/libnov/oldlib.c	Tue Sep  7 13:47:31 1993
481+++ nov/libnov/lib.c	Tue Sep  7 13:47:42 1993
482@@ -213,6 +213,7 @@
483 	}
484
485 	while ((line = fgetms(gp->g_stream)) != NULL) {
486+		if (line[0] == '.') break;
487 		art = (struct novart *)malloc(sizeof *art);
488 		if (art == NULL ||
489 		    (prssts = prsovline(line, gp, art, prevart)) == PRSFAIL) {
490
491
492	- The code in db_read_art for handling crossposts when NOV is
493	defined does not handle the (hypothetical?) case where there are
494	extra headers besides Xref: in the .overview file.  It also
495	doesn't work when cnews is used to maintain the .overview files,
496	since cnews appears to use xref: instead of Xref: in the .overview
497	file.  A new routine "db_fixup_cross_postings" is added to db.c .
498	This routine is derived from code by Charles Henrich and
499	rmtodd@servalan.servalan.com.
500
501From:	Peter Wemm <peter@DIALix.oz.au>
502Title:	include a minimal nov distribution.
503	Because we need a trivial patch to the libnov code which Geoff
504	Collyer doesn't want to put in his code (and quite understandably
505	because it's a "hack"), and I dont want 10,000 email messages
506	saying "NOV + NNTP doesn't work" when they build it without
507	patching because they never read intructions that tell them to
508	patch it. :-)  If anybody does this to me now because they've
509	removed the patched version, I'll reply with a uuencoded 16 Meg
510	kernel crash dump. (ie: a bunny dropping..) :-)
511
512From:	Peter Wemm <peter@DIALix.oz.au>
513Title:	Fix "Out of memory: cannot allocate -4 bytes"
514	If NN could not determine the window size from the termcap or the
515	TIOCGWINSZ ioctl's, it would try and malloc a negative buffer..
516
517From:	Peter Wemm <peter@DIALix.oz.au>
518Title:	typo in nn_gethostname()
519	hostname.c would not compile if HAVE_HOSTNAME defined.
520
521From:	Jim Jagielski <jim@jagubox.gsfc.nasa.gov>
522Title:	nn -a0 botches display on some hosts
523	There is some interaction between curses, tprintf, and terminfo.
524
525From:	Jim Jagielski <jim@jagubox.gsfc.nasa.gov>
526Title:	Add new conf/s-aux3-0.h
527
528From:	Robert.Stockton@ELROND.GANDALF.CS.CMU.EDU
529Title:	nov code overrunning '.' on XOVER data when active is incorrect.
530	If the active file says there is articles, but the .overview is
531	empty, the novall() and novnext() miss the "eof" dot and hang
532	forever.
533
534From:	Toivo Pedaste <toivo@uniwa.uwa.edu.au>
535Title:	Explicit support for mouse under xterm
536	This code can detect if running under xterm, and will enable mouse
537	events if so.  The mouse clicks are used for menu selection,
538	reading, previewing and so on.  It makes NN "almost" hands-free
539	for most news reading tasks.
540
541From:	Peter Wemm <peter@DIALix.oz.au>
542Title:	Minor tweaks for mouse-code
543	Because of a "feature" apparently in the SYSV termio driver and
544	possibly the POSIX termios, NN was disabling raw mode during
545	screen updates in order to enable xon-xoff flow control to work.
546	This was causing character echoing of mouse events during screen
547	redraws and looked rather ugly.  This problem never occurs on
548	older BSD systems with the sgtty style driver.  This tweak causes
549	NN to not switch off raw mode on Xterms when mouse is enabled..
550	Heck, if xterm needs flow control, something is very wrong...
551
552From:	Tom Limoncelli <tal@warren.mentorg.com>
553Title:	Possible memory leaks
554	Purify is not at all happy with some of the things that the NOV
555	code does.  I dont think there is much of a problem, although I
556	agree that it's messy.  Basically, NN is allocating buffers for
557	the hash tables and not freeing them at exit.  As these are reused
558	while NN travels from group to group, this is mostly static.
559	NN does not free() these on exit and Purify complains.  The
560	invitation to fix this is open to all.. :-)
561
562From:	Peter Wemm <peter@DIALix.oz.au>
563Title:	major reorganisation of NOV code.
564	Shift files from nov/* to the top level directory for radical
565	simplification of compilation.  Rationalise include files.
566	Substitute some simple routines to reduce extra files needed from
567	the NOV distibution.
568
569From:	Peter Wemm <peter@DIALix.oz.au>
570Title:	major repairs of above reorganisation.
571	Well, the "simple" reorganisation turned out to be rather dramatic
572	in it's affects.  This cost weeks of debugging and nearly caused
573	me to give up and reverse the last upmteen patches (I had
574	neglected to do a CVS checkin before starting).  It turned out to
575	me a malloc problem.  I *suspect* there is still a memory leak
576	there, but it doesn't seem to show up on the process size after a
577	lengthy reading session..
578
579From:	Ian Nicholls <iann@storesys.coles.oz.au>
580Title:	NCR tower 32 tweaks.
581	nn-6.5.0.b2 had troubles with include files.  This helps a bit.
582
583From:	Marc Boucher <marc@cam.org>
584Title:	additions to conf/s-sys5-4.h
585	This adds some omissions to the config file.
586
587From:	Marc Boucher <marc@cam.org>
588Title:	bzero/memset are out, clearobj is in...
589	Following Kim's coding conventions, change a couple of memset()'s
590	that I introduced to clearobj's.  This looks a lot nicer now..
591
592From:	Michael Pins <mtpins@isca.uiowa.edu>
593Title:	b4 patch
594	An nntp speedup, along with changing a number of chars back to ints so
595	nn will actually work properly on a number of systems.
596
597nn-6.5.0.b5:
598From: mcm@gorgon.unx.sas.com (Mike Mitchell)
599Subject: Re: Problems with splitting digests
600	Digests are now split under NOV.
601
602From: romain@sword.eng.pyramid.com (Romain Kang)
603Subject: NN hacks for NOV
604	Major NOV hacks.  Things should be rather faster now.
605	Also, the addition of nnview for reading folders.
606
607From:   Michael Pins <mtpins@isca.uiowa.edu>
608	General bug-fixing and patch cleanup.
609
610nn-6.5.0.b6:
611From lar3ry@zk3.dec.com
612Subject: OSF/1 (err, Digital Unix) patches
613	Fixes for the Alpha and OSF/1.
614
615From: David Dyer-Bennet <ddb@gw.ddb.com>
616Subject:  s-linux.h
617	config file for linux
618
619From: jpc@hammer.msfc.nasa.gov (J. Porter Clark)
620Subject: libnov.c bug
621	There's a bug in the code that causes .newsrc to be updated even though
622	the corresponding articles aren't read.  Swapped the order of the test.
623
624From: Jacob Martin Bohn Lorensen <jablo@diku.dk>
625Subject: timeout problem with NOV and nntp
626	When the server unexpectedly breaks the connection nn does not always
627	discover this.  This can be fixed by just re-opening the connection.
628
629From:   Michael Pins <mtpins@isca.uiowa.edu>
630        General bug-fixing, patch cleanup and code cleanup.
631
632nn-6.5.0.b7:
633From: <root@oit.gatech.edu>
634	config files for AIX/RS6000, and a patch for AIX brain damage.
635
636From:	Michael Pins <mtpins@isca.uiowa.edu>
637	Put accounting logs under LIB instead of DB, so DB isn't needed
638	unless nnmaster is used.  Pulled accounting #def's out of account.c
639	into the new account.h so it's no longer necessary to edit a .c file.
640
641	Fixed line counting in digests (used to claim one too many).
642
643	Included the inst.sh file for the Apollo I've been using for years.
644	Anyone running Domain/OS will want to use this instead of inst.sh.
645
646	Yet more general clean-up.
647
648nn-6.5.0:
649	Added account.h to account dependencies.
650
651	Added freebsd config file.
652
653	Hacked together some docs for nnview.
654
655	Yet even more general clean-up.
656
657nn-6.5.1:
658	Added netbsd config file.
659
660	Fixed up s-template.h.
661
662	SunOS doesn't have memmove (and likely neither do most older BSD
663	derived systems).  Early versions of Solaris don't have bcopy....
664	Added NO_MEMMOVE and used it to ifdef around these.  Most (all?)
665	can probably be memcpy, but until I have time to insure that the
666	args don't overlap, I'll be paranoid.
667
668nn-6.5.2:
669	Changed group_number to int32 so > 32767 groups works
670
671	Fixed problem with long References: lines
672
673	Fixed problem with large headers (seen mainly in nnview)
674
675	Hacked in a workaround for sites that don't support
676	LIST active.times
677	nn will now see new groups properly
678
679	More general cleanup of the code and minor bug fixes
680
681From: mtranle@theoden.intellicorp.com (Minh Tran-Le)
682	nn was eating the first number from a LIST response
683	workaround for M$ newsserver braindamage
684
685From: Nick.Holloway@alfie.demon.co.uk (Nick Holloway)
686	fix for INN return message re: mail to moderator
687
688nn-6.5.3:
689	Ripped out "LIST active.times" workaround.  Typhoon will support it
690	soon (likely before anyone reads this), and the workaround had bugs.
691
692	Changed accounting so that time used outputs HH:MM instead of HH.MM
693	(does anyone still use accounting?)
694
695	Added a compile time option to turn on more headers to make the
696	GNKSA people happy.  The default behavior hasn't changed.
697
698From: Bruce Fisher <bruce@smtl.co.uk>
699	The news spool directory was hardcoded in libnov.c, conflicting
700	with NEWS_DIRECTORY from config.h
701
702From: Dale Talcott <aeh@quest.cc.purdue.edu>
703	A new variable "cross_post_limit" to kill articles posted to more
704	than cross_post_limit newsgroups.  Default=0 (no limit).
705
706From: Dale Talcott <aeh@quest.cc.purdue.edu>
707	bug in pack_date.c--computes leap year incorrectly
708
709From: Tom Kartes <tom@zeus.Materna.DE>
710	Killing the current article sometimes kicks you out of the newsgroup.
711
712From: Tom Kartes <tom@zeus.Materna.DE>
713	Saving an article into a file will escape some headerlines if
714	you're using NOV and did not previously view this article.
715
716From: 5ar4ro$ri7@bogon.com (John Henders)
717	a patch that adds S)ign [pgp] as an option to the posting menu
718
719From: "Maarten Carels" <maarten@ic.uva.nl>
720	new config.h option to have a different filename for the
721	overview files
722
723nn-6.5.4:
724	Changed defaults in config.h to more sane ones.
725	Fixed a bug in libnov.c so NOV_FILENAME actually works.
726	Fixed a nasty bug that would occasionally cause nn to go ballistic
727	when ripping a digest if the overview data wasn't quite right.
728	nn now compiles cleanly on FreeBSD.
729
730nn-6.5.5:
731	Changed answer.c to use 4-digit year (making it RFC-822
732	non-compliant, but son-of-rfc-1036 compliant).
733	Back-ported pack-date.c from nn7.  It fixes a number of minor bugs,
734	and deals with Y2K brain-damage from other software.
735
736nn-6.5.6:
737	Fixed two new date sorting bugs.  Oops.
738	Workaround for new brain-damage in Solaris7 include files.
739
740nn-6.6:
741	Fixed large uid/gid problems
742	Fixed Cc (it actually works now)
743	changed X-Newsreader to User-Agent
744	changed -ltermcap to -lncurses in s-linux.h, as they broke it again
745	the date parser now translates 101 -> 2001 (yes, I'm still seeing this)
746	backported some changes to decode from nn7
747
748From: Dave Olson <olson@bengaltech.com>
749	added NNTP_AUTH support
750	added ssl support
751	nn now posts internally via NNTP (NNTP only)
752	all functions of aux now internal (NNTP only)
753	added support for multiple nntp-server/newsrc/nn-directory
754
755From: Charles Lindsey <chl@clw.cs.man.ac.uk>
756	aliased groups didn't work correctly with NOV/no-NNTP
757
758From: jpc@suespammers.org (J. Porter Clark)
759	added E = save-header-only function
760
761nn-6.6.1:
762	online help files will now get installed properly.
763	now compiles if nntp isn't defined.
764	dumped core on posting if news-record had a bad path.  Fixed.
765	no longer segfaults if user over quota.
766	no longer segfaults if NNTPSERVER is invalid.
767	will now search path for executables.
768	passwords longer than 8 chars now work from Solaris.
769	nn will silently ignore any non-digests with [D,d]igest in the
770		subject, and apparently has for quite some time.
771		set the default for also_full_digest to true as workaround.
772	nn has long gotten all the articles in a group when any number of
773		extra articles was requested.  Fixed.
774	will now reconnect if it times out during a post.
775
776nn-6.6.2:
777	nn wouldn't compile if NNTP was defined and NOV wasn't.  Fixed.
778
779nn-6.6.3:
780	cpp is broken on gcc-3.x.  Worked around.
781	ripped out SSL support, as it was apparently fatally broken.
782	removed nnmail and HAVE_ROUTING.  No longer needed.
783	converted from varargs to stdargs.
784	added MacOS X support
785	nn will now attempt to discover the domain if not defined.
786	will now reconnect, even to broken servers that don't send 503
787
788From: Bob Hain <bob@me.umn.edu>
789	use full_name instead of pw_gecos in gen_frompath
790
791nn-6.6.4:
792	added iso-8859-15 to chset
793	increased END_OF_LIST (some servers have very large article numbers)
794	changed ospeed to nnspeed to avoid namespace conflicts
795	always rebuild binary killfile when starting nn(NOV)
796	if the ORGANIZATION environment variable is set, nn will use it
797	the editor again accepts arguments, and starts after the headers
798	added new variable use-editor-line, for the above
799
800From: Jacques A. Vidrine <nectar@FreeBSD.org>
801	nn has a remote security hole.  Fixed.
802
803From: Felicia Neff (fn@panix.com)
804	the variables for nn_exitmsg when nn is already running were swapped
805
806nn-6.6.5:
807	added -lcurses to macosx TERMLIB
808	nnview doesn't need to talk to the NNTPSERVER
809	removed last vestige of sys_errlist
810
811From: J.K.Wight@newcastle.ac.uk
812	cp is undefined if DOMAIN is defined and HIDDENNET isn't.  Fixed.
813
814From: Neil W Rickert <rickert@cs.niu.edu>
815	nn segfaults if it reconnects during initial authentication.  Fixed.
816
817From: Jeffery Small <jeff@cjsa.com>
818	nn sends a bogus [post|follow] failed message when using cnews and
819	!nntp.  Fixed.  (re-added two options to config.h)
820
821
822nn-6.7alpha:
823	Fixed some portability problems with old OSs.
824	First pass at starting to clean up the code.  Ick, what a mess.
825	nnmaster and nnacct appear to have been broken during nn-6.6, fixed.
826	The name length displayed is now based upon the width of the screen.
827	nn will now correctly parse From: lines that contain ()
828		For example:
829		    From: "Jesse James (home)" <jjames@example.com>
830		used to display as "home", the new behavior will display
831		it as "Jesse James".  However, this may affect killfiles
832		that depend upon the old behavior.
833		To use the old behavior, set the new run-time variable
834		'old-packname' to true.
835	The hold command from the post/mail menu failed if the users
836		nn_directory wasn't a local filesystem.  Fixed.
837	nnpost didn't check to see if there was a held message.  Fixed.
838	Posting from nnview failed due to the nntp connection not being
839		setup.  Fixed.
840	When replying with a held message, nn would use the post menu.  Fixed.
841	Header check macro is now case insensitive for both news and folders.
842	Added GPG support, which comes with a new run-time variable
843		'sign-type', and a compile-time variable SIGN_TYPE to set
844		the default to either pgp or gpg.
845	nn will now print the version before connecting to the newsserver
846	internalized :bug information for more accurate reporting
847	nn will now look in /etc/resolv.conf for a domain if DOMAIN isn't
848		defined and hostname isn't a FQDN.
849	new command ":show config" will show the compile-time definitions.
850
851From: Henning Schmiedehausen <hps@intermeta.de>
852	If query-signature wasn't set, nn ignored signature-append-post.
853	Fixed.
854
855From: Tim <tim@sleepy.wojomedia.com>
856	nntp-user and nntp-password should be settable in the init file.
857	Fixed.
858
859From: Steve Rumble <rumble@ephemeral.org>
860	nn segfaults if a client is unable to resolve it's own name.
861	Fixed.
862
863From: flaps@dgp.toronto.edu (Alan J Rosenthal)
864	nn should trim long References: lines.  Added patch to do so.
865
866nn-6.7beta:
867	Cleaned up some old (unused) variables.
868	More general code cleanup.
869	Updated the manpages to include new variables.
870	Updated INSTALLATION and other docs so they're (roughly) current.
871	If new-group-action is set to 0 in init, nn will no longer get
872		active.times.  (Yes, this is what the docs have claimed was
873		always true, it actually works now.)  This can cut startup
874		time in half on slower links.
875
876nn-6.7.0:
877	And yet even more general code cleanup.
878	rearranged startup code so macros and keymaps work in the init file.
879	only query-signature if .signature exists
880	fixed some portability problems with NeXTstep-3.3 and NetBSD
881
882nn-6.7.1:
883	declared main to be int in usercheck.c and cvt-help.c
884	changed a few refs to nn-6.5 and nn-6.6 to nn-6.7
885	clear display before printing "No News" so as to not overwrite
886
887nn-6.7.2:
888	changed TERMIO to TERMIOS in s-linux.h
889	execute needs to exit, not return, if exec fails
890	callable programs (i.e pager) should accept arguments
891
892nn-6.7.3:
893	Fixed the Makefile so recent versions of gcc no longer choke.
894	The -N option appears to have been broken since 6.6.0.  Fixed.
895
896