summaryrefslogtreecommitdiff
path: root/proto/bgp/attrs.c
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2017-04-28 11:19:12 +0200
committerOndrej Zajicek (work) <santiago@crfreenet.org>2017-04-28 11:19:12 +0200
commite919601aaf29615edb2a231e58a358c2c5c9d286 (patch)
tree48f97c590500563051d71a165a77567857204293 /proto/bgp/attrs.c
parent5ca4bd5d9018bb7572f10825e1ca431444601be7 (diff)
parent33b6c292c3e3a8972d0b9f43d156aae50db65720 (diff)
Merge master into int-new
Diffstat (limited to 'proto/bgp/attrs.c')
-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 cf9db1c8..882ba44e 100644
--- a/proto/bgp/attrs.c
+++ b/proto/bgp/attrs.c
@@ -358,14 +358,14 @@ bgp_decode_med(struct bgp_parse_state *s, uint code UNUSED, uint flags, byte *da
static void
bgp_export_local_pref(struct bgp_export_state *s, eattr *a)
{
- if (!s->proto->is_interior)
+ if (!s->proto->is_interior && !s->proto->cf->allow_local_pref)
UNSET(a);
}
static void
bgp_decode_local_pref(struct bgp_parse_state *s, uint code UNUSED, uint flags, byte *data, uint len, ea_list **to)
{
- if (!s->proto->is_interior)
+ if (!s->proto->is_interior && !s->proto->cf->allow_local_pref)
DISCARD(BAD_EBGP, "LOCAL_PREF");
if (len != 4)