mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 13:11:40 +00:00
ipv4: include NLM_F_APPEND flag in append route notifications
This patch adds NLM_F_APPEND flag to struct nlmsg_hdr->nlmsg_flags in newroute notifications if the route add was an append. (This is similar to how NLM_F_REPLACE is already part of new route replace notifications today) This helps userspace determine if the route add operation was an append. Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com> Acked-by: Scott Feldman <sfeldma@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
b42be38b27
commit
a2bb6d7d6f
@ -1082,6 +1082,7 @@ int fib_table_insert(struct fib_table *tb, struct fib_config *cfg)
|
||||
struct trie *t = (struct trie *)tb->tb_data;
|
||||
struct fib_alias *fa, *new_fa;
|
||||
struct key_vector *l, *tp;
|
||||
unsigned int nlflags = 0;
|
||||
struct fib_info *fi;
|
||||
u8 plen = cfg->fc_dst_len;
|
||||
u8 slen = KEYLENGTH - plen;
|
||||
@ -1201,7 +1202,9 @@ int fib_table_insert(struct fib_table *tb, struct fib_config *cfg)
|
||||
if (fa_match)
|
||||
goto out;
|
||||
|
||||
if (!(cfg->fc_nlflags & NLM_F_APPEND))
|
||||
if (cfg->fc_nlflags & NLM_F_APPEND)
|
||||
nlflags = NLM_F_APPEND;
|
||||
else
|
||||
fa = fa_first;
|
||||
}
|
||||
err = -ENOENT;
|
||||
@ -1238,7 +1241,7 @@ int fib_table_insert(struct fib_table *tb, struct fib_config *cfg)
|
||||
|
||||
rt_cache_flush(cfg->fc_nlinfo.nl_net);
|
||||
rtmsg_fib(RTM_NEWROUTE, htonl(key), new_fa, plen, new_fa->tb_id,
|
||||
&cfg->fc_nlinfo, 0);
|
||||
&cfg->fc_nlinfo, nlflags);
|
||||
succeeded:
|
||||
return 0;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user