2007-01-05  Tobias Becker  <tobiasb@isdn4linux.de>

        * tools.h, tools.c (iprintf, il_printf): Renamed iprintf to
	il_printf because of the integer printf function iprintf in the
	newlib C library.

	* tools.h: Replaced linux by __linux as condition for inclusion
	of <sys/kd.h> and <linux/isdn.h>.  Set ISDN_MSNLEN to 32 if
	<linux/isdn.h> is unavailable.

	* telnum.c (stpcpy): Added this non IEEE 1003.1 function if
	_NEWLIB_VERSION is defined and indicates the newlib C library.

2006-02-05  Tobias Becker  <tobiasb@isdn4linux.de>

	* rate.c (initRate, appendArea, get_area1): Remember federal zone for
	each provider.  The federal or default domestic zone is defined by
	+49 or DE as area for Germany e.g.  Only with the federal zone as
	current zone, a query of the zone database with getZone takes place.
	This restriction is necessary due to the present zone-de-dtag.cdb
	which gives results for non geographic area codes like +4932 that
	would overrule a dedicated zone otherwise.

2005-02-23  Tobias Becker  <tobiasb@isdn4linux.de>

	* rate_skip.c, rate_skip.h: This implements the new feature of
	provider skipping.  For end user information there is a new
	manual page rate.conf(5), the interface is described in rate_skip.c.

	* rate.c (initRate): Call add_skipped_provider for Q: tags in
	rate.conf.  Moved parsing of P: tag from rate-file to new function
	parse_P.  Added provider skipping for rate-file reading and parsing.

	* tools.h (CONF_ENT_SKIPPROV): New constant for name of skipProv
	entry in parameter file.

2005-01-12  Tobias Becker  <tobiasb@isdn4linux.de>

	* dest.c (getDest): Do not shorten the given number to less than one
	character while searching for destination database entries.  This
	fixes wrong output like "+8 => +852 17 - Hong Kong Mobilfunk (HK) ..."
	for "isdnrate -N +8".

	* tools.c (vnum): The call of normalizeNumber may return UNKNOWN,
	if there is no entry found in the destination database at all.  This
	occurs for example for an incomplete countrycode like +8.  If this
	happens, "+8" is not stored to the TELNUM number and as a result, the
	string returned by vnum did not contain any information about +8.
	Now the unformatted number from call[chan].num[who] is copied in this
	case.  Revealed by "isdnlog -22 ..." and dialing digit per digit.

2005-01-02  Tobias Becker  <tobiasb@isdn4linux.de>

	* rate.h (getSpecialLen): New rate data query function like getSpecial.
	* rate.c (getSpecialLen, findSpecial): New functions, getSpecialLen is
	public and returns count of matching digits.  findSpecial is non public
	and sets matching indices for the Service array.  Both find the same
	special number as getSpecial does.

	* tools.c (vnum): Improved result for special numbers.  The service
	name from the S: tag in the ratefile is appended to the special number
	if no alias is defined.  Special numbers are now structered 012-34
	instead of the former 012 - 34.

	* tools.c (vnum): Fixed special number splitting to .vorwahl and
	.rufnummer.  The first digit for rufnummer is no longer discarded.

2004-12-18  TObias Becker  <tobiasb@isdn4linux.de>

	* isdnrate.c (printTable): If verbose (-v) is specified, show used
	date with type of day in table mode (-T).

2004-11-09  Tobias Becker  <tobiasb@isdn4linux.de>

	* telnum.h (TN_MAX_AREA_LEN): Increased length of area code from 10
	to 16.  This allows correct processing of long special numbers, which
	are stored entirely in .area of a TELNUM.

2004-10-04  Tobias Becker  <tobiasb@isdn4linux.de>

	* holiday.c (isDay): Removed restriction that workday (W) must not be
	holiday (H) too.  See rate-files(5) for order of priority.

2004-09-29  Tobias Becker  <tobiasb@isdn4linux.de>

        * tools.h (ignoreCLIP): New global variable, similiar ignoreCOLP.

2004-09-27  Tobias Becker  <tobiasb@isdn4linux.de>

	* isdnrate.c (printTable): Check provider and price (new) when
	comparing provider rankings.

2004-09-07  Tobias Becker  <tobiasb@isdn4linux.de>

	* isdnrate.c (Provider): Rewrote function, returned string has
	now always the length WIDTH.  The providername is truncated if
	necessary. 

	* isdnrate.c (printTable): Allow the first provider in ratefile
	(prefix=0) to appear in first hour range of day without producing
	wrong output.

	* isdnrate.c (printTable): Compare all providers, not only the best
	one when computing hour ranges in table mode (-T).

	* isdnrate.c (printTable): Display hour range ending at midnight
	as ".. 23:59" instead of ".. -1:59".

	* isdnrate.c (printTable): Replaced double2str by printRate, so
	U: tag from ratefile is also used in table mode.

	* isdnrate.c (print_header): Do not print date in table mode.

2004-09-05  Tobias Becker  <tobiasb@isdn4linux.de>

	* tools.h (CONF_ENT_IGNOREUPD): New entry "IGNOREUPD" in parameter
	file of isdnlog, entry name defined here.

2004-08-25  Tobias Becker  <tobiasb@isdn4linux.de>

	* rate.c (initRate, get_area1): Put a minimal statement after label
	at end of block.

2004-07-24  Tobias Becker  <tobiasb@isdn4linux.de>

	* isdnconf.c (Set_Globals): Store `REPOTIONS' config file entry to
	global variable isdnrep_defopts.
	* tools.h: Added definitions for `REPOTIONS' and isdnrep_defopts.

	* ChangeLog: Started this file.
