summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSerhey Popovych <serhe.popovych@gmail.com>2018-01-18 16:04:31 +0200
committerStephen Hemminger <stephen@networkplumber.org>2018-01-18 16:34:40 -0800
commite97ad3d2483cf417a5ccf8b2e3b106b03bb5547d (patch)
tree9a7f41b1b220c9d52e9b32ff538f97baad5ffd6e
parent3caa526c7b2b0a41b04b4c8278374df0e81e2ad0 (diff)
ip/tunnel: Use print_0xhex() instead of print_string()
No need for custom SPRINT_BUF() and snprintf() 0x%x value to this buffer: we can use print_0xhex() instead of print_string(). In link_iptnl.c use s2 instead of s1 buffer and remove s1. While there adjust fwmark option print order in iptnl and ip6tnl to get it match each other. Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
-rw-r--r--ip/link_gre.c5
-rw-r--r--ip/link_gre6.c9
-rw-r--r--ip/link_ip6tnl.c18
-rw-r--r--ip/link_iptnl.c22
-rw-r--r--ip/link_vti.c6
-rw-r--r--ip/link_vti6.c5
6 files changed, 28 insertions, 37 deletions
diff --git a/ip/link_gre.c b/ip/link_gre.c
index 490d7db8..2462828e 100644
--- a/ip/link_gre.c
+++ b/ip/link_gre.c
@@ -443,9 +443,8 @@ static void gre_print_direct_opt(FILE *f, struct rtattr *tb[])
__u32 fwmark = rta_getattr_u32(tb[IFLA_GRE_FWMARK]);
if (fwmark) {
- snprintf(s2, sizeof(s2), "0x%x", fwmark);
-
- print_string(PRINT_ANY, "fwmark", "fwmark %s ", s2);
+ print_0xhex(PRINT_ANY,
+ "fwmark", "fwmark 0x%x ", fwmark);
}
}
}
diff --git a/ip/link_gre6.c b/ip/link_gre6.c
index 37bc5444..7dcd70de 100644
--- a/ip/link_gre6.c
+++ b/ip/link_gre6.c
@@ -497,18 +497,17 @@ static void gre_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[])
if (oflags & GRE_CSUM)
print_bool(PRINT_ANY, "ocsum", "ocsum ", true);
- if (flags & IP6_TNL_F_USE_ORIG_FWMARK)
+ if (flags & IP6_TNL_F_USE_ORIG_FWMARK) {
print_bool(PRINT_ANY,
"ip6_tnl_f_use_orig_fwmark",
"fwmark inherit ",
true);
- else if (tb[IFLA_GRE_FWMARK]) {
+ } else if (tb[IFLA_GRE_FWMARK]) {
__u32 fwmark = rta_getattr_u32(tb[IFLA_GRE_FWMARK]);
if (fwmark) {
- snprintf(s2, sizeof(s2), "0x%x", fwmark);
-
- print_string(PRINT_ANY, "fwmark", "fwmark %s ", s2);
+ print_0xhex(PRINT_ANY,
+ "fwmark", "fwmark 0x%x ", fwmark);
}
}
diff --git a/ip/link_ip6tnl.c b/ip/link_ip6tnl.c
index 605bc614..00bf00a3 100644
--- a/ip/link_ip6tnl.c
+++ b/ip/link_ip6tnl.c
@@ -438,6 +438,12 @@ static void ip6tunnel_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb
if (flags & IP6_TNL_F_MIP6_DEV)
print_bool(PRINT_ANY, "ip6_tnl_f_mip6_dev", "mip6 ", true);
+ if (flags & IP6_TNL_F_ALLOW_LOCAL_REMOTE)
+ print_bool(PRINT_ANY,
+ "ip6_tnl_f_allow_local_remote",
+ "allow-localremote ",
+ true);
+
if (flags & IP6_TNL_F_USE_ORIG_FWMARK) {
print_bool(PRINT_ANY,
"ip6_tnl_f_use_orig_fwmark",
@@ -447,19 +453,11 @@ static void ip6tunnel_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb
__u32 fwmark = rta_getattr_u32(tb[IFLA_IPTUN_FWMARK]);
if (fwmark) {
- SPRINT_BUF(b1);
-
- snprintf(b1, sizeof(b1), "0x%x", fwmark);
- print_string(PRINT_ANY, "fwmark", "fwmark %s ", b1);
+ print_0xhex(PRINT_ANY,
+ "fwmark", "fwmark 0x%x ", fwmark);
}
}
- if (flags & IP6_TNL_F_ALLOW_LOCAL_REMOTE)
- print_bool(PRINT_ANY,
- "ip6_tnl_f_allow_local_remote",
- "allow-localremote ",
- true);
-
if (tb[IFLA_IPTUN_ENCAP_TYPE] &&
rta_getattr_u16(tb[IFLA_IPTUN_ENCAP_TYPE]) != TUNNEL_ENCAP_NONE) {
__u16 type = rta_getattr_u16(tb[IFLA_IPTUN_ENCAP_TYPE]);
diff --git a/ip/link_iptnl.c b/ip/link_iptnl.c
index 7fda580f..00a8366c 100644
--- a/ip/link_iptnl.c
+++ b/ip/link_iptnl.c
@@ -360,7 +360,6 @@ get_failed:
static void iptunnel_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[])
{
- char s1[1024];
char s2[64];
const char *local = "any";
const char *remote = "any";
@@ -455,7 +454,7 @@ static void iptunnel_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[
const char *prefix = inet_ntop(AF_INET6,
RTA_DATA(tb[IFLA_IPTUN_6RD_PREFIX]),
- s1, sizeof(s1));
+ s2, sizeof(s2));
if (is_json_context()) {
print_string(PRINT_JSON, "prefix", NULL, prefix);
@@ -482,6 +481,15 @@ static void iptunnel_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[
}
}
+ if (tb[IFLA_IPTUN_FWMARK]) {
+ __u32 fwmark = rta_getattr_u32(tb[IFLA_IPTUN_FWMARK]);
+
+ if (fwmark) {
+ print_0xhex(PRINT_ANY,
+ "fwmark", "fwmark 0x%x ", fwmark);
+ }
+ }
+
if (tb[IFLA_IPTUN_ENCAP_TYPE] &&
(type = rta_getattr_u16(tb[IFLA_IPTUN_ENCAP_TYPE])) != TUNNEL_ENCAP_NONE) {
__u16 flags = rta_getattr_u16(tb[IFLA_IPTUN_ENCAP_FLAGS]);
@@ -545,16 +553,6 @@ static void iptunnel_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[
fputs("noencap-remcsum ", f);
}
}
-
- if (tb[IFLA_IPTUN_FWMARK]) {
- __u32 fwmark = rta_getattr_u32(tb[IFLA_IPTUN_FWMARK]);
-
- if (fwmark) {
- snprintf(s2, sizeof(s2), "0x%x", fwmark);
-
- print_string(PRINT_ANY, "fwmark", "fwmark %s ", s2);
- }
- }
}
static void iptunnel_print_help(struct link_util *lu, int argc, char **argv,
diff --git a/ip/link_vti.c b/ip/link_vti.c
index 554cfcc4..baaaf2f2 100644
--- a/ip/link_vti.c
+++ b/ip/link_vti.c
@@ -213,10 +213,8 @@ static void vti_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[])
__u32 fwmark = rta_getattr_u32(tb[IFLA_VTI_FWMARK]);
if (fwmark) {
- SPRINT_BUF(b1);
-
- snprintf(b1, sizeof(b1), "0x%x", fwmark);
- print_string(PRINT_ANY, "fwmark", "fwmark %s ", s2);
+ print_0xhex(PRINT_ANY,
+ "fwmark", "fwmark 0x%x ", fwmark);
}
}
}
diff --git a/ip/link_vti6.c b/ip/link_vti6.c
index a63f49fa..952dbb08 100644
--- a/ip/link_vti6.c
+++ b/ip/link_vti6.c
@@ -212,9 +212,8 @@ static void vti6_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[])
__u32 fwmark = rta_getattr_u32(tb[IFLA_VTI_FWMARK]);
if (fwmark) {
- snprintf(s2, sizeof(s2), "0x%x", fwmark);
-
- print_string(PRINT_ANY, "fwmark", "fwmark %s ", s2);
+ print_0xhex(PRINT_ANY,
+ "fwmark", "fwmark 0x%x ", fwmark);
}
}
}