2012-08-07  ------ inet-2.0.0 released ------

2012-06-25  ------ inet-1.99.5 released ------

2012-06-15  Zoltan Bojthe

	IPv4Address:
	- added a parameter to str() function that allows choosing 
	  between "0.0.0.0" and "<unspec>" when the address is unspecified 
	  (when its value is 0)
	- made the uint32 constructor explicit

	IPvXAddressResolver: resolving netmask if needed
	- added support for 'x.x.x.x/' syntax 
	  (which will return the netmask instead of the ip address)
	- added ADDR_MASK enum (to get the netmask instead of the address)
	- NOTE: netmask resolving is implemented only for IPv4

2012-05-15  Tamas Borbely

	Added DSCP and ECN accessors to IPv4/IPv6ControlInfo.

2012-03-20  ------ inet-1.99.4 released ------

2012-03-04  Zoltan Bojthe

	IPvXAddressResolver::tryResolve() uses a new syntax:
	host
	host(protocol)
	host%interfacename
	host%interfacename(protocol)
	host>destmodule
	host>destmodule(protocol)
	address: host [ { '%' interfacename | '>' destmodule } ] [ '(' protocol ')' ]
	protocol: { 'ipv4' | 'ipv6' | 'routerId' }

2012-02-28  Andras Varga

	'const char*' ctors of IPv4Address/IPv6Address/MACAddress made explicit

2012-02-24  ------ inet-1.99.3 released ------

2012-02-10  Rudolf Hornig

	IPv4Address/IPv6Address: added LL_MANET_ROUTERS (224.0.0.109, FF02::6D),
	used by MANET code [taken from INETMANET]

2012-02-09  Andras Varga

	IPv4/IPv6: added QoS support
	- IPv4: replaced DSCP with TypeOfService
	- IPv6: added Traffic Class to packet and controlInfo

2011-12-15  Tamas Borbely

	IPv6Address: added isSolicitedNodeMulticastAddress() method

2012-02-05  Andras Varga

	IPv6Address: fixed UInt128 conversions (assumed wrong word order);
	comments revised

	The bad Uint128 conversions were added just a few commits earlier.

2012-02-04  Andras Varga

	IPv4Address: keepFirstBits() was bogus, removed; new methods

	keepFirstBits() was actually "keep first 32-n bits"

	New methods:
	- makeNetmask(int)
	- isValidNetmask()

	Use isValidNetmask() in RoutingTable

	IPv4Address,RoutingTable: various fixes.

	Fixed IPv4Address::getNetmaskLength, it couldn't return 1. Fixed
	RoutingTable route validation, it rejected 0.0.0.0/x routes where x is
	not 0.

2011-11-16  Zoltan Bojthe

	int128/uint128: removed IP address and MAC address related functions
	from int128/uint128 classes

2012-01-31  Zoltan Bojthe

	IPvXAddressResolver: bugfix: findRoutingTableOf(), findRoutingTable6Of()
	functions should return NULL if routing table not found

2012-01-27  Zoltan Bojthe

	networklayer/ipv4/contract and networklayer/ipv6/contract merged back to
	networklayer/contract

	Contract is now always available, regardless of feature settings. This
	reduces the amount of ifdefs needed.

2012-01-27  Tamas Borbely

	IPv4: add IPv4Address::isLimitedBroadcastAddress()

2012-01-05  Zoltan Bojthe

	IPv4Address: added AddressCategory enum, getAddressCategory() function

2011-11-18  ------ INET-1.99.2 released ------

2011-11-13  Levente Meszaros, Zoltan Bojthe

	Refactored operator= and copy constructor in all INET classes.
	See base/ChangeLog for details.

2011-08-03  Andras Varga

	IPvXAddress fix: a blank IPvXAddress was not equal to a blank
	IPv6Address

2011-07-24  Andras Varga

	cosmetics

2011-07-24  Andras Varga

	IPvXAddress: added isMulticast()

2011-07-19  Andras Varga

	Use cStringTokenizer and IPvXAddressResolver for parsing.

2011-06-03  Andras Varga

	cosmetics: space usage made somewhat more consistent throughout the code

	Notes:
	- if you have an INET fork and want to compare the code, use the
	 "Ignore spaces" option of your visual diff tool. Most tools have
	 this option; Meld and Araxis Merge certainly do.

	- I used omnetpp/_scripts/tidymodel/spaces.pl, plus some manual tweaks

2011-05-30  ------ INET-1.99.1 released ------

2011-05-27  Andras Varga

	tab-to-space in all source files

2011-05-26  Zoltan Bojthe

	fixing IPv6Address test

	also some include optimisation

2011-05-26  Zoltan Bojthe

	Renamed IP... classes to IPv4... or IPvX...

2011-03-30  Zoltan Bojthe

	#include, code style, strtok -> cStringTokenizer

2011-03-18  Zoltan Bojthe

	correcting #ifdefs

2011-03-03  ------ INET-1.99.0 released ------

2011-03-02  Zoltan Bojthe

	eliminate warnings: comparison between signed and unsigned integers

2011-03-02  Zoltan Bojthe

	change opp_error to throw cRuntimeError

2011-03-01  Zoltan Bojthe

	IPvAddress optimalisation, code styling

2010-11-22  Rudolf Hornig

	Added GlobalARP support (from INETMANET)

2011-02-22  Andras Varga

	Swiched NED documentation comments to explicit hyperlinking of NED
	type names, using tilde. Example: "TCP" was changed to "~TCP"
	wherever the module and not the protocol was meant.

	The reason for the switch was that autolinking produced too many
	false hits (e.g. "TCP connection" and "IP address" would link
	to the TCP and IP modules.)

2011-01-10  Zoltan Bojthe

	Code style changes:

	- tab-to-space conversion
	- '{' to new line
	- too long lines
	- remove trailing whitespace from lines
	- indentation

2010-12-15  Zoltan Bojthe

	(M)IPv6: add constants

2010-12-13  Zoltan Bojthe

	IPv6: extension header in controlinfo

2010-08-05  Andras Varga

	checked in BGPv4 code contributed by Helene Lageber

2010-06-21  Zoltan Bojthe

	indent changes - from Thomas Reschka

2009-12-21  Andras Varga

	minor: improved IPControlInfo/IPv6ControlInfo documentation + added
	getOrigDatagram() method

2009-12-21  Andras Varga

	fix: IPControlInfo and IPv6ControlInfo destructors often crashed on exit
	when trying to delete origDatagram [fix suggested by vire]

2009-12-15  Andras Varga

	IPvXAddress improvements:

	added words() and wordCount() functions bugfix in the equals() function

	Author: Zoltan Bojthe

2009-03-25  ------ INET-20090325 released ------

2008-09-12  Tamas Borbely

	* DLL export IPControlInfo and IPv6ControlInfo.

2008-09-09  Tamas Borbely

	* IPAddress: isLinkLocalMulticast() fixed. It accepted
	  244.0.0.x instead of 224.0.0.x.

2008-07-01  Andras Varga

	* InterfaceTable and associated files moved to new directory common/

2008-06-30  Andras Varga

	* IPAddress: internal representation changed to use a single int32
	instead of unsigned char[4], for more efficient code; several methods
	made inline [code from Ingmar Baumgart, OverSim]

	* parsim: added pack/unpack functions for IPAddress, IPv6Address,
	IPvXAddress

	* InterfaceTable: added deleteInterface()

2008-01-01..2009-03-25  Andras Varga, Rudolf Hornig

	Porting of INET to OMNeT++ 4.0, and some general face lift:
	* better directory structure (names changed to lowercase; moved sources
	  under src/; better names, e.g. networkinterfaces -> linklayer)
	* build system to use a deep makefile
	* updated the C++ code for the 4.0 API (follow name changes; use
	  int64-based simtime_t; use cPacket; etc.)
	* NED files converted to 4.0 syntax
	* make use of new features in NED files (module interfaces, inout
	  gates, @unit, etc.)

2005-10-28  Andras Varga

	* IPControlInfo.msg: added outputPort field

2005-08-04  Andras Varga

	* created Network/Contract/ directory by moving files from
	Network/IPv4/ and Network/IPv6/

2005-07-12  Andras Varga

	* IPAddress, IPv6Address, IPvXAddress: renamed isNull() to
	isUnspecified()

	If you are interested in the early history of the code, change
	to the project root and type

	$ gitk -- Network/IPv4 Network/IPv6 Network/Contract INET/src/networklayer/contract
