2000/03/14      engin
        * src/refer.pl: A correction has been done: With -V option
        (for passing client version and client IP
        address to the server) the real IP address
        used to get lost when multiple referrals are
        done in a row. This has been fixed.
        
2000/02/28      marek
        * Makefile.config: version++
        
2000/02/17      marek
        * src/addkey.pl: modified the overflow file handling for smaller use 
	  of memory
        * src/rconf.pl: removed end-of-line from regexp for QUERYLOOPLIMIT
        * src/whoisd.pl: truncating input to 255 to prevent buffer overflow 
	  exploits
        
2000/01/28      marek
        * src/cross-misc.pl: now adding sender to cross-notifications
        
2000/01/19      engin
        * src/whoisd.pl: Fixed a bug with the -V query option.
        
1999/12/17      marek
        * src/whoisd.pl: Fixed networkupdate bug introduced recently
        
1999/11/16      engin
        * etc/ripedb.config-dist: Support for a new type of referral is added : 
	CLIENTADDRESS.
        New variables: DENYREFERRALTXT, DENYACCESSTHRUREFERRALTXT,
        AUTHORIZEDFORREFERRAL.
        * src/rconf.pl: Added a new type of referral, CLIENTADDRESS. With this
        new type, the server will send the IP address of the
        actual client to the referred server.
        * src/refer.pl: Added a new type of referral, CLIENTADDRESS. With this
        new type, the server will send the IP address of the
        actual client to the referred server.
        * src/syntax.pl: Added a new type of referral, CLIENTADDRESS. With this
        new type, the server will send the IP address of the
        actual client to the referred server.
        * src/whoisd.pl: Added support for a new type of referral mechanism, 
	CLIENTADDRESS.
        With this new type, the server will send the IP address of the
        actual client to the referred server.
        
1999/10/27      marek
        * etc/ripedb.config-dist: Example values of WHOISDSTAT, QUERYLOOPLIMIT, 
	QUERYLOOPTXT
        * src/rconf.pl: Introduced some debugging functionality:
        WHOISDSTAT - creation of files describing the activity of
        whoisd query processes. Those are normally deleted if the whoisd
        exits the normal way. WHOISDSTAT is a base filename for those files.
        
        .. and some limitation on bad clients:
        QUERYLOOPLIMIT defines a limit for '-k' connections. If more than so 
	many queries for the same search term are detected, QUERYLOOPTXT 
	is printed and the connection is closed. Mainly meant to protect 
	against ptraceroute parsing broken as-macros.
        
        ...and fixed bugs in whoisd:
        * the text for DENIED connection was mistakenly printed on STDOUT
        * timeout handler would wait infinitely to print a msg about closing
        the connection. Now an alarm has been set up to stop it, the message
        can be printed to WHOISDSTAT file if active.
        * src/whoisd.pl: Introduced some debugging functionality:
        WHOISDSTAT - creation of files describing the activity of
        whoisd query processes. Those are normally deleted if the whoisd
        exits the normal way. WHOISDSTAT is a base filename for those files.
        

1999/10/05	marek
	* addkey.pl: performance tuning: turned splits and joins into a regexp 
	substitution
	* handle.pl: Fixed the Monte Carlo :-) algorithm
	* rconf.pl: Added options for setting internal buffer sizes during 
	reindexing: MAXLISTLENGTH and MAXSTRINGCOMPONENTS.
	* whoisd.pl: Added a 3 seconds delay before denied connections are
	dropped.
	
1999/08/23	marek
	* maintainer.pl: bugfix: auth bug in test mode updates (-T)
	* misc.pl: bugfix: setpriority did not work (bad argument)
	* net2net.pl: bugfix: a range in class A ending with ?.?.?.0 would 
	be changed to ?.255.255.255. Also fixed /32 ranges (beginning=end).
	* syntax.pl: bugfix: if invoked with wrong uid, dbupdate would
	fail silently without any trace in logs (which it doesn't have
	rights to write to) or stderr. Now it prints a message on stderr
	and exits 75.
	
1999/08/13	engin
	* misc.pl: In the inet6num objects, extra zeros are added
	on the left of words to enhance readability.
	For example, 2001:60:0:5::/96 becomes
	2001:0060:0:0005::/96 in the fullipv6formatprefix subroutine.
	
1999/06/03	roman
	* encmp.pl: added comparison with ignoring multiple whitespaces
	(compressing them to single one before comparison)
	* dbadd.pl: changed calling sequence for encmp when adding a nic
	handle to a person object.
	
1999/05/31	roman
	* whoisd.pl: better handling of logging of -i option values
	
1999/05/20	marek
	* rconf.pl,syntax.pl: added ALLOCMNT config attribute to allow building 
	a list of mntners whose inetnums can have status ALLOCATED (*ERROR*
	from syntax check otherwise). Status ALLOCATED can be set with
	the override password by the admins.
	
1999/05/17	marek
	* syntax.pl: rejecting the robot's e-mail in attributes
	taking e-mail addresses. 
	
1999/05/17	engin
	
	* enparse.pl,syntax.pl,i6.pl: New syntax for inet6num object introduced,
	with status field generated. inet6num objects can be only from global 
	unicast address block.
	
1999/03/19	marek
	* syntax.pl: added checks on regexp in MAIL-FROM to syntax.pl, so that
	a whitespace in MAIL-FROM regexp results in a warning and empty 
	regexps are rejected.
	
1999/03/18	marek
	* syntax.pl: added INCLUDE attribute to rconf.pl.
	* newdb.pl: cleaned/fixed to understand multiple config files.
	
1999/03/12	engin
	* hiermnt.pl, syntax.pl: The attribute 'mnt-lower:' added to inet6-num
	object. It is a mandatory attribute for this object type.
	
Mon Feb 22 18:39:40 1999  Janne Snabb  <snabb@ripe.net>

	* newdb.pl: some bug fixes for newdb -a.

Mon Feb 22 13:19:35 1999  Janne Snabb  <snabb@ripe.net>

	* rconf.pl: Changed regexp's to allow whitespace before
	end-of-line for GETUPDATESFROM, DENYWHOISACCESS and
	WHOISUPDFROM.

Tue Feb 16 18:05:12 1999  Janne Snabb  <snabb@ripe.fi>

	* whoisd.pl, rconf.pl: Added support for BINDADDR and BINDPORT
	configuration file definitions to support binding to non-default
	addresses/ports.

1999/02/02      marek
        * defines.pl: fixed msgs containing variables (like $HUMAILBOX)

1999/01/12      roman

	* (many files): -b flag added for activation of the debugging printout 

Mon Jan 11 14:13:48 1999  Roman Karpiuk  <roman@x43.ripe.net>

	* whoisd.pl (dowhoislookup): initialisation of timer for queries
	moved out of the loop.

Mon Jan 11 00:00:10 1999  Roman Karpiuk  <roman@x43.ripe.net>

	* syntax.pl (requiredsyntaxcheck): return error when source
	attribute not present.

Sun Jan 10 23:21:01 1999  Roman Karpiuk  <roman@x43.ripe.net>

	* refer.pl (has_refer): new variable added to contain predefined
	error messages. If inverse lookup - pass domain name of the object
	containing referral. Don't pass -F option to RIPE type servers.
	Pass -r option to RIPE type servers if it was originally present
	or we process inverse lookup. Do not treat RIPE servers in any
	special way when parsing response - just dump it to output.
	Timeout on reading from remote server added. Limit on sizeof the
	response added together with appropriate error message. Indicate
	the end of remote server response with separate configurable text.

	* rconf.pl (rconf): Handling of new configuratiion variables
	added: REFERRALTRUNCTXT, REFERRALENDTXT, REFERRALMAXLINES

	* misc.pl (ReplaceGlobalVars): new variable to be expanded added:
	REFERQUERY. 

	* encmp.pl (encmp): new argument adde to encmp subroutine to
	suppress comparison of some attribute values.

	* whoisd.pl: new option added: -b  produces a lot of debugging
	output  allows separation fron normal verbose output.
	* dpr.pl: new subroutine print_message_with_caller_info added. dpr
	only prints a message when option -b is given (debug). vpr prints
	message when verbose option set.

	* dbadd.pl (finalchecksandupdate): code added to allow change of
	person name without explicit deletion and recreation (only when
	object contains nic handle). Not activated yet.

Wed Jan  6 15:03:04 1999  Roman Karpiuk  <roman@x43.ripe.net>

	* syntax.pl (dosyntax): added check for nic handle being AUTO# and
 	return syntax error with descriptive message when it is.

Wed Jan  6 12:43:03 1999  Roman Karpiuk  <roman@x43.ripe.net>

	* syntax.pl (dosyntax): error message improved for ac, ah, tc, zc
 	check.

	* refer.pl (has_refer): blank line added to output between remote
	header text and the rest of the answer.

	* processdata.pl (processdata): override integrity checks
	mechanism. Bug fix for subject line keyword parsing.

	* hiermnt.pl (AuthorizeDomain): return $E_HIER_AUTHFAIL instead of
 	setting variable which was never checked when trying to create top
 	level domain. Return $O_OK instead of $E_HIER_AUTHFAIL when higher
	level domain not found.

	* defines.pl: $OVERRIDEINTEGRITY constant added.

	* src/dbopen.pl (dbopen): lock contention and time spent waiting
	for lock are logged in audit log.

	* src/dbadd.pl (finalchackandupdate, dbadd): override integrity
 	checks mechanism. Calls to dpr commented out.

	* src/addkey.pl (addkey): timing added to deletion of offset from an
	overflow file. Processing time is loged if it exceeds 5 seconds.

Tue Dec  1 00:00:00 1998  Roman Karpiuk  <roman@x43.ripe.net>
	
	* Almost all files. A lot of changes which formed 'the new
 	release' 2.2 Among others: referential integrity checking,
 	referral mechanism, PGP suppport (described in Janne's earlier
 	entries), subject line parsing etc. Basically everything up to and
 	including CVS 'rk1-merged' tag.

Tue Oct 20 16:25:30 1998  Janne Snabb  <snabb@ripe.net>

	* Makefile.config, etc/attr-desc.config, etc/objs-desc.config,
	etc/ripedb.config-dist, Makefile.in, dbadd.pl, enparse.pl,
	maintainer.pl, pgp.pl, processdata.pl, rconf.pl, syntax.pl,
	template.pl: Added PGP authentication support.

	* adderror.pl: Don't add undef warnings (i.e. empty warning
	lines)

Tue Oct 20 14:47:44 1998  Janne Snabb  <snabb@ripe.net>

	* syncdb.pl: completed support for -p <portno> option
	in syncdb. It was only half-implemented.

	* pgpdata2ring.pl: Made a simple script for converting an
	existing DB key-certificate data file to a file with all
	the keys in it in normal PGP ASCII armored format. It can
	be used to import key-certificates to PGP key ring if for
	example key ring gets corrupted at some point or if setting
	up a mirror.

Mon Oct 19 14:08:34 1998  Janne Snabb  <snabb@ripe.net>

	* whoisd.pl: added setting of "real" user & group ids in
	addition to setting the efective ones. This is allows
	killing the server by UID in SYSV'ish machines (signal
	authentication is different from BSD) and should also
	prevent changing back to root if someone is able to crack
	to shell through whoisd.

	* whoisd.pl: replaced extremely non-portable 
	ioctl(.., XXX, ..) call with POSIX::setsid(). XXX was 
	hard-coded as TIOCNOTTY value from BSDI system header-files.

Thu Oct  1 16:10:52 1998  Janne Snabb  <snabb@ripe.net>

	* syntax.pl: change the parsing of date in "changed:"
	and "withdrawn:" so that entering a date in invalid format
	results in proper error message, instead of complaining about
	invalid e-mail address. (Fixed bug 1998-1)

Mon Sep 28 19:12:51 1998  Janne Snabb  <snabb@ripe.net>

	* syntax.pl: made some "as-in:" and "as-out:" error messages
	more descriptive -- now they print the complete offending entry
	instead of some partially parsed values. (Fixed bug 1998-45)

	* syntax.pl, misc.pl: Previously the word "brackets" meant
	symbols "{}" and "braces" meant the symbols "()". As far
	as I know, these terms are not exactly correct, and it
	seems that the implementor wasn't even quite sure about
	them, as they were mixed up in some places. I changed the
	error messages and subroutine names so that they are now
	consistent: braces = "{}", parenthes = "()" and
	brackets = "[]".

	* syntax.pl: some typo fixes in error messages (neigbor ->
	neighbour etc.)

Mon Sep 28 16:42:50 1998  Janne Snabb  <snabb@ripe.net>

	* whoisd.pl: added support for specifying option arguments
	with no intervening space. (for example "-Tinetnum
	193.166.28.1" works now) (Fixed bug 1998-2)

Thu Sep 24 18:13:52 1998  Janne Snabb  <snabb@ripe.net>

	* enparse.pl: fixed line-continuation problem (bug ID 1998-38),
	which caused attributes with continuation lines to eat up
	some lines from previous attributes. Commented out also some
	redundant and confusing code.

Thu Sep 24 16:23:11 1998  Janne Snabb  <snabb@ripe.net>

	* cross-notify.pl: changed sub add_cross_notify to
	return an empty list instead of undef (which is a list
	with one undef value) if there is no need to send mail
	about cross-notifications. This prevents obscure error
	messages "sh: syntax error at line 1: `end of file' unexpected",
	which were printed in sub send_cross_notifications when it
	tries to exec $MAILCMD with stdin redirected from file named
	(undef) (i.e. empty string).

Wed Sep 23 15:57:32 1998  Janne Snabb  <snabb@ripe.net>

	* dbadd.pl, internicstats2inetnums.pl, misc.pl, rconf.pl,
	syntax.pl, whoisd.pl: Many y2k fixes. Now "changed:" &
	"withdrawn:" dates are always converted to YYYYMMDD format
	when importing them. (Fixed bug 1998-31)

	Please notice that the log files are now also written with
	8 digit dates, which means that some changes might be needed
	in the support scripts.

Mon Nov 10 11:58:23 1997  Chris Fletcher  <chris@ripe.net>

	* src/net2net.pl (quad2int): fixed following
	with inc/dec kludge.
	
 * >If you send in an update of a route object in the classful
 * >net notation (e.g. 193.0.0.0) instead of the classless
 * >representation, you will get a warning message indicating
 * >that the route was rewritten to 127.255.255.255/24.
 * >You should find that you can lookup the original 
 * >route object in the database.  You should also find
 * >that you cannot lookup the new spurious route object,
 * >127.255.255.255\24.


