Gated 3.1 Alpha 1 availability

gated-alpha-request at gated-alpha-request at
Thu Jul 1 19:02:20 UTC 1993

Gated 3.1 Alpha 1 is available for anonymous FTP from
as pub/gated/gated-R3_1Alpha_1.tar.Z.

It is also available via e-mail; Send a mail message to
gated-alpha-archive at with a subject line of "send
gated/gated-R3_1Alpha_1.tar.Zus*" or a subject line of "help" for more

And finally Gated is available via Gopher from

If you are reading this message with a MIME-compliant mail reader it
should ask you if you would like to automatically obtain the release
via FTP or e-mail.
-------------- next part --------------

This release has support for route aggregation, but does not yet have
BGP 4.  It is coming soon.


	The ipForwardInfo and ipRouteInfo variables were not being
	reported correctly.  With the MIBs currently implemented they
	should report OID NULL.

	A typo prevented some of the compatiblity routines from being
	compiled in.  Some of the configurations needed updating since
	old routines had not been deleted from the compatibility

	An improperly initialized head pointer would result in a core
	dump if ISO was used.

	When reading a route from the kernel at startup and deciding to
	reject it, make sure an old route actually existed before trying
	to restore it.

	A reject route to net 127 was causing a core dump at startup.

	Protocols with multiple targets per task lead to confusion about
	which target actually set a routing table entry lock bit.  Print
	the bit number to make this information available.

	SunOS 5.* needs to use our version of the install script (or
	/usr/bsd/install if present).

	Added code to use sysctl() instead of nlist() to get values from
	the kernel where possible (BSD 4.4 and BSDI?).

	It was assumed that the interface name was always available
	when updating link level info.  On systems that support the
	interface index in the kernel, using the index is more
	efficient, especially when the interface name is not provided.

	Gated's own random number generator (grand.c) contributed by
	Dennis Ferguson <dennis at>.

	The code to defer send and receive buffer allocation until after
	protocol initialization was not working properly.  Since the
	problem to be fixed by this defering is no longer a factor, send
	and receive buffers will be allocated immediately.

	Task_get_socket() was reporting the socket type incorrectly.

	Restriction on martian networks relaxed a bit, networks with
	RTS_NOADVISE set may be installed in the routing table.  This
	will allow the interface route and 127/255 reject

	Create a static route for 127/255 instead of an aggregate.

	Allow for -cc option to mkdep for systems where it is necessary
	to use a different compiler to generate dependencies.

	Martian list was mondo broken.  Reduce the default list to the
	set of reserved networks listed in RFC 990.  Allow ranges to be
	excluded by used of the `allow' option.  Allow configured
	entries to override default entries.  Isntall Martian networks
	in the routing table, just prevent from being installed into the
	kernel or propagated.

	Put signal names into compatibility library in BSD 4.4
	sys_signames[] format.

	The routing socket interface assumed that an RTM_CHANGE message
	can change a route's flags, it can not.

	Best match lookups in the routing table were not working.  This
	primarily affected OSPF ASE forwarding address lookups.

	Move zero subnet detection from routing table into protocols
	that need this support (RIP v0,1 and HELLO).  This will allow
	gated to function on a system configured with a zero subnet.

	The interface code (if.c) was allocating a socket that was never
	used.  This code was never cleaned up when dynamic interface
	support was added.

	Rt_change() was not reseting the delete indication.

	When flock() is emulated via lockf(), GDC has to open the file
	read-write, or the lock will fail.

	On systems based on BSD 4.3 Reno (and later) supporting
	MSG_TRUNC, protocols (in particular EGP) would ignore packets
	that had been truncated.  Modified core code to explicitly
	report this.

	Reference to a non-existing interface by name could cause a core
	dump after reconfiguration.

	Define INSQUE/REMQUE macros to replace insque/remque routines. 
	It is faster to do it inline, except on a VAX with
	post-processing of the assembler source, there we can define an
	in-line assembler function if need be.

	Avoid calling sethostent() and endhostent() if `noresolv' option
	is specified.  This avoids tickling a bug when the shared
	libraries have been updates with resolver routines supporting
	the nameserver.

	A core dump could occur when an interface is deleted.

	A bug caused all inserts into dest/mask lists to be appends,
	making performance miserable for a large number of networks.

	A route could be lost when adding a duplicate key due to errors
	in the code that sorts them by most specific netmask.

	Allow static routes with subnet masks that might not be accepted by
	the kernel.  They may be useful even though they won't be
	installed on kernels not supporting variable subnets.

	Attempt to function on AIX 3.2 systems when compiled with
	_BSD=44 but running with compat_43=1.  Basically, make some
	assumptions about socket lengths.  The ability for RIP to
	determine which address a packet was destined for will be lost.
	And ISO stuff may not work at all, but that is not standard AIX.

	Enhanced a cleanup routine for EGP-IGP interaction.

	The man pages now indicate a revision date of the last time they
	were checked in.

        A core dump could result when a BGP local address is specified  
        and a status dump is requested.

	Because some BGP implementations occasionally send bogus next
	hops we will simply ignore the next hop instead of the route.

	If EGP was configured off and then back on, it could core dump
	because it incorrectly zeroed the pointer to the data area it
	uses to sort EGP peers for MIB queries.

	Add more checks that actual count of bytes received matches that
	specified in the header.

	Add an awk script and Makefile gunk to build RCS version ids
	into verion.c in such a manner that they can be interpreted by
	RCS' `ident' program and SCCS` `what' program.

	SunOS 5 enforces the requirement to call bind() before
	connect(), even on raw sockets.

	The AS Path code did not allow for an EGP session with the same
	local and remote AS.  In essence, EGP is being used as an igp,
	but that's how BGP was born....


	In some cases a core dump would result from duplicate attempts
	to release a routing table bit.

	With nobroadcast, and a source gateway on the end of a
	point-to-point interface, no updates would be sent to that

	Add RTS_IFSUBNETMASK bit to make it easy to determine which
	routes derrived their subnet mask from the interface when the
	interface netmask changes.  Other fixes for dealing with netmask

	When an interface goes down, delete any routes learned from that
	interface.  HELLO did this, RIP did not.
	RIP will announce *allow* networks, subnets and hosts to full
	version 2 peers.  Aggregate routes default to a single hop.

	RIP & HELLO could sometimes lose track of routes they had in
        A list of routes obtained by RIP & HELLO could be stale before  
        it was used causing a reference to a route that has been
        deleted.  Defer obtaining this list until it is needed.

	RIP and HELLO will not automatically aggregate hosts routes,
	that needs to be done with policy.

	In HELLO and in RIP when masks are not specified, the zero
	subnet is treated as such, not as the network.  If this is not
	wanted, it will have to be rejected via policy.

	Set RTS_IFSUBNETMASK on hostroutes of a subnetted network in
	case the mask changes.


	If there were multiple links to another router, the lowest IP
	address was used instead of the best metric.

	OSPF was not cleaning up after reconfiguration if it was

	ASE LSDB entries were not being freed before reconfiguration.

	Only list P2P OSPF neighbors in a Router Links LSA when the
	neighbor is full.  This allows the use of alternate
        After reconfiguration the router links LSA was not always being
        rebuilt, causing problems when an old one was received from a

	More reconfiguration fixes.

	The forwarding address for ASEs was not being displayed in the
	status dump.

	The forwarding cache was not properly allocating next hop blocks
	resulting in an occasional core dump.

        On an interface with a large MTU (4352), OSPF would dump core
        when tracing was enabled.

	When the metric changed on a non-ASE route, the route entry was
	not updated.

	Responses to OSPF monitor request create task (at most one per
	address/port) with a non-blocking socket for each request.  This
	will prevent monitor requests from hanging gated.

	When OSPF terminated, it didn't release any routes it had been
	announcing, nor did it clean up any entries in the export queue.

	When running in multiple areas, OSPF improperly assigned indexes
	to the lock timers for each area.  The only notable symptom is a
	core dump at shutdown.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/octet-stream
Size: 35 bytes
Desc: not available
URL: <>

More information about the NANOG mailing list