From 9107c425ace2bcc26e964d9f0cc629a8cdf4674d Mon Sep 17 00:00:00 2001 From: David Ahern Date: Wed, 30 May 2018 08:30:09 -0700 Subject: [PATCH] ip route: print RTA_CACHEINFO if it exists RTA_CACHEINFO can be sent for non-cloned routes. If the attribute is present print it. Allows route dumps to print expires times for example which can exist on FIB entries. Signed-off-by: David Ahern --- ip/iproute.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/ip/iproute.c b/ip/iproute.c index cbc43e2b..78c8085b 100644 --- a/ip/iproute.c +++ b/ip/iproute.c @@ -899,17 +899,14 @@ int print_route(const struct sockaddr_nl *who, struct nlmsghdr *n, void *arg) rta_getattr_u32(tb[RTA_UID])); if (r->rtm_family == AF_INET) { - if (r->rtm_flags & RTM_F_CLONED) { + if (r->rtm_flags & RTM_F_CLONED) print_cache_flags(fp, r->rtm_flags); - if (tb[RTA_CACHEINFO]) - print_rta_cacheinfo(fp, RTA_DATA(tb[RTA_CACHEINFO])); - } + if (tb[RTA_CACHEINFO]) + print_rta_cacheinfo(fp, RTA_DATA(tb[RTA_CACHEINFO])); } else if (r->rtm_family == AF_INET6) { - if (r->rtm_flags & RTM_F_CLONED) { - if (tb[RTA_CACHEINFO]) - print_rta_cacheinfo(fp, RTA_DATA(tb[RTA_CACHEINFO])); - } + if (tb[RTA_CACHEINFO]) + print_rta_cacheinfo(fp, RTA_DATA(tb[RTA_CACHEINFO])); } if (tb[RTA_METRICS])