aboutsummaryrefslogtreecommitdiffstats
path: root/epan/to_str.h
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2002-05-05 00:16:38 +0000
committerGuy Harris <guy@alum.mit.edu>2002-05-05 00:16:38 +0000
commiteb70c97a9bd9f362a3e2f888dd082c5b9b4b9516 (patch)
treee3b201865b9c3108cf90f7953b3c85c4dad0066e /epan/to_str.h
parent82e11eb8eef35974a5c07658009561390720bfad (diff)
Make a "tcp_dissect_pdus()" with the standard loop for a TCP segment,
extracting PDUs from it and possibly doing reassembly. Make the COPS, DNS, DSI, Gryphon, and SCCP dissectors use it. Add "set_actual_length()", "tcp_dissect_pdus()", "decode_boolean_bitfield()", "decode_numeric_bitfield()", and "decode_enumerated_bitfield()" to the list of routines available to dissectors on platforms where routines in the main program aren't available to dynamically-loaded code. Declare routines in "to_str.h" as "extern"; as I remember, that's necessary to allow the "decode_XXX_bitfield()" routines declared therein to be made available to plugins as per the above. Note that new exported routines should be added to the end of the table if that's the only change being made to the table. Create a new "plugin_api_decls.h" header file, used to declare both the "p_" variables and the "p_" structure members in the routine-exporting mechanism; this reduces the number of places you have to change to change the list of exported routines. svn path=/trunk/; revision=5394
Diffstat (limited to 'epan/to_str.h')
-rw-r--r--epan/to_str.h39
1 files changed, 20 insertions, 19 deletions
diff --git a/epan/to_str.h b/epan/to_str.h
index 18a412f90e..a954700205 100644
--- a/epan/to_str.h
+++ b/epan/to_str.h
@@ -1,7 +1,7 @@
/* to_str.h
* Definitions for utilities to convert various other types to strings.
*
- * $Id: to_str.h,v 1.5 2001/09/14 07:10:10 guy Exp $
+ * $Id: to_str.h,v 1.6 2002/05/05 00:16:34 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -51,28 +51,29 @@ typedef enum {
* but for which no more specific module applies.
*/
-gchar* ether_to_str(const guint8 *);
-gchar* ether_to_str_punct(const guint8 *, char);
-gchar* ip_to_str(const guint8 *);
-void ip_to_str_buf(const guint8 *, gchar *);
+extern gchar* ether_to_str(const guint8 *);
+extern gchar* ether_to_str_punct(const guint8 *, char);
+extern gchar* ip_to_str(const guint8 *);
+extern void ip_to_str_buf(const guint8 *, gchar *);
struct e_in6_addr;
-gchar* ip6_to_str(struct e_in6_addr *);
-gchar* ipx_addr_to_str(guint32, const guint8 *);
-gchar* ipxnet_to_string(const guint8 *ad);
-gchar* ipxnet_to_str_punct(const guint32 ad, char punct);
-gchar* vines_addr_to_str(const guint8 *addrp);
-gchar* time_secs_to_str(guint32);
-gchar* time_msecs_to_str(guint32);
-gchar* abs_time_to_str(nstime_t*);
-void display_signed_time(gchar *, int, gint32, gint32, time_res_t);
-gchar* rel_time_to_str(nstime_t*);
-gchar* rel_time_to_secs_str(nstime_t*);
+extern char* ip6_to_str(struct e_in6_addr *);
+extern gchar* ipx_addr_to_str(guint32, const guint8 *);
+extern gchar* ipxnet_to_string(const guint8 *ad);
+extern gchar* ipxnet_to_str_punct(const guint32 ad, char punct);
+extern gchar* vines_addr_to_str(const guint8 *addrp);
+extern gchar* time_secs_to_str(guint32);
+extern gchar* time_msecs_to_str(guint32);
+extern gchar* abs_time_to_str(nstime_t*);
+extern void display_signed_time(gchar *, int, gint32, gint32, time_res_t);
+extern gchar* rel_time_to_str(nstime_t*);
+extern gchar* rel_time_to_secs_str(nstime_t*);
-char * decode_bitfield_value(char *buf, guint32 val, guint32 mask, int width);
-const char *decode_boolean_bitfield(guint32 val, guint32 mask, int width,
+extern char *decode_bitfield_value(char *buf, guint32 val, guint32 mask,
+ int width);
+extern const char *decode_boolean_bitfield(guint32 val, guint32 mask, int width,
const char *truedesc, const char *falsedesc);
-const char *decode_numeric_bitfield(guint32 val, guint32 mask, int width,
+extern const char *decode_numeric_bitfield(guint32 val, guint32 mask, int width,
const char *fmt);
#endif /* __TO_STR_H__ */