summaryrefslogtreecommitdiff
path: root/src/xine-utils/utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/xine-utils/utils.c')
-rw-r--r--src/xine-utils/utils.c39
1 files changed, 37 insertions, 2 deletions
diff --git a/src/xine-utils/utils.c b/src/xine-utils/utils.c
index d79388cea..92161b5af 100644
--- a/src/xine-utils/utils.c
+++ b/src/xine-utils/utils.c
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright (C) 2000-2002 the xine project
*
* This file is part of xine, a free video player.
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: utils.c,v 1.13 2003/04/20 21:13:28 guenter Exp $
+ * $Id: utils.c,v 1.14 2003/07/16 14:14:17 andruil Exp $
*
*/
#define _POSIX_PTHREAD_SEMANTICS 1 /* for 5-arg getpwuid_r on solaris */
@@ -171,3 +171,38 @@ void xine_print_trace (void) {
printf("stack backtrace not available.\n");
#endif
}
+
+/* print a hexdump of length bytes from the data given in buf */
+void xine_hexdump (char *buf, int length) {
+ int i,j;
+ unsigned char c;
+
+ /* printf ("Hexdump: %i Bytes\n", length);*/
+ for(j=0; j<69; j++)
+ printf ("-");
+ printf ("\n");
+
+ j=0;
+ while(j<length) {
+ printf ("%04X ",j);
+ for (i=j; i<j+16; i++) {
+ if( i<length )
+ printf ("%02X ", buf[i]);
+ else
+ printf(" ");
+ }
+ for (i=j;i<(j+16<length?j+16:length);i++) {
+ c=buf[i];
+ if ((c>=20) && (c<128))
+ printf ("%c", c);
+ else
+ printf (".");
+ }
+ j=i;
+ printf("\n");
+ }
+
+ for(j=0; j<69; j++)
+ printf("-");
+ printf("\n");
+}