diff options
author | João Valverde <joao.valverde@tecnico.ulisboa.pt> | 2015-10-05 13:51:58 +0100 |
---|---|---|
committer | Michael Mann <mmann78@netscape.net> | 2015-10-11 23:54:28 +0000 |
commit | 5823e6e50bad432ff7b6ea6c3c0dc2dc9232b469 (patch) | |
tree | d023251caa2d02acfb198076e8c932f3a326e2e8 /epan/column-utils.c | |
parent | b752f97b0b1b23e7cb3df97364ebb78c6cd53222 (diff) | |
download | wireshark-5823e6e50bad432ff7b6ea6c3c0dc2dc9232b469.tar.gz |
Remove duplicate transport ports from proto tree summary
Don't display duplicate ports if transport name resolution is not
enabled (for UDP/TCP/DCCP).
Also introduce col_append_port() to handle info column port display
with name resolution in a uniform format.
Change-Id: Icb8ac45f726b7c539b4534c62061473e9b582753
Reviewed-on: https://code.wireshark.org/review/10804
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Diffstat (limited to 'epan/column-utils.c')
-rw-r--r-- | epan/column-utils.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/epan/column-utils.c b/epan/column-utils.c index 8db8521e67..b52e08ff8f 100644 --- a/epan/column-utils.c +++ b/epan/column-utils.c @@ -410,7 +410,7 @@ col_append_lstr(column_info *cinfo, const gint el, const gchar *str1, ...) } void -col_append_str_uint(column_info *cinfo, const gint col, const gchar *sep, const gchar *abbrev, guint32 val) +col_append_str_uint(column_info *cinfo, const gint col, const gchar *abbrev, guint32 val, const gchar *sep) { char buf[16]; @@ -418,6 +418,21 @@ col_append_str_uint(column_info *cinfo, const gint col, const gchar *sep, const col_append_lstr(cinfo, col, sep ? sep : "", abbrev, "=", buf, COL_ADD_LSTR_TERMINATOR); } +void +col_append_port(column_info *cinfo, const gint col, port_type typ, guint16 val, const gchar *sep) +{ + const char *str; + char buf[32]; + + if (gbl_resolv_flags.transport_name && + (str = try_serv_name_lookup(typ, val)) != NULL) { + g_snprintf(buf, sizeof(buf), "%s(%u)", str, val); + } else { + g_snprintf(buf, sizeof(buf), "%u", val); + } + col_append_lstr(cinfo, col, sep ? sep : "", buf, COL_ADD_LSTR_TERMINATOR); +} + static void col_do_append_fstr(column_info *cinfo, const int el, const char *separator, const char *format, va_list ap) { |