[Bugs - still open at this point are now in
	./release/bugs.html - will give all bugs 
	for rleeases 3.5.4 and forward
 	Bugs for release 3.5.4 will be in
	./release/bugs.3_5_4.html]	 


Fixed	[GATED #4]

--- krt_rt_ioctl.c      1995/06/25 02:32:42     1.1
+++ krt_rt_ioctl.c      1995/06/25 02:32:44
@@ -60,6 +60,9 @@
     bzero((caddr_t) & krt, sizeof(krt));
     krt.rt_dst = *sock2unix(dest, (int *) 0);          /* struct copy */
     krt.rt_gateway = *sock2unix(router, (int *) 0);    /* struct copy */
+#ifdef linux
+    krt.rt_genmask = *sock2unix(mask, (int *) 0);
+#endif
     krt.rt_flags = krt_state_to_flags(krtp->krtp_state);
     if (sockishost(dest, mask)) {
        BIT_SET(krt.rt_flags, RTF_HOST);

--- include.h   1995/06/22 09:04:18     1.1
+++ include.h   1995/06/22 09:33:51
@@ -82,7 +82,7 @@
 #include <netinet/in.h>
 #ifdef linux
 #include <bsd/bsd.h>
-#include <linux/in_systm.h>       
+#include <netinet/in_systm.h>       
 #include <bsd/netinet/ip_var.h>   
 #include <bsd/netinet/ip.h>       
 #else /* linux */
--- krt_rt_ioctl.c      1995/06/25 02:32:42     1.1
+++ krt_rt_ioctl.c      1995/06/25 02:32:44
@@ -60,6 +60,9 @@
     bzero((caddr_t) & krt, sizeof(krt));
     krt.rt_dst = *sock2unix(dest, (int *) 0);          /* struct copy */
     krt.rt_gateway = *sock2unix(router, (int *) 0);    /* struct copy */
+#ifdef linux
+    krt.rt_genmask = *sock2unix(mask, (int *) 0);
+#endif
     krt.rt_flags = krt_state_to_flags(krtp->krtp_state);
     if (sockishost(dest, mask)) {
        BIT_SET(krt.rt_flags, RTF_HOST);
--- gdc.c       1995/06/22 15:08:31     1.1
+++ gdc.c       1995/06/22 15:09:10
@@ -380,6 +380,7 @@
     } else {
        syslog(LOG_ERR,
               "%s: %m",
+              gdcprogname,
               buf);
     }
 }

------------------------------------------------------------------------------
	10/13/95	@(SRCDIR)/@(UTILDIR)/install is really weird
	(<n1398544967.97764@globalvillage.com>, "Jon Prall"
	<jon_prall@globalvillag.com>)

------------------------------------------------------------------------------
Fixed	10/17/95	<199510161808.AA218916928@hpindbu.cup.hp.com>
			Kwang-Wei Yao <kwang@hpindbu.cup.hp.com>
	$ diff krt.c krt.c.orig
1286c1286
<     if (BIT_TEST(rtp->rtp_state, RTS_GATEWAY)) {
---
>     if (!BIT_SET(rtp->rtp_state, RTS_GATEWAY)) {

------------------------------------------------------------------------------
Fixed	10/10/95	<199510091730.SAA03441@snowcrash.cymru.net>
			Alan Cox <alan@cymru.net>
	A lot of patches for Linux.

------------------------------------------------------------------------------
Fixed	24/10/95	<9510241850.AA27959@phuong.raleigh.ibm.com>
			Phuong Thanh Nguyen <phuong@raleigh.ibm.com>

*** ospf_init.c.orig    Tue Oct 24 14:31:45 1995
--- ospf_init.c Tue Oct 24 14:35:01 1995
***************
*** 2140,2145 ****
--- 2140,2147 ----

            /* Create the control blocks and fire it up */
            if (BIT_TEST(intf->flags, OSPF_INTFF_ENABLE)) {
+                 if (ospf.intf_offset >= intf->hello_timer)
+                    ospf.intf_offset = 0;
                ospf_interface_init(intf, ospf.intf_offset++);
            }

------------------------------------------------------------------------------
Fixed	25/10/95	<199510250850.JAA05218@sirion.ics.muni.cz>
			Hynek Bures <cd2bcg16@muni.cz>
			<9510252054.AA24317@heavens-gated.raleigh.ibm.com>
			"Acee Lindem" <acee@VNET.IBM.COM>

*** trace.c.orig        Tue Oct 24 13:52:18 1995
--- trace.c     Wed Oct 25 09:42:35 1995
***************
*** 1265,1270 ****
--- 1265,1271 ----
  
        /* Rotate them around */
        trace_rotate(trp->tr_file);
+       file = trp->tr_file->trf_FILE;
      }
  
      trp->tr_file->trf_size += size;

------------------------------------------------------------------------------
	11/7/95		<9511071753.AA13798@mathlab01.unl.edu>
			Rex Dieter <rdieter@mathlab01.unl.edu>
			Errors in html

The error is in comments of the form:
<!-- text here >

which is wrong, which SHOULD be:
<!-- text here -->

------------------------------------------------------------------------------
	11/7/95		<199511071703.AA04995@nyxis.unibase.com>
			Roman Dumych <roman@nyxis.unibase.com>
			gated-R3_5Alpha11 and SVR4 (ESIX) Bug in signal handling

There is a bug in the distributed code in the signal handling on SVR4.  The
signal is being reset to the task_receive_signal BEFORE the signal is processed.
This causes an infinite signal loop on my system. To fix it move the sigset
call from task_receive_signal (approx. line 3054) to the end of the
processing loop (approx. line 3300 just before SIGNAL_LIST_END) in 
task_process_signal. This ensures that the cause of the signal is cleared
before it's handler is reset to task_receive_signal.

------------------------------------------------------------------------------
	11/9/95		<199511090256.SAA12855@owl.pooh.com>
			Bruce Robertson <bruce@greatbasin.net>
			still having problems with multicast in OSPF 

This patch may help those having trouble with multicast in OSPF.  I
just figured this out last night.  Disclaimer: this works for BSD/OS
version 2.0.1.  I don't know what else it might break, or if it's
correct for all systems.
------------------------------------------------------------------------------
Fixed	11/13/95	<199511110149.AA232124569@hpindbu.cup.hp.com>
			[GATED #19] Tracing options for OSPF
			Kwang-Wei Yao <kwang@hpindbu.cup.hp.com>

The tracing options for the OSPF protocol from the gated configuration
document allow the users to specify many options.  But if you check the 
source code, only the first two of the options are implemented, which are
lasbuild and spf.  I'd like to know whether you plan to add source code 
to support all the trace options or change the document? and when?

------------------------------------------------------------------------------
Fixed	11/20/95	<9511210105.AA23055@heavens-gated.raleigh.ibm.com>
			Couple of Fixes
			"Acee Lindem" <acee@VNET.IBM.COM>

The first fix is necessary since ospf.intf_offset increases every time an
interface goes up and down. Phuong Nguyen offered a fix as well but this one
is more consistent with way it was fixed for the hello timer and adjacency
timer.
------------------------------------------------------------------------------
Fixed	11/22/95	Acee Lindem <acee@VNET.IBM.COM>
			Re: Gated crashing (3.5 Alpha 11)
			<9511221801.AA16842@heavens-gated.raleigh.ibm.com>

It appears that your sockaddr's are getting corrupted. Perhaps,
extending the buffer for temporary sockaddr's will fix the problem.
If it is the problem, then SOCK_BUF_PAGES should be added to the
config process.
------------------------------------------------------------------------------
Fixed	11/29/95	"John M. Zwiebel" <jzwiebel@cisco.com>
			<199511280738.XAA07660@media1-ss5.cisco.com>
			gated R5 dumps core

The line marked <<<< will cause gated to core dump when the indicated 
command is issued.  I'm trying to configure the ospf so gated will learn
OSPF routes but will not advertise itself as a gateway.  
A network command of ' 171.69.214 masklen 23 restrict ' doesn't cause the
daemon to die, but it still advertises routes.

	Line 2416 in parser.y, $3 can be NULL.
------------------------------------------------------------------------------
Fixed	11/30/95	<rwoundy@VNET.IBM.COM>
			<19951130.210427.RWOUNDY@RHQVM21>
			Addr: missing sockaddr fix in gated-R3_5Beta_1

Folks,

I thought that Jeff Honig submitted the following fix
for string sockaddrs.  Maybe Acee's recent sock_buf fix
accidentally "stepped" on it...
------------------------------------------------------------------------------
Fixed	11/30/95	<rwoundy@VNET.IBM.COM>
			<19951130.212833.RWOUNDY@RHQVM21>
			Addr: kernel remnant fix for gated-R3_5Beta_1

I spotted the following bug with kernel remnants, introduced
in 3.5 alpha 11.  Acee (in independent testing) found that
it eliminated warning messages about remnants for point-to-point
interfaces. I have ported the fix to the new beta...
------------------------------------------------------------------------------
Fixed	11/30/95	<rwoundy@VNET.IBM.COM>
			<19951130.224148.RWOUNDY@RHQVM21>
			Addr: efficiency improvement for ipForwardNumber

The following code (diffed against gated-R3_5Beta_1) can allow
gated to respond much more efficiently to a request for the size
of the IP forwarding table.  The old code in o_rt_lookup() and
o_ip_route_match() counts the number of active routes as each SNMP
request is received; the new code uses a pre-existing counter
in the (predominate) case when only one gateway is installed in
the kernel per destination.
------------------------------------------------------------------------------
Fixed	11/30/95	<rwoundy@VNET.IBM.COM>
			Addr: concern about gated-R3_5Beta_1/aspath.c
			<19951201.175113.RWOUNDY@RHQVM21>

I am not a BGP expert (and I don't play one on TV) but I am
concerned that not all cases of AS_PATH attributes are handled
correctly in aspath_attr() in gated-R3_5Beta_1/aspath.c.
------------------------------------------------------------------------------
Fixed	01/12/95	<rwoundy@VNET.IBM.COM>
			<19951201.204716.RWOUNDY@RHQVM21>
			Addr: aspath.c and generate routes - gated-R3_5Beta_1

I have included diffs below with the AS_PATH SEQUENCE fix
by Dennis (already in alpha 11), and fixes for "generate" routes in
aspath_aggregate_changed().  Without these fixes, generated
defaults may not be exportable to certain protocols (BGP),
and may result in gated cores.
------------------------------------------------------------------------------
Fixed   01/12/95	<rwoundy@VNET.IBM.COM>
			<19951201.213418.RWOUNDY@RHQVM21>
			Addr: rt_aggregate.c and more generate/aggregate fixes

The first fix ensures that generated routes with no contributors
are treated as if they have no gateways (for correct deletion).

The second fix ensures that the new AS_PATH is not considered
when a contributor is removed from an aggregate.  The third
fix ensures that the old AS_PATH is not considered when a
contributor is added to an aggregate.
------------------------------------------------------------------------------
Fixed	04/12/95	Javier Achirica <achirica@uva.es>
			<199512041642.RAA25155@simancas.cpd.uva.es>
			Problem in SNMP

        Gated (up to 3_5Beta_1) crashes when querying the ipForward SNMP
table a reject route is found. I traced the problem to rt_mib.c and to solve
the problem and to keep the answer consistent with the ipRouteTable this
changes should be made:
------------------------------------------------------------------------------
	12/13/95	"Acee Lindem" <acee@raleigh.ibm.com>
			<9512130245.AA16105@heavens-gated.raleigh.ibm.com>
			Re: OSPF and gated 

I should be more explicit here.  IPTOS_PREC_INTERNETCONTROL is 
defined in netinet/ip.h but is not supported on setsockopt
for the raw OSPF socket. You could #ifdef around it in ospf_init.c
or simply ignore the message.
------------------------------------------------------------------------------
	12/08/95	Kwang-Wei Yao <kwang@hpindbu.cup.hp.com>
			<199512082315.AA041184536@hpindbu.cup.hp.com>
			gated and SIGHUP

I sent gated a SIGHUP signal to force gated to re-read the configuration.
I noticed that the reconfiguration will cause the trace activitity to
halt.  GateD is still running, but you won't see any more trace info.
This is very easy to duplicate.  The command I used is:
------------------------------------------------------------------------------
	11/09/95	Thomas Pusateri <pusateri@netedge.com>
			<9511091400.AA18415@NetEdge.COM>
			Re: still having problems with multicast in OSPF 

The best way to fix this problem is fixing the INADDR_TO_IFP() macro
in netinet/in_var.h and recompiling the kernel. Then it will correctly
use the destination side of a p2p link when joining multicast groups.
It will also allow you to have as many p2p links as you want,
all using the same local address.
------------------------------------------------------------------------------
	12/15/95	lpj@merit.edu

When using traceoptions on a specific proto i lose the general
flags.
------------------------------------------------------------------------------
	12/18/95	lpj@merit.edu

DVMRP times out its own interfaces if gated is too busy. Tom P. thinks
it is the same for all protocols in Gated.
------------------------------------------------------------------------------
Fixed	12/19/95	Kwang-Wei Yao <kwang@hpindbu.cup.hp.com>
			<199512191858.AA218579498@hpindbu.cup.hp.com>
			HPUX and GateD R3_5Beta_2

I have ported the version gated-R3_5Beta_2 to HPUX and noticed that
the variable subnet mask functionality is no longer working.  The fix
is to move the HP code after the struct krt is initialized to 0
in krt_rt_ioctl.c
Also, when do you plan to update the gated configuration on the OSPF 
protocol section.  In addition to the problem I reported on the OSPF 
trace options, I found the following statements inconsistent.
This is on OSPF again:
------------------------------------------------------------------------------
	12/20/95	Thomas Neumann <tom@smart.ruhr.de>
			[GATED #51] Gated 3.5 Beta-2 fails to compile on DELL
			SYSVR4
			<95Dec20.223618met.289-1+9@smart.ruhr.de>

Argl...stupid me, I should have seen this myself. Thanks!
Maybe this should also be corrected in "configs/svr4" where
I got it from. Here's my new "Config" that finally gave me
...
------------------------------------------------------------------------------
	01/03/95	"Acee Lindem" <acee@raleigh.ibm.com>
			Re: RIP switch to RIP-V2 (by itself) 
			<9601022018.AA18752@heavens-gated.raleigh.ibm.com>
			<9601022054.AA19798@heavens-gated.raleigh.ibm.com>

Actually, it is not switching to RIP V2. Rather, it has unnecessarily
registered the RIP V2
local-wire multicast address (224.0.0.9) on the interface. I'd call
this a bug and would 
suggest the fix below. 
------------------------------------------------------------------------------
	01/03/95 	dac@netstar.com
			Re: Previous Fix for RIP-V2 Multicast - C Coding Style
			<9601030019.AA03384@windmill>

Adding the configuration that you suggested fixes the symptom.  Do you
have an idea about how to fix the problem?
> > It looks like gated runs for about 5 minutes and then stops sending
> > route information.
> That's strange. Try adding the following to the configuration in case there
> is some bug in the passive interface code. 
> interfaces { interface all passive; };
> If that doesn't change anything I guess we'll need a GateD trace with
> everything traced. 
------------------------------------------------------------------------------
Fixed	01/11/96	"Acee Lindem" <acee@raleigh.ibm.com>
			Fix to bgp_mib.c
			<9601102341.AA20593@heavens-gated.raleigh.ibm.com>

Here is a quick one which fixes a problem with an SNMP get-next accessing
the bgpPeerTable. The cached entry is not necessarily the correct one for
a get-next if the new BGP peers are added - hence, the cache must be
cleared. I also removed a superfluous if clause. 
------------------------------------------------------------------------------
Fixed	01/12/96	<rwoundy@VNET.IBM.COM>
			Addr: A fix for aspath refcounts and aggregate/generate
			routes
			<19960112.095231.RWOUNDY@RHQVM21>

The following fix corrects the one case in which the function
aspath_do_aggregation() does not increment the refcount of the
aspath that it returns. Note that the only routine that calls
this function, rt_aggregate_flash(), will always decrement the
refcount of any aspath returned from aspath_do_aggregation().
Once the aspath refcount is wrong, an eventual flush of routes
will cause a certain core dump.
------------------------------------------------------------------------------
Fixed	01/12/96 	<rwoundy@VNET.IBM.COM>
			Addr: Fixes for OSPF loops with SUM_NETs, SUM_ASBs, and
			ASEs
			<19960112.094555.RWOUNDY@RHQVM21>

The following fixes ensure that the lsdb_border pointer is
cleared for SUM_NETs, SUM_ASBs, and ASEs when the ABR/ASBR
is not "active".  Otherwise, inactive ABR/ASBRs can be freed
and re-allocated to other ABR/ASBRs, which can easily cause
routing loops. In addition, since the lsdb_route and lsdb_ab_rtr
pointers are unioned, an lsdb with a route may be confused
for an active ABR and cause a core.
------------------------------------------------------------------------------
Fixed	01/12/96	<rwoundy@VNET.IBM.COM>
			Addr: A fix for potential reconfig core for
			aggregate/generate routes
			<19960112.101140.RWOUNDY@RHQVM21>

The rt_aggregate_rtparms structure is shared by the rt_aggregate_flash()
and rt_aggregate_reinit() routines to add aggregate/generate routes.
The structure is initialized in rt_aggregate_init(), which is only
called from rt_family_init(), which is called only once at startup.
If there are stale rt_routers in the structure (and rt_n_gw > 0),
then a new aggregate/generate route at reconfig time can cause a
gated core.
The fix is to clear the structure on each call to rt_aggregate_reinit()
(i.e. at startup and each reconfig). One might consider removing the
structure initialization out of rt_aggregate_init(), but I didn't.
------------------------------------------------------------------------------
Fixed	01/12/96	<rwoundy@VNET.IBM.COM>
			Addr: Fixes for minor OSPF trace bugs
			<19960112.102706.RWOUNDY@RHQVM21>

Here are some simple OSPF trace fixes. ospf_rt.c:861 ospf_tqhandle.c:545
------------------------------------------------------------------------------
Fixed	01/12/96	<rwoundy@VNET.IBM.COM>
			Addr: A re-submission of the kernel remnant bugs
			<19960112.103201.RWOUNDY@RHQVM21>

These bug fixes didn't quite make it into Beta 2 (although the
CHANGES indicates that it did). Oh well.
krt.c:1283 krt_rt_sock.c:429
------------------------------------------------------------------------------
Fixed	01/12/96	<rwoundy@VNET.IBM.COM>
			Addr: A minor discrepancy with icmp_recv()
			<19960112.103904.RWOUNDY@RHQVM21>

I noticed that the alpha11 code for icmp_recv seems a
little more careful about ensuring that the task_recv_dstaddr
is valid (i.e. not 0.0.0.0) than beta2. Is there something I'm
missing here?
------------------------------------------------------------------------------






