[quagga-dev 2608] Re: [quagga-users 3861] Re: OSPF: Ignoring packet from x.y.areceivedoninterface that is down [eth0]

Andrew J. Schorr aschorr at telemetry-investments.com
Wed Feb 2 13:05:29 GMT 2005


Peter,

On Wed, Feb 02, 2005 at 09:43:14AM -0800, Peter Kranz wrote:
> I had corrupted the last line of the patch file.. here are the results with
> your change.. all is working properly again..
> 
> 2005/02/02 09:38:25 OSPF: Warning: packet from [x] received on interface
> that is down [eth1]; interface flags are   <UP,BROADCAST,RUNNING,MULTICAST>
> 2005/02/02 09:38:25 OSPF: DR-Election[1st]: Backup x
> 2005/02/02 09:38:25 OSPF: DR-Election[1st]: DR     y
> 2005/02/02 09:38:25 OSPF: Packet[DD]: Neighbor z: Initial DBD from Slave,
> ignoring.
> 2005/02/02 09:38:25 OSPF: Packet[DD]: Neighbor z Negotiation done (Master).
> 2005/02/02 09:38:26 OSPF: nsm_change_state(z, Exchange -> Full): scheduling
> new router-LSA origination

Thanks for debugging this.  I think I see the problem now.  It appears
to be a stupid case of testing for ISM_InterfaceDown instead of ISM_Down.
I think the attached patch (to be applied to the freshly untarred distro)
should fix it and make that message go away.

Regards,
Andy

P.S. Hasso/Paul: I'm afraid 0.98.1 is broken.  Am I correct that the
test should be for ISM_Down, not ISM_InterfaceDown?
-------------- next part --------------
Index: ospfd/ospf_packet.c
===================================================================
RCS file: /var/cvsroot/quagga/ospfd/ospf_packet.c,v
retrieving revision 1.62
diff -b -u -r1.62 ospf_packet.c
--- ospfd/ospf_packet.c	29 Jan 2005 15:52:07 -0000	1.62
+++ ospfd/ospf_packet.c	2 Feb 2005 18:02:52 -0000
@@ -2430,11 +2430,11 @@
       stream_free (ibuf);
       return 0;
     }
-  else if (oi->state == ISM_InterfaceDown)
+  else if (oi->state == ISM_Down)
     {
       zlog_warn ("Ignoring packet from [%s] received on interface that is "
-      		 "down [%s]",
-                 inet_ntoa (iph->ip_src), ifp->name); 
+      		 "down [%s]; interface flags are %s",
+                 inet_ntoa (iph->ip_src), ifp->name, if_flag_dump(ifp->flags));
       stream_free (ibuf);
       return 0;
     }


More information about the Quagga-dev mailing list