mroute: Add table id attribute for kernel side filtering
Similar to 'ip route' add the table id to the dump request for kernel side filtering if it is supported. Signed-off-by: David Ahern <dsahern@gmail.com>
This commit is contained in:
parent
98ce99273f
commit
e41ede8939
|
|
@ -220,6 +220,19 @@ void ipmroute_reset_filter(int ifindex)
|
||||||
filter.iif = ifindex;
|
filter.iif = ifindex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int iproute_dump_filter(struct nlmsghdr *nlh, int reqlen)
|
||||||
|
{
|
||||||
|
int err;
|
||||||
|
|
||||||
|
if (filter.tb) {
|
||||||
|
err = addattr32(nlh, reqlen, RTA_TABLE, filter.tb);
|
||||||
|
if (err)
|
||||||
|
return err;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int mroute_list(int argc, char **argv)
|
static int mroute_list(int argc, char **argv)
|
||||||
{
|
{
|
||||||
char *id = NULL;
|
char *id = NULL;
|
||||||
|
|
@ -285,7 +298,7 @@ static int mroute_list(int argc, char **argv)
|
||||||
filter.iif = idx;
|
filter.iif = idx;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rtnl_routedump_req(&rth, filter.af, NULL) < 0) {
|
if (rtnl_routedump_req(&rth, filter.af, iproute_dump_filter) < 0) {
|
||||||
perror("Cannot send dump request");
|
perror("Cannot send dump request");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue