summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>2000-05-11 14:20:07 +0200
committerMartin Mares <mj@ucw.cz>2000-05-11 14:20:07 +0200
commit2138d3b4d84058338ad4010eff8da62afa6531ab (patch)
tree88c71ee56330bcda2aa6355de97c1e34430d06e7
parent6e06e6eef098859da95ff56a8ee9b4c75467901a (diff)
downloadbird-2138d3b4d84058338ad4010eff8da62afa6531ab.tar
bird-2138d3b4d84058338ad4010eff8da62afa6531ab.zip
Use correct flags for the LOCAL_PREF attribute.
When an invalid attribute is found, copy the entire attribute to the data section of the NOTIFICATION message.
-rw-r--r--proto/bgp/attrs.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/proto/bgp/attrs.c b/proto/bgp/attrs.c
index ee9d597..ce11202 100644
--- a/proto/bgp/attrs.c
+++ b/proto/bgp/attrs.c
@@ -118,7 +118,7 @@ static struct attr_desc bgp_attr_table[] = {
bgp_check_next_hop, NULL },
{ "med", 4, BAF_OPTIONAL, EAF_TYPE_INT, 0, /* BA_MULTI_EXIT_DISC */
NULL, NULL },
- { "local_pref", 4, BAF_OPTIONAL, EAF_TYPE_INT, 0, /* BA_LOCAL_PREF */
+ { "local_pref", 4, BAF_TRANSITIVE, EAF_TYPE_INT, 0, /* BA_LOCAL_PREF */
NULL, NULL },
{ "atomic_aggr", 0, BAF_TRANSITIVE, EAF_TYPE_OPAQUE, 1, /* BA_ATOMIC_AGGR */
NULL, NULL },
@@ -886,7 +886,7 @@ malformed:
return NULL;
err:
- bgp_error(conn, 3, errcode, z-2, l+2);
+ bgp_error(conn, 3, errcode, attr_start, z+l-attr_start);
return NULL;
}