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>
This commit is contained in:
parent
3caa526c7b
commit
e97ad3d248
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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]);
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue