5.4h7	Improved behaviour when dealing with denial of service attacks.
5.4h6	ADded /< /> begin end words to regexpressions.

5.4h	add lprintf instead of sprintf
5.4f13
	Fixed 54f10 part bug added while fixing startup delay.  Caused part buffer
	to be very very small so it rarely finds whole items.	
5.4f11
	Made  spam_post_local_ok true work for all spam rules not just filter
	Added uucp_timer 800 setting to uucp feeds, this is 800 by default and flushes
	the uucp bag files from '.new' to '.bag' even if the other limits are not reached.
5.4f10
	fixed password hacking and added logging
	fixed parts startup delay
5.4f9	
	Fixed dfeed crashing on ip names
5.4f7
	Improved fts flushing so it is easier to use.

5.4f5
	Fixed pull string over-write bug
	Fixed ftslib crash if index file doesn't exist.
	Added cancel stuff to dnewsweb

5.4f3
	Fixed xover bytes length stuff up.

5.4d4
	Fixed crashing bug in spam filter rules, introduced in 5.4
5.4d2
	Fixes pop lookup bug, which would cause intermittent failures on pop lookups particularly
	on busy systems.
5.4d1
	Fixed bugs in tomail and web tomail thing
	Fixed some more security issues (showfile)
	Fixed gupcgi
	dmulti - added settings
		listen_ports 5119,6119
	Makes dnews listen on extra ports in addition to 119, this only works
	for dmulti!!!

5.4c4
	Fixed bug in nocem processing
5.4c3
	Fixed bug in xhdr corrupt responses on busy systems with large numbers of items
	in a news group
5.4c2
	Fixed fault with nocem processing.
	Added authinfo processing after mode reader command is sent when
	sucking news.
	ADded two settings
		suck_noauth1  true,  Disables sending of first authinfo...
		suck_noauth2 true , disables of sending of second authinfo (after mode reader)
5.4c1
	Fixed security fauilt in dnewsweb
5.4beta6
	Fixed loop in dnews when processing parts.

	spammers.dat in config directory, lists spammers one line
per user, if authenticated user is found in this file, then the
post is rejected but the user is told it was accepted.

5.3e4
	Fixes loop in dnewsweb when no response from server.

5.4beta4
	Added support for incoming compressed feeds to dnews
	Added support for outgoing compressed feeds to dfeed
	Compatible with compressed feeds from nntprelay
	Add to newsfeeds.conf
		site xxx
			groups *
			type dfeed
			compress
	To disable incoming compressed feeds add to dnews.conf
		compress_disable true
	The statistics on compression ratio's are shown on
		tellnews stats_out
		tellnews stats_in
	The % of cpu used for compression is also shown in stats_out in dfeed.
	Currently the stats_in figure is 'transitory' rather than total.	

	When would you use this, and when wouldn't you use it?
		Sending out a 800K/s feed will use up about 100Mhz of Pentium, so 
		a 200mhz pentium might just about send two compressed news feeds.

		Compression with binary groups will be about a 20% bandwidth saving
		, with non binary groups about 65%.

	So you could/should use compression if:
		You are sending 1 or two feeds over a medium speed/slow line
		And they are more text than binary in nature or best all text.
		And you have extra processor resources at the sending end
		And the line is not already compressed in hardware
	In most other cases compression is a bad idea, don't do it! :-)
	
	Note: compression is only currently supported on the NT and Linux builds.

5.3e2
	Fixed feeding problem with frist group in active.dat file.
5.3e1

5.4
	Fixed problem with update not working sometimes by not sending mode reader
	until after welcome arrives.

5.3d7
	Fixed spawn_expire bugs
5.3d6
	fixed bug in nt crashing when dns lookups returns bad structure.
	
5.3d5
	Fixed bug with 4digit dates in newnews and newgroups commands.
5.3d4
	Fixed bug in xover with long xreferences headers, introduced in 5.3d
5.4beta1
	Fixed dnewsweb web_login true, it now works much better and doesn't require
	require_login true to be set.
	
5.3d3
	Fixed bug with extra blank lines being inserted in messages, bug introduced
	in version 5.3c2
5.3c6
	Fixed crash when processing mal formed pgp control message.
5.3c5
	Fixed problem with moderated posts on readonly slaves going to wrong moderator
	Added to fts,  index_numbers true, if set then q2343 will be indexed
 	separately from q323
5.3c4
	Added tellnews matchsite site.name groups_wildcard
	This is a relative of getgroups, it will fetch the list of groups from
	any accessable news server, and then add/remove groups to your server to
	make your server match that serer, the groups_wildcard is required, it is
	used to establish which groups should be added or deleted, e.g.

		tellnews matchsite msnews.microsoft.com microsoft.*
		tellnews matchsite news.installshield.com installsheild.*		
	This provides a pain free way of maintaining your list of news groups
	with several other systems. It does not allow you to merge two over-lapping
	systems, however a matchsite followed by a getgroups to the second system
	would more or less achieve this.

	Deleted groups on your server that exist on the upstream server will be
	undeleted by this command.  To prevent this ban the groups in your ME feed.

5.3c3
	Fixed problem with builtin feeds introduced in 5.3c1
	Fixed problem with xover-caching detection
5.3c2
	Fixed problem with more than 64 channels in dfeed.
	Made input handling turn naked 'cr' characters into
the correct 'crlf' characters.

5.2c1

Fixed bugs in control_me, control_rules_only settings and
added cancel_me true

Now, by default, cancel messages are matched against me feed but not
me spam rules, and other control messages are matched against
normal me rules.

If you set control_me false then the control messages are not
matched against the me feed rules.  If you set control_rules_only then
the control messages are not passed to the spam matching rules.



cancel_me true


post_from_adduser true
post_force_date true

Enhanced full text search options for dnewsweb:
	See search.tpl and results.tpl for the new features.
	If you wish to implement 'date' based searching then
	you must add to fts.conf
		index_time true
	NOTE when adding this setting you must delete your existing
	database when changing this setting as it adds a field
	to the database:
		stop xmit
		del \fts\*.fts
		start xmit
		tellnews refeed ftsfeed (optional)

Fixed max_items so it works for a limit over 100,000


Added
	spam_subject_hits 2, default is 20, this combines subject
	and 'from' and then rejects more than 'hits' duiplicates
	in the last 'spam_from_total' (default 5000) posts.
	(spam_stop true must be set for this setting to take effect)
added
	auth_readart true
	Then setup auth_lib as described on access.htm and in the
	same dll include a function like this:

__declspec( dllexport ) int auth_readart(int chan, int type,
		 char *ipname,
                 char *ipnumber, 
                 char *username,
                 char *password,
                 char *group,
                 int article,
                 int size,
                 char *reason) 

	If return is false, use will be logged of after being told
	the reason 'reason' 
	

Added 
	ml_disable true
	Made con=n, users=n work across dmulti correctly
	ADded mb=n limits a user to that much data downloading
	per day.
	It ignore myname and 127.0.0.1

	auth_spaces true
		allows spaces in usernames passwords, passed to external
		auth.
5.3beta11
	Dnewsweb - now deals with multi part uuencoded files.
	Fixed followup, it was not wrapping lines, (introduced
	in 5.2 probably)
5.3beta8
	New setting
		max_items 30000
	This makes the expire process trim old items from any
	group with more than this many items, this doesn't 
	save disk space but does prevent 'huge' groups (like control.cancel)
	from impacting performance, we recommend
	a setting of 20000 for a typical system. The default is 90000.


	Added header_no_listgroup true setting
	Fixed problem with cross posts to non existent groups on
	upstream site when header sucking causing floating 'dead'
	items appearing.
	
5.3beta7
	Added spam emailing to the manager for local posts
	turn off with spam_noemail true I think.
	Made dmulti -forkat=500 the default, support for up to
		8000 concurrent users on solaris and NT.
5.3beta6
	Multicast sending and receiving udp feeds
		http://netwinsite.com/dnews/dudp.htm


5.2b5
	Fixed rare crash when incoming feed sents crap long
lines and connection times out.
		Chrisp.


Version 5.3beta5, this is an experimental version which some people
may like to play with, use at your own risk... :-)
This version has two features.
	1) spawn_expire true probably works much better
	2) Bucket sorting.
1) If you are using spawn_expire true, then we recommend you
give this version a go instead as 5.2 has some faults in relation
to spawn_expire. Or don't use spawn_expire true :-)

2) If you want to try out an experimental feature, and you have
an 'ihave' feed (this will do no good for sucking feeds) first record
some stats from your system:
	tellnews stats
	tellnews test_group rec.humor
	tellnews test_group rec.humor
	tellnews test_group rec.humor
	tellnews test_group comp.lang.c
	tellnews test_group comp.lang.c
	tellnews test_group comp.lang.c
This will give different figures each time it's run due to
file system caching so record 3 figures for each group, 
test non binary groups and record the
figures, then install 5.3beta5 and in expire.conf set
the non binary piles to 'sort' by adding the word 'sort', e.g.
	pile 1 groups * use 50% sort
	...
You may want to add a couple of small piles for popular parts
of the non binary hierachy, e.g.
	pile 5 groups rec.* use 5% sort
	pile 6 groups comp.* use 5% sort
Then wait n days, where 'n' is the number of days your server
stores news, and then try the test commands above again and email
us the results.  Also let us know if messages dissappear or
anything else weird happens :-)

If you don't mind making your server run like a wet week for
1 hour per gig, then issue this command:
	tellnews pile_sort n
'where n' is the pile that contains the groups you tested above, this
will make the master dnews run very slowly as it tries to re-arrange
the contents of the existing buckets, after it's done try the
tests again. 

If the worst happens use a tellnews rebuild_index to fix 
any damage done and switch back to dnews 5.2

		ChrisP.



, we've built
	nt, linux libc5 and linux libc6 versions
With this version set in newsfeeds.conf 'sort' for non binary
piles, e.g.



5.3b5	
	Fixed spwan_expire bug introduced in 5.3
	Fixed xover expiration and increased to 30 days default
	Added buckets_sort true, and tellnews bucket_sort, pile_sort, buckets_sort
	(but too slow to use normally)
	Pile setting 'sort' add to non binary piles
	Add a few piles for the 'popular' hierachies.
5.3b4	
	Fixed area counting in access.conf
	Fixed possible problem with expires being interupted.
5.3b2
	the group mask now applies to checkgroups messages in the
	normal way.
5.2b4
	Fixed bug with xover sorting on the fly
	Fixed area counting in access.conf
5.2b3
	Fixed bug with spam delay incorrectly kicking after 1000
	unique ip addresses post locally.
	Fixed bug with filters not running
	Fixed quoting so it counts lines starting with  > and | 
Add to dnews.conf
	pam_type dnews
And in /etc/pam.d/dnews put three lines:
#%PAM-1.0
auth       required     /lib/security/pam_pwdb.so shadow nullok
account    required     /lib/security/pam_pwdb.so


FIX REBUILD_INDEX so it has an option that doesn't undelete items
Added virtual domain support to 5.3, create a file in the
config directory of this format:
	domain fredy.com
		ip 161.29.3.15
		org Freddies Fries Ltd
	domain fredy2.com
		ip 161.29.5.15


  post_quoted_limit  0.8
	The ratio of quoted to unquoted, for example if you
	wanted to insist that there be at least 70% unquoted 
	lines then you would use post_quoted_limit .7
	A reasonable value is probably 0.95 
	personally I wouldn't use this.
  post_quoted_message You have too much quoted text in that message


5.3
	Added auth_pophost can now take a list of pop servers
	and users can specify user@domain as login.

5.2b2
	Fixed bug in dfeed spawning in dnews on NT (caused by
	fix in bug of dfeed spawning for 95)
	Fixed unique count in showcon, and stats output.
5.2b1
5.3beta4
	Changed to netwin regular expression parser.
	
5.3
	Added auth_wild true, if set then "*" are valid in username
	or password fields in access.conf
5.2a6
	Fixed the dnews zombies.
	
5.2a4
	Fixed leak in fts searching
	fixed score display on fts searching
	Fixed bug with dmulti generatign identical id's if two posts from different slaves in same second.
	Changed malloc to alloca in regexp code
-------------------------
5.3beta1
	Fixed spawned filters with dmulti
	Fixed rebuild_piles.gids from applying rules, unless
	rebuild_rules is used.
	Fixed fault with newgroup for nonexistent groups being refused
	
5.2a2
	Removed debugging lines from log file
	Fixed bug with history file on NT (introduced at beta10)
	Possibly fixed bug with regex crash on 95/nt
	Fixed stat_loop so it gets re-inited correctly.
	Fixed spawned filters with dmulti

5.2aBeta10
	fixed daylight saving error on nt

	New security feature, add to dnews.conf "dns_check true" if set dnews will forward translate any name it looked up using reverse dns lookups and check the number matches the name, if this fails then the name is not used to match against access.conf.  This feature prevents a rogue DNS administrator from getting access to your system, a rare but theoretically possible event.
	Added spam_rej_size (defaults to 32000) which limits how far
thru large ariticles dnews keeps checking form filter.dat phrases, this
improves the spam filter performance particularly when processing binary items
where this checking is pointless.


beta9
	fIXED pause in dfeed

Allowed dnewsewb auto login from url:
	ttp://trek/scripts/dnewsweb.exe?cmd=r_login&user=joe&pass=joe
	Decreased disk fragmentation.

beta8
	Fixed bug in web manager which broke passwords when
	user settings modified.
	fixed bug with replicate true and header_groups which was
	making dnews ignore the replicate true setting for non header_groups.

beta7
	Radius authentication added, dnews.conf settings:
		auth_radius_host 1.2.3.4
		auth_radius_secret fred
		auth_radius_attribute 26
	The secret is the shared secret that you must have defined
	on your radius server, the attribute is optional it is the
	attribute number as defined in your /etc/raddb/dictionary file
	which you want dnews to use as a list of 'usergroups' e.g.
	"adults,private"
	Once you have defined auth_radius_host, and auth_radius_secret
	then dnews will check the radius host for $lookup$ entries
	in access.conf, e.g.
		*:read,post:$lookup$:$lookup$:*

	Also changed spam_dup_hits and spam_dup_cross crc mechanism to
	ignore the last line of the message help avoid abuse from many
	common spam programs.
		
beta6
	Fixed bug with moderated groups posting with readonly servers
beta5
	Fixed bug with specific names in me feed.

5.2abeta2
	Fixed performance problem in dmulti related to incoming feeds..
	Improved performance of dnews with large items, this may also
	solve problems with binary items being droppped.

	If this is set:
		dmgrcgi_access_strict true
	Then users who ahve the rights to add/remove users will only
	be able to remove users that they have added.

5.2
	Added feed type dfeed

	site x.y.z
		to desitnation.name
		type dfeed
		groups *
		log (optional)

	Creates (workarea) x_y_z.log 

	In dnews.conf
		dfeed_debug true (optional)

	Make sure you have dfeed binary
		(nt) \winnt\system32\dfeed.exe
		(unix) /usr/local/dnews/dfeed
	Then start dnews.

	
5.1d
	Made feed masks build faster.
5.1beta9
	Fixed status output for diskuse > 200mb
	Added setting
		approve_authorized true
	If set, then for moderated groups dnews will only
	accept posts if they are from a user who matches the
	moderators email address.
5.1beta8
check rule_n.tmp files are created when rules reject an item.


Modified behaviour of 'cachedall true' in the past if this was true
dnews would try and suck all groups, now it removes the downloading
message but still only tries to suck 'cached' groups, if you really
want dnews to suck all groups do this:
	tellnews cached "*"  10000

Fixed security between dadmin - dnews, still wouldn't recommend
it was used over a non secure wide area link.

Version of dmail extern authentication module that talks to
dnews's 'users.dat' file, http://netwinsite.com/dmail/dnauth.htm
Fixed bug in xmit/fts indexing which caused this error:
	  07 08:35:16: point write corrupt data 245 4748 groupmax 239


beta8
	Fixed bug in drobot (mail gateway) which could result in 
	lost lines from messages.
	Fixed performance problem in chan_read
	Fixed performance problem in db_read
	Changed 'feed' group matching to masks, this will mean that
	@ matching on groups that don't exist won't work, so to restore
	the same behaviour you would need to create the groups then
	delete them but not killgroup them or run purgegroups


	getnames n added ? 
beta7
	Fixed fault in live feeds to improve performance particularly
	when sending binaries.  Fixed out_size setting so it
	works with larger values. (up to 100K) 

	Fixed list newsgroups so it only shows groups the
	user has read access to unless auth_showprot true is set
	
	rebuilt linux libc6 version without profiling linked in, this
	was causing it to completely fail on some versions of linux
	for some reason. 

	Fixed pageup/down buttons in dnewsweb when gaps in group.

5.1

	Added support for sendsys control messages, as dnews doesn't
	have a sys file it generates one from the newsfeeds.conf information.

	Fixed dadmin fault where it couldn't find users with no
	usergroups defined.

	Added to newsfeeds.conf
		site ...
			-to 1.2.3.4
	Allows multiple feeds to the same destination.
	Added to access.conf
		...:area=fred,users=3
	This allows concurrent user limits to apply to multiple lines in
	access.conf
	
	If the workarea contains "upstream.bad" or "upstream.ok"
	then those files will replace this text that is sent to
	a user in the confirmation message when a news item is sent
	upstream. e.g. for upstream.bad
		Dear user, your recent usenet post was NOT sent upstream
		The status returned from the upstream site was:
	This allows the message to be translated to other languages etc..


5.0j
	Fixed dadmin bug, crash if smtp partially defined on menu
	Fixed dadmin shutting down services reliably during installation
	Fixed log rotation if daily rotate used with dmultil
	Added link to dadmin gui on start menu for 95/98 installation.
...
To clear the entire cache.
	tellnews users_clear  
To clear a single entry.
	tellnews users_clearone username 

5.1

	Fixed fault with dmgrsvc on unix dieing

	Added setting uucp_send_mod true, which if set allows incoming
	messages for moderated groups via uucp to be sent to the moderator
	if they are not approved. This should be used if you have a down
	stream site like a bbs which is sendign you stuff for 
	moderated groups, this is unusual :-).

	Fixed channel loop so it doesn't slow down when hit with a single feed and reader
	Made pile expiration based on spool - history*2 - dbi.idx*2 - xover
	Added delay xxx seconds to newsfeeds.conf, this is only
	valid for LIVE feeds, the actual delay will often be up to
	twice 'xxx' seconds but will never be less than 'xxx' seconds.

	Fixed command tellnews backup_groups x.y.* so it actually
	checks the groups match :-) (writes backup.bag)
	Made header groups never send on live feed.
	Mac - fixed loop in index files
Update history for everything I do:
	external filter?
5.0g
	Fixed cpu loop with history file greater than 1.2gig
5.0g (nt)
	Added usergroups to gui
	Added warning on access.conf converstion to gui
	Added new dnewsweb bug fixes.
dmews 5.0f
	Fixed dnewsweb 'new' article count so it isn't reset
	on login.

dnews 5.1a
	nocem filter
	cleanfeed filter
	builtin filter changes
	Added
		nocem_groups news.filters.lists,alt.nocem.misc

	Added checking for @NCM and references	
	made 
		control_rules_only true the defualt.
	Removed nntp_pass passwords from log file.
	Added support for CIDR syntax in access.conf, e.g.

5.0d2
	Made default behaviour to spread news over all disks
	evenly. can be set to not spread by using pile_separate true
dnews5.0d
	Fixed bug where some files are written to pile 0 
	incorrectly when using new piles system.
	Added 
		tellnews pile_move n m
	Where n is the source pile and 'm' is the distination pile, e.g.
		tellnews pile_move 0 1
	Can be used to move the stray items that have gotten into
	pile 0 into pile 1 where they will eventually be expired.
	
dnews 5.0c
	Fixed bug in dadmin gui, which would set suck_batchsize
	to the same as suck_batchn if you modified the suck_batchn
	setting in 'advanced settings'

	Fixed intermittent crash if "post_cancel false" is set

dnewS 5.0b
	Made users.dat case insensitive unless auth_case is 'true'
	however, encrypted passwords in users.dat are still case sensitive.

	Modification to dnews slaves so that they re-read diskuse.dat
	intermittently.

	DMAIL: moved trace in dmail

	Fixed bug that could cause crash if users.dat didn't exist.

	Made some minor additions to output when db files can't
	be written.

	Removed trailing tabs from xover data, this may stop
	Outlook express from crashing (so often :-)

	Made nt_domain accept a list of domains, users can 
	specify the domain they want as user=domain/username

	Fixed bug which allowed a local user to crash the server
	by typing in one particular unusual header, this could only
	happen if the user was intentionally trying to kill it.






