summaryrefslogtreecommitdiffstats
path: root/ip/iptunnel.c
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2010-11-23 22:18:57 +0000
committerStephen Hemminger <stephen.hemminger@vyatta.com>2010-11-30 09:52:32 -0800
commit6f4f7c464ad4121582594f03163c2b5f324d4b4b (patch)
treef100b92c576225d3a0f867cab090d5b7541cd58c /ip/iptunnel.c
parentbe3c4d4f3c14875e459d27b8b095e29af8591489 (diff)
iproute2: treat gre key as number
Print GRE key as a regular number. It is not really an IPv4 address and this is also how Cisco and Juniper treats GRE keys. Do keep the parsing of dotted-quad format for backwards compatibility. Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Diffstat (limited to 'ip/iptunnel.c')
-rw-r--r--ip/iptunnel.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/ip/iptunnel.c b/ip/iptunnel.c
index 2a5c1a19..fe5e3f96 100644
--- a/ip/iptunnel.c
+++ b/ip/iptunnel.c
@@ -306,12 +306,8 @@ static void print_tunnel(struct ip_tunnel_parm *p)
struct ip_tunnel_6rd ip6rd;
char s1[1024];
char s2[1024];
- char s3[64];
- char s4[64];
memset(&ip6rd, 0, sizeof(ip6rd));
- inet_ntop(AF_INET, &p->i_key, s3, sizeof(s3));
- inet_ntop(AF_INET, &p->o_key, s4, sizeof(s4));
/* Do not use format_host() for local addr,
* symbolic name will not be useful.
@@ -377,12 +373,12 @@ static void print_tunnel(struct ip_tunnel_parm *p)
}
if ((p->i_flags&GRE_KEY) && (p->o_flags&GRE_KEY) && p->o_key == p->i_key)
- printf(" key %s", s3);
+ 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 %s ", s3);
+ printf(" ikey %u ", ntohl(p->i_key));
if (p->o_flags&GRE_KEY)
- printf(" okey %s ", s4);
+ printf(" okey %u ", ntohl(p->o_key));
}
if (p->i_flags&GRE_SEQ)