aboutsummaryrefslogtreecommitdiffstats
path: root/epan/to_str-int.h
diff options
context:
space:
mode:
authorJC Wren <jcwren@jcwren.com>2014-12-17 15:19:20 -0500
committerAnders Broman <a.broman58@gmail.com>2015-02-21 16:57:52 +0000
commite2bcee6ac442e6eb66dd3b09186070de4acb0010 (patch)
treee38e70de1a7160c6833601584774f12936559568 /epan/to_str-int.h
parent13531d36fb91f3abbd6e62add83faf863e62d974 (diff)
Make FT_{U}INT64 behave more like FT_{U}INT32, add support for FT_{U}INT{40,48,56}
Change-Id: I57354c309ecf3a0c8f0c7cff485638027f30bb19 Reviewed-on: https://code.wireshark.org/review/5813 Reviewed-by: Michael Mann <mmann78@netscape.net> Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/to_str-int.h')
-rw-r--r--epan/to_str-int.h104
1 files changed, 98 insertions, 6 deletions
diff --git a/epan/to_str-int.h b/epan/to_str-int.h
index 675c090c72..29dc88f65c 100644
--- a/epan/to_str-int.h
+++ b/epan/to_str-int.h
@@ -37,6 +37,18 @@
char *word_to_hex(char *out, guint16 word);
/**
+ * word_to_hex_punct()
+ *
+ * Output guint16 hex represetation to 'out', and return pointer after last character.
+ * Each byte will be separated with punct character (cannot be NUL).
+ * It always output full representation (padded with 0).
+ *
+ * String is not NUL terminated by this routine.
+ * There needs to be at least 5 bytes in the buffer.
+ */
+char *word_to_hex_punct(char *out, guint16 word, char punct);
+
+/**
* word_to_hex_npad()
*
* Output guint16 hex represetation to 'out', and return pointer after last character.
@@ -48,10 +60,21 @@ char *word_to_hex(char *out, guint16 word);
char *word_to_hex_npad(char *out, guint16 word);
/**
+ * dword_to_hex()
+ *
+ * Output guint32 hex represetation to 'out', and return pointer after last character.
+ * It always output full representation (padded with 0).
+ *
+ * String is not NUL terminated by this routine.
+ * There needs to be at least 8 bytes in the buffer.
+ */
+char *dword_to_hex(char *out, guint32 dword);
+
+/**
* dword_to_hex_punct()
*
* Output guint32 hex represetation to 'out', and return pointer after last character.
- * Each byte will be seperated with punct character (cannot be NUL).
+ * Each byte will be separated with punct character (cannot be NUL).
* It always output full representation (padded with 0).
*
* String is not NUL terminated by this routine.
@@ -60,15 +83,27 @@ char *word_to_hex_npad(char *out, guint16 word);
char *dword_to_hex_punct(char *out, guint32 dword, char punct);
/**
- * dword_to_hex()
+ * qword_to_hex()
*
- * Output guint32 hex represetation to 'out', and return pointer after last character.
+ * Output guint64 hex represetation to 'out', and return pointer after last character.
* It always output full representation (padded with 0).
*
* String is not NUL terminated by this routine.
- * There needs to be at least 8 bytes in the buffer.
+ * There needs to be at least 16 bytes in the buffer.
*/
-char *dword_to_hex(char *out, guint32 dword);
+char *qword_to_hex(char *out, guint64 qword);
+
+/**
+ * qword_to_hex_punct()
+ *
+ * Output guint64 hex represetation to 'out', and return pointer after last character.
+ * Each byte will be separated with punct character (cannot be NUL).
+ * It always output full representation (padded with 0).
+ *
+ * String is not NUL terminated by this routine.
+ * There needs to be at least 22 bytes in the buffer.
+ */
+char *qword_to_hex_punct(char *out, guint64 qword, char punct);
/**
* bytes_to_hexstr()
@@ -85,7 +120,7 @@ char *bytes_to_hexstr(char *out, const guint8 *ad, guint32 len);
* bytes_to_hexstr_punct()
*
* Output hex represetation of guint8 ad array, and return pointer after last character.
- * Each byte will be seperated with punct character (cannot be NUL).
+ * Each byte will be separated with punct character (cannot be NUL).
* It always output full representation (padded with 0).
*
* String is not NUL terminated by this routine.
@@ -105,6 +140,17 @@ char *bytes_to_hexstr_punct(char *out, const guint8 *ad, guint32 len, char punct
char *oct_to_str_back(char *ptr, guint32 value);
/**
+ * oct64_to_str_back()
+ *
+ * Output guint64 octal representation backward (last character will be written on ptr - 1),
+ * and return pointer to first character.
+ *
+ * String is not NUL terminated by this routine.
+ * There needs to be at least 12 bytes in the buffer.
+ */
+char *oct64_to_str_back(char *ptr, guint64 value);
+
+/**
* hex_to_str_back()
*
* Output guint32 hex representation backward (last character will be written on ptr - 1),
@@ -117,6 +163,18 @@ char *oct_to_str_back(char *ptr, guint32 value);
char *hex_to_str_back(char *ptr, int len, guint32 value);
/**
+ * hex64_to_str_back()
+ *
+ * Output guint64 hex representation backward (last character will be written on ptr - 1),
+ * and return pointer to first character.
+ * This routine will output for sure (can output more) 'len' decimal characters (number padded with '0').
+ *
+ * String is not NUL terminated by this routine.
+ * There needs to be at least 2 + MAX(16, len) bytes in the buffer.
+ */
+char *hex64_to_str_back(char *ptr, int len, guint64 value);
+
+/**
* uint_to_str_back()
*
* Output guint32 decimal representation backward (last character will be written on ptr - 1),
@@ -128,6 +186,17 @@ char *hex_to_str_back(char *ptr, int len, guint32 value);
char *uint_to_str_back(char *ptr, guint32 value);
/**
+ * uint64_str_back()
+ *
+ * Output guint64 decimal representation backward (last character will be written on ptr - 1),
+ * and return pointer to first character.
+ *
+ * String is not NUL terminated by this routine.
+ * There needs to be at least 20 bytes in the buffer.
+ */
+char *uint64_to_str_back(char *ptr, guint64 value);
+
+/**
* uint_to_str_back_len()
*
* Output guint32 decimal representation backward (last character will be written on ptr - 1),
@@ -140,6 +209,18 @@ char *uint_to_str_back(char *ptr, guint32 value);
char *uint_to_str_back_len(char *ptr, guint32 value, int len);
/**
+ * uint64_to_str_back_len()
+ *
+ * Output guint64 decimal representation backward (last character will be written on ptr - 1),
+ * and return pointer to first character.
+ * This routine will output for sure (can output more) 'len' decimal characters (number padded with '0').
+ *
+ * String is not NUL terminated by this routine.
+ * There needs to be at least MAX(20, len) bytes in the buffer.
+ */
+char *uint64_to_str_back_len(char *ptr, guint64 value, int len);
+
+/**
* int_to_str_back()
*
* Output gint32 decimal representation backward (last character will be written on ptr - 1),
@@ -150,4 +231,15 @@ char *uint_to_str_back_len(char *ptr, guint32 value, int len);
*/
char *int_to_str_back(char *ptr, gint32 value);
+/**
+ * int64_to_str_back()
+ *
+ * Output gint64 decimal representation backward (last character will be written on ptr - 1),
+ * and return pointer to first character.
+ *
+ * String is not NUL terminated by this routine.
+ * There needs to be at least 21 bytes in the buffer.
+ */
+char *int64_to_str_back(char *ptr, gint64 value);
+
#endif /* __TO_STR_INT_H__ */