Show ipv6 tunnel keys on presence of GRE_KEY flag for tunnel types other than GRE. Aligns ipv6 behaviour with ipv4.
Signed-off-by: dfors...@brocade.com --- ip/ip6tunnel.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/ip/ip6tunnel.c b/ip/ip6tunnel.c index b1c0ae6..b4a7def 100644 --- a/ip/ip6tunnel.c +++ b/ip/ip6tunnel.c @@ -111,16 +111,17 @@ static void print_tunnel(struct ip6_tnl_parm2 *p) if (p->flags & IP6_TNL_F_RCV_DSCP_COPY) printf(" dscp inherit"); - if (p->proto == IPPROTO_GRE) { - if ((p->i_flags & GRE_KEY) && (p->o_flags & GRE_KEY) && p->o_key == p->i_key) - printf(" key %u", ntohl(p->i_key)); - else if ((p->i_flags | p->o_flags) & GRE_KEY) { - if (p->i_flags & GRE_KEY) - printf(" ikey %u", ntohl(p->i_key)); - if (p->o_flags & GRE_KEY) - printf(" okey %u", ntohl(p->o_key)); - } + if ((p->i_flags & GRE_KEY) && (p->o_flags & GRE_KEY) && + p->o_key == p->i_key) + printf(" key %u", ntohl(p->i_key)); + else { + if (p->i_flags & GRE_KEY) + printf(" ikey %u", ntohl(p->i_key)); + if (p->o_flags & GRE_KEY) + printf(" okey %u", ntohl(p->o_key)); + } + if (p->proto == IPPROTO_GRE) { if (p->i_flags & GRE_SEQ) printf("%s Drop packets out of sequence.", _SL_); if (p->i_flags & GRE_CSUM) -- 2.1.4