Skip to contentSkip to conversation

fib_trie: fix duplicated route issue

PATCH Applied Joonwoo Park 2 participants 2 messages Jan 16, 2008 – Jan 18, 2008

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 2/2 fib_trie: fix duplicated route issue

http://bugzilla.kernel.org/show_bug.cgi?id=9493

The fib allows making identical routes with 'ip route replace'. This patch makes the fib return -EEXIST if replacement would cause duplication.

---
 net/ipv4/fib_trie.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
net/ipv4/fib_trie.c +3 -0
index 8d8c291..1010b46 100644
@@ -1214,6 +1214,9 @@ static int fn_trie_insert(struct fib_table *tb, struct fib_config *cfg)
 			struct fib_info *fi_drop;
 			u8 state;
 
+			if (fi->fib_treeref > 1)
+				goto out;
+
 			err = -ENOBUFS;
 			new_fa = kmem_cache_alloc(fn_alias_kmem, GFP_KERNEL);
 			if (new_fa == NULL)
Signature · 1 line
1.5.3.rc5