mirror of
https://git.kernel.org/pub/scm/network/iproute2/iproute2.git
synced 2026-01-26 14:13:24 +00:00
bridge: Deduplicate print_range()
The two implementations are now identical so keep only one instance and move it to json_print.c where there are already a few other specialized printing functions. The string that's formatted in the "end" buffer is only needed when outputting a range so move the snprintf() call within the condition. The second argument's purpose is better conveyed by calling it "end" rather than "id" so rename it. Reviewed-by: Petr Machata <petrm@nvidia.com> Tested-by: Petr Machata <petrm@nvidia.com> Signed-off-by: Benjamin Poirier <bpoirier@nvidia.com> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
parent
dd4e1749a9
commit
1d73bfc8ab
@ -590,20 +590,6 @@ static void close_vlan_port(void)
|
||||
close_json_object();
|
||||
}
|
||||
|
||||
static unsigned int print_range(const char *name, __u32 start, __u32 id)
|
||||
{
|
||||
char end[64];
|
||||
int width;
|
||||
|
||||
snprintf(end, sizeof(end), "%sEnd", name);
|
||||
|
||||
width = print_uint(PRINT_ANY, name, "%u", start);
|
||||
if (start != id)
|
||||
width += print_uint(PRINT_ANY, end, "-%u", id);
|
||||
|
||||
return width;
|
||||
}
|
||||
|
||||
static void print_vlan_tunnel_info(struct rtattr *tb, int ifindex)
|
||||
{
|
||||
struct rtattr *i, *list = tb;
|
||||
|
||||
14
bridge/vni.c
14
bridge/vni.c
@ -163,20 +163,6 @@ static void close_vni_port(void)
|
||||
close_json_object();
|
||||
}
|
||||
|
||||
static unsigned int print_range(const char *name, __u32 start, __u32 id)
|
||||
{
|
||||
char end[64];
|
||||
int width;
|
||||
|
||||
snprintf(end, sizeof(end), "%sEnd", name);
|
||||
|
||||
width = print_uint(PRINT_ANY, name, "%u", start);
|
||||
if (start != id)
|
||||
width += print_uint(PRINT_ANY, end, "-%u", id);
|
||||
|
||||
return width;
|
||||
}
|
||||
|
||||
static void print_vnifilter_entry_stats(struct rtattr *stats_attr)
|
||||
{
|
||||
struct rtattr *stb[VNIFILTER_ENTRY_STATS_MAX+1];
|
||||
|
||||
@ -97,6 +97,8 @@ static inline int print_rate(bool use_iec, enum output_type t,
|
||||
return print_color_rate(use_iec, t, COLOR_NONE, key, fmt, rate);
|
||||
}
|
||||
|
||||
unsigned int print_range(const char *name, __u32 start, __u32 end);
|
||||
|
||||
int print_color_bool_opt(enum output_type type, enum color_attr color,
|
||||
const char *key, bool value, bool show);
|
||||
|
||||
|
||||
@ -374,3 +374,18 @@ int print_color_rate(bool use_iec, enum output_type type, enum color_attr color,
|
||||
free(buf);
|
||||
return rc;
|
||||
}
|
||||
|
||||
unsigned int print_range(const char *name, __u32 start, __u32 end)
|
||||
{
|
||||
int width;
|
||||
|
||||
width = print_uint(PRINT_ANY, name, "%u", start);
|
||||
if (start != end) {
|
||||
char buf[64];
|
||||
|
||||
snprintf(buf, sizeof(buf), "%sEnd", name);
|
||||
width += print_uint(PRINT_ANY, buf, "-%u", end);
|
||||
}
|
||||
|
||||
return width;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user