Gated 3.1 Alpha 1 availability
gated-alpha-request at comet.cit.cornell.edu
gated-alpha-request at comet.cit.cornell.edu
Thu Jul 1 19:02:20 UTC 1993
Gated 3.1 Alpha 1 is available for anonymous FTP from gated.cornell.edu
It is also available via e-mail; Send a mail message to
gated-alpha-archive at gated.cornell.edu 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 gated.cornell.edu.
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 ans.net>.
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 127.0.0.1 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
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
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
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....
RIP & HELLO:
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
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
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
Size: 35 bytes
Desc: not available
More information about the NANOG