On Fri, Jul 13, 2018 at 11:55:33AM +0200, Sebastian Benoit wrote:
>
> ok?
>
> (benno_route_monitor.diff)
>
> diff --git sbin/route/route.c sbin/route/route.c
> index f98bdeae0a2..d4467a77d04 100644
> --- sbin/route/route.c
> +++ sbin/route/route.c
> @@ -150,6 +150,7 @@ main(int argc, char **argv)
> int kw;
> int Terr = 0;
> int af = AF_UNSPEC;
> + u_int rtable_any = RTABLE_ANY;
>
> if (argc < 2)
> usage(NULL);
> @@ -231,10 +232,15 @@ main(int argc, char **argv)
> }
>
> /* force socket onto table user requested */
> - if (Tflag == 1 && Terr == 0 &&
> - setsockopt(s, AF_ROUTE, ROUTE_TABLEFILTER,
> - &tableid, sizeof(tableid)) == -1)
> - err(1, "setsockopt(ROUTE_TABLEFILTER)");
> + if (Tflag == 1 && Terr == 0) {
> + if (setsockopt(s, AF_ROUTE, ROUTE_TABLEFILTER,
> + &tableid, sizeof(tableid)) == -1)
> + err(1, "setsockopt(ROUTE_TABLEFILTER)");
> + } else {
> + if (setsockopt(s, AF_ROUTE, ROUTE_TABLEFILTER,
> + &rtable_any, sizeof(tableid)) == -1)
Please use the correct variable in the sizeof().
> + err(1, "setsockopt(ROUTE_TABLEFILTER)");
> + }
>
> if (pledge("stdio dns route", NULL) == -1)
> err(1, "pledge");
>
Apart from that OK claudio@.
--
:wq Claudio