]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
When sending BGP attributes, re-create the flags, so that attributes
authorMartin Mares <mj@ucw.cz>
Tue, 25 Apr 2000 21:21:52 +0000 (21:21 +0000)
committerMartin Mares <mj@ucw.cz>
Tue, 25 Apr 2000 21:21:52 +0000 (21:21 +0000)
added by filters which get the flags wrong are fixed automagically.

proto/bgp/attrs.c

index 8bf730bca32b20cd90163cab1aa6a5ce1988865c..c229239ce74e883bfdd8c3ac8513b9fa80edef57 100644 (file)
@@ -372,6 +372,8 @@ bgp_get_bucket(struct bgp_proto *p, ea_list *old, ea_list *tmp, int originate)
        {
          if (!bgp_attr_table[code].allow_in_ebgp && !p->is_internal)
            continue;
+         /* The flags might have been zero if the attr was added by filters */
+         a->flags = (a->flags & BAF_PARTIAL) | bgp_attr_table[code].expected_flags;
        }
       if (code < 32)
        seen |= 1 << code;