]> git.itanic.dy.fi Git - glucose/commitdiff
utils: Add sanitize_ascii()
authorTimo Kokkonen <kaapeli@itanic.dy.fi>
Thu, 5 May 2011 15:59:19 +0000 (18:59 +0300)
committerTimo Kokkonen <kaapeli@itanic.dy.fi>
Thu, 5 May 2011 15:59:19 +0000 (18:59 +0300)
This can be used to ensure all characters on an ascii array are
printable.

Signed-off-by: Timo Kokkonen <kaapeli@itanic.dy.fi>
utils.c
utils.h

diff --git a/utils.c b/utils.c
index df4dad369b4d8929ab3b584fd7d40a81170115da..267292a6ec53c9baef204764ae05aa08d84dee9d 100644 (file)
--- a/utils.c
+++ b/utils.c
@@ -34,3 +34,12 @@ void print_ascii(const unsigned char *data, int len)
 
        printf("\n");
 }
+
+void sanitize_ascii(unsigned char *data, int len)
+{
+       int i;
+
+       for (i = 0; i < len; i++)
+               data[i] = is_printable(data[i]) ? data[i] : '.';
+       data[i] = 0;
+}
diff --git a/utils.h b/utils.h
index e84ef3609e301852da32e454045c0e1875bed16d..a7820cfbc870d074eaacba0125ed2427e94746f8 100644 (file)
--- a/utils.h
+++ b/utils.h
@@ -21,5 +21,6 @@ extern int trace_level;
 int datalen(const unsigned char *data);
 void print_hex(const unsigned char *data, int len);
 void print_ascii(const unsigned char *data, int len);
+void sanitize_ascii(unsigned char *data, int len);
 
 #endif