Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 08 Nov 2006 09:27:14 +0500
From:      Boris Kovalenko <boris@tagnet.ru>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/105279: [MAINTAINER UPDATE] net/quagga: [SUMMARIZE CHANGES]
Message-ID:  <E1Ghf1u-0006Gs-BR@boris.nikom.ru>
Resent-Message-ID: <200611080430.kA84UJoi059764@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         105279
>Category:       ports
>Synopsis:       [MAINTAINER UPDATE] net/quagga: [SUMMARIZE CHANGES]
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Wed Nov 08 04:30:18 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Boris Kovalenko
>Release:        FreeBSD 6.1-RELEASE i386
>Organization:
JSC "TAGNet"
>Environment:
System: FreeBSD boris.nikom.ru 6.1-RELEASE FreeBSD 6.1-RELEASE #3: Thu Jul 27 14:51:35 YEKST 2006
>Description:
[DESCRIBE CHANGES]

    This is emergency postfix. Without it ospfd will even not start in some
    enviroments. From Changelog:

2006-08-28 Andy Gay

 * ospf_packet.c: (ospf_make_db_desc) Assert added with More-bit
 fixes does not hold up with addition of Ogier DB-Exchange
 optimisation, which can empty the db-summary list in between
 sent DD packets. Remove assert, update More-bit always when
 in Exchange.

Added file(s):
- files/patch-ospfd-ospf_packet.c

Generated with FreeBSD Port Tools 0.77
>How-To-Repeat:
>Fix:

--- quagga-0.99.5_1.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/net/quagga/Makefile /usr/ports/net/quagga.new/Makefile
--- /usr/ports/net/quagga/Makefile	Fri Nov  3 09:50:38 2006
+++ /usr/ports/net/quagga.new/Makefile	Wed Nov  8 09:18:13 2006
@@ -7,6 +7,7 @@
 
 PORTNAME=	quagga
 PORTVERSION=	0.99.5
+PORTREVISION=	1
 CATEGORIES=	net ipv6
 MASTER_SITES=	http://quagga.net/download/ \
 		http://www.ru.quagga.net/download/ \
diff -ruN --exclude=CVS /usr/ports/net/quagga/files/patch-ospfd-ospf_packet.c /usr/ports/net/quagga.new/files/patch-ospfd-ospf_packet.c
--- /usr/ports/net/quagga/files/patch-ospfd-ospf_packet.c	Thu Jan  1 05:00:00 1970
+++ /usr/ports/net/quagga.new/files/patch-ospfd-ospf_packet.c	Wed Nov  8 09:16:30 2006
@@ -0,0 +1,51 @@
+--- ospfd/ospf_packet.c.orig
++++ ospfd/ospf_packet.c
+@@ -2712,25 +2712,9 @@ ospf_make_db_desc (struct ospf_interface
+   /* Set DD Sequence Number. */
+   stream_putl (s, nbr->dd_seqnum);
+ 
++  /* shortcut unneeded walk of (empty) summary LSDBs */
+   if (ospf_db_summary_isempty (nbr))
+-    {
+-      /* Sanity check:
+-       *
+-       * Must be here either:
+-       * - Initial DBD (ospf_nsm.c)
+-       *   - M must be set
+-       * or
+-       * - finishing Exchange, and DB-Summary list empty
+-       *   - from ospf_db_desc_proc()
+-       *   - M must not be set
+-       */
+-      if (nbr->state >= NSM_Exchange)
+-	assert (!IS_SET_DD_M(nbr->dd_flags));
+-      else
+-        assert (IS_SET_DD_M(nbr->dd_flags));
+-
+-      return length;
+-    }
++    goto empty;
+ 
+   /* Describe LSA Header from Database Summary List. */
+   lsdb = &nbr->db_sum;
+@@ -2785,9 +2769,17 @@ ospf_make_db_desc (struct ospf_interface
+   /* Update 'More' bit */
+   if (ospf_db_summary_isempty (nbr))
+     {
+-      UNSET_FLAG (nbr->dd_flags, OSPF_DD_FLAG_M);
+-      /* Rewrite DD flags */
+-      stream_putc_at (s, pp, nbr->dd_flags);
++empty:
++      if (nbr->state >= NSM_Exchange)
++        {
++          UNSET_FLAG (nbr->dd_flags, OSPF_DD_FLAG_M);
++          /* Rewrite DD flags */
++          stream_putc_at (s, pp, nbr->dd_flags);
++        }
++      else
++        {
++          assert (IS_SET_DD_M(nbr->dd_flags));
++        }
+     }
+   return length;
+ }
--- quagga-0.99.5_1.patch ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1Ghf1u-0006Gs-BR>