summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2017-08-11 14:41:43 -0400
committerGitHub <noreply@github.com>2017-08-11 14:41:43 -0400
commitc040f4804a8571331e710306bd6a41ea04f8c203 (patch)
tree49910093b5edd28a5163ed718cfdac8d918740c6
parentfc4ecb5a5e0acee20d7a8fa5a0e9c4403ae51f6e (diff)
parentb4e55fc5e86ad6ed38b04ed121890227dcc00463 (diff)
Merge pull request #963 from opensourcerouting/plist-trie-corruption
lib: fix prefix list trie corruption
-rw-r--r--lib/plist.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/plist.c b/lib/plist.c
index d7a0db6807..b0cf42ca49 100644
--- a/lib/plist.c
+++ b/lib/plist.c
@@ -538,7 +538,8 @@ static void trie_install_fn(struct prefix_list_entry *object,
return;
if ((*updptr)->prefix.prefixlen < object->prefix.prefixlen)
break;
- if ((*updptr)->seq > object->seq)
+ if ((*updptr)->prefix.prefixlen == object->prefix.prefixlen
+ && (*updptr)->seq > object->seq)
break;
updptr = &(*updptr)->next_best;
}