summaryrefslogtreecommitdiff
path: root/wsutil
diff options
context:
space:
mode:
authorJeff Morriss <jeff.morriss.ws@gmail.com>2014-09-03 21:57:02 -0400
committerJeff Morriss <jeff.morriss.ws@gmail.com>2014-09-11 19:18:23 +0000
commit4a5c80ba68e0eafa6418083995b9fd17e88cbae8 (patch)
tree44e50ef285231e1c62bccc84e18bc9e13fdc8d0b /wsutil
parentc4421f14c805952432f0c87b0434e194d2cdf7ea (diff)
downloadwireshark-4a5c80ba68e0eafa6418083995b9fd17e88cbae8.tar.gz
Don't print non-printable characters in AX.25 addresses.
Add a new routine to wsutil to make this easy: printable_char_or_period(). Bug: 10439 Change-Id: I0eb2bb6bc0676a1035c3d845b5e20276fa04de60 Reviewed-on: https://code.wireshark.org/review/3981 Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net> (cherry picked from commit 2497482e34a108275f75cd8106e1841b35aab98e) Change-Id: I0eb2bb6bc0676a1035c3d845b5e20276fa04de60 Reviewed-on: https://code.wireshark.org/review/3985 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
Diffstat (limited to 'wsutil')
-rw-r--r--wsutil/str_util.c10
-rw-r--r--wsutil/str_util.h2
2 files changed, 11 insertions, 1 deletions
diff --git a/wsutil/str_util.c b/wsutil/str_util.c
index 898ae63171..446f433a18 100644
--- a/wsutil/str_util.c
+++ b/wsutil/str_util.c
@@ -123,7 +123,9 @@ isdigit_string(guchar *str)
#endif
/* Given a size, return its value in a human-readable format */
-gchar *format_size(gint64 size, format_size_flags_e flags) {
+gchar *
+format_size(gint64 size, format_size_flags_e flags)
+{
GString *human_str = g_string_new("");
int power = 1000;
int pfx_off = 0;
@@ -172,3 +174,9 @@ gchar *format_size(gint64 size, format_size_flags_e flags) {
g_string_free(human_str, FALSE);
return ret_val;
}
+
+gchar
+printable_char_or_period(gchar c)
+{
+ return g_ascii_isprint(c) ? c : '.';
+}
diff --git a/wsutil/str_util.h b/wsutil/str_util.h
index 3a01badc30..9859abe03f 100644
--- a/wsutil/str_util.h
+++ b/wsutil/str_util.h
@@ -107,6 +107,8 @@ typedef enum {
WS_DLL_PUBLIC
gchar *format_size(gint64 size, format_size_flags_e flags);
+WS_DLL_PUBLIC
+gchar printable_char_or_period(gchar c);
#ifdef __cplusplus
}