diff options
-rw-r--r-- | doc/README.developer | 5 | ||||
-rw-r--r-- | epan/Makefile.common | 4 | ||||
-rw-r--r-- | epan/libwireshark.def | 19 | ||||
-rw-r--r-- | epan/packet.c | 7 | ||||
-rw-r--r-- | epan/packet.h | 15 | ||||
-rw-r--r-- | epan/proto.c | 5 | ||||
-rw-r--r-- | epan/tfs.c | 61 | ||||
-rw-r--r-- | epan/tfs.h | 65 |
8 files changed, 157 insertions, 24 deletions
diff --git a/doc/README.developer b/doc/README.developer index 1aaa5a38d0..6d603f968e 100644 --- a/doc/README.developer +++ b/doc/README.developer @@ -1594,7 +1594,7 @@ behavior collapses to the one of value_string. FT_BOOLEANS have a default map of 0 = "False", 1 (or anything else) = "True". Sometimes it is useful to change the labels for boolean values (e.g., to "Yes"/"No", "Fast"/"Slow", etc.). For these mappings, a struct called -true_false_string is used. (This struct is new as of Wireshark 0.7.6). +true_false_string is used. typedef struct true_false_string { char *true_string; @@ -1617,6 +1617,9 @@ string representing falsehood. For FT_BOOLEAN fields that need a If the Boolean field is to be displayed as "False" or "True", the 'strings' field would be set to NULL. +Wireshark predefines a whole range of ready made "true_false_string"s +in tfs.h, included via packet.h. + bitmask ------- If the field is a bitfield, then the bitmask is the mask which will diff --git a/epan/Makefile.common b/epan/Makefile.common index 9badd998c0..86cd7b9a6e 100644 --- a/epan/Makefile.common +++ b/epan/Makefile.common @@ -21,7 +21,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA LIBWIRESHARK_SRC = \ addr_and_mask.c \ @@ -85,6 +85,7 @@ LIBWIRESHARK_SRC = \ tap.c \ tcap-persistentdata.c \ timestamp.c \ + tfs.c \ to_str.c \ tvbparse.c \ tvbuff.c \ @@ -182,6 +183,7 @@ LIBWIRESHARK_INCLUDES = \ tap.h \ tcap-persistentdata.h \ timestamp.h \ + tfs.h \ to_str.h \ tvbparse.h \ tvbuff.h \ diff --git a/epan/libwireshark.def b/epan/libwireshark.def index 499d048432..520c41a016 100644 --- a/epan/libwireshark.def +++ b/epan/libwireshark.def @@ -688,6 +688,25 @@ tap_queue_packet tcp_dissect_pdus test_for_directory test_for_fifo +tfs_true_false DATA +tfs_yes_no DATA +tfs_set_notset DATA +tfs_enabled_disabled DATA +tfs_ok_error DATA +tfs_success_fail DATA +tfs_on_off DATA +tfs_ack_nack DATA +tfs_odd_even DATA +tfs_allow_block DATA +tfs_restricted_allowed DATA +tfs_accept_reject DATA +tfs_more_nomore DATA +tfs_present_absent DATA +tfs_active_inactive DATA +tfs_found_not_found DATA +tfs_command_response DATA +tfs_capable_not_capable DATA +tfs_supported_not_supported DATA time_msecs_to_str time_secs_to_str timestamp_get_precision diff --git a/epan/packet.c b/epan/packet.c index 1df36c61bf..50f3e34cee 100644 --- a/epan/packet.c +++ b/epan/packet.c @@ -19,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifdef HAVE_CONFIG_H @@ -61,11 +61,6 @@ static gint proto_malformed = -1; static dissector_handle_t frame_handle = NULL; static dissector_handle_t data_handle = NULL; -const true_false_string flags_set_truth = { - "Set", - "Not set" -}; - void packet_init(void) { diff --git a/epan/packet.h b/epan/packet.h index 9a8b15871c..8512fa4cb5 100644 --- a/epan/packet.h +++ b/epan/packet.h @@ -19,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PACKET_H__ @@ -44,6 +44,7 @@ #include "packet_info.h" #include "column-utils.h" #include "epan.h" +#include "tfs.h" #define hi_nibble(b) (((b) & 0xf0) >> 4) #define lo_nibble(b) ((b) & 0x0f) @@ -84,18 +85,6 @@ typedef enum { CHAR_EBCDIC = 1 /* EBCDIC */ } char_enc; -/* Struct for boolean enumerations */ -typedef struct true_false_string { - const char *true_string; - const char *false_string; -} true_false_string; - -/** -* A default set of true/false strings that dissectors can use for -* FT_BOOLEAN header fields. -**/ -extern const true_false_string flags_set_truth; - extern void packet_init(void); extern void packet_cleanup(void); diff --git a/epan/proto.c b/epan/proto.c index 6a8c1d523a..31f429d892 100644 --- a/epan/proto.c +++ b/epan/proto.c @@ -19,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifdef HAVE_CONFIG_H @@ -3902,8 +3902,7 @@ fill_label_boolean(field_info *fi, gchar *label_str) int ret; /*tmp return value */ header_field_info *hfinfo = fi->hfinfo; - static const true_false_string default_tf = { "True", "False" }; - const true_false_string *tfstring = &default_tf; + const true_false_string *tfstring = &tfs_true_false; if (hfinfo->strings) { tfstring = (const struct true_false_string*) hfinfo->strings; diff --git a/epan/tfs.c b/epan/tfs.c new file mode 100644 index 0000000000..69ea4a7ad0 --- /dev/null +++ b/epan/tfs.c @@ -0,0 +1,61 @@ +/* tfs.c + * true_false strings + * Copyright 2007, Jaap Keuter <jaap.keuter@xs4all.nl> + * + * $Id$ + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include "tfs.h" + +/* + * A default set of true/false strings that dissectors can use for + * FT_BOOLEAN header fields. + */ +const true_false_string tfs_true_false = { "True", "False" }; +const true_false_string tfs_yes_no = { "Yes", "No" }; +const true_false_string tfs_set_notset = { "Set", "Not Set" }; +const true_false_string tfs_enabled_disabled = { "Enabled", "Disabled" }; +const true_false_string tfs_ok_error = { "Ok", "Error" }; +const true_false_string tfs_success_fail = { "Success", "Fail" }; +const true_false_string tfs_on_off = { "On", "Off" }; +const true_false_string tfs_ack_nack = { "Ack", "Nack" }; +const true_false_string tfs_odd_even = { "Odd", "Even" }; +const true_false_string tfs_allow_block = { "Allow", "Block" }; +const true_false_string tfs_restricted_allowed = { "Restricted", "Allowed" }; +const true_false_string tfs_accept_reject = { "Accept", "Reject" }; +const true_false_string tfs_more_nomore = { "More", "No More" }; +const true_false_string tfs_present_absent = { "Present", "Absent" }; +const true_false_string tfs_active_inactive = { "Active", "Inactive" }; +const true_false_string tfs_found_not_found = { "Found", "Not found" }; +const true_false_string tfs_command_response = { "Command", "Response" }; +const true_false_string tfs_capable_not_capable = { "Capable", "Not capable" }; +const true_false_string tfs_supported_not_supported = { "Supported", "Not supported" }; + +/* + * Old true_false_string from packet.c + * Retained for backward compatibility until all dissectors are updated. + */ +const true_false_string flags_set_truth = { "Set", "Not set" }; + diff --git a/epan/tfs.h b/epan/tfs.h new file mode 100644 index 0000000000..f358ae7a92 --- /dev/null +++ b/epan/tfs.h @@ -0,0 +1,65 @@ +/* tfs.h + * true_false strings + * Copyright 2007, Jaap Keuter <jaap.keuter@xs4all.nl> + * + * $Id$ + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __TFS_H__ +#define __TFS_H__ + +/* Struct for boolean enumerations */ +typedef struct true_false_string { + const char *true_string; + const char *false_string; +} true_false_string; + +/* + * A default set of true/false strings that dissectors can use for + * FT_BOOLEAN header fields. + */ +WS_VAR_IMPORT const true_false_string tfs_true_false; +WS_VAR_IMPORT const true_false_string tfs_yes_no; +WS_VAR_IMPORT const true_false_string tfs_set_notset; +WS_VAR_IMPORT const true_false_string tfs_enabled_disabled; +WS_VAR_IMPORT const true_false_string tfs_ok_error; +WS_VAR_IMPORT const true_false_string tfs_success_fail; +WS_VAR_IMPORT const true_false_string tfs_on_off; +WS_VAR_IMPORT const true_false_string tfs_ack_nack; +WS_VAR_IMPORT const true_false_string tfs_odd_even; +WS_VAR_IMPORT const true_false_string tfs_allow_block; +WS_VAR_IMPORT const true_false_string tfs_restricted_allowed; +WS_VAR_IMPORT const true_false_string tfs_accept_reject; +WS_VAR_IMPORT const true_false_string tfs_more_nomore; +WS_VAR_IMPORT const true_false_string tfs_present_absent; +WS_VAR_IMPORT const true_false_string tfs_active_inactive; +WS_VAR_IMPORT const true_false_string tfs_found_not_found; +WS_VAR_IMPORT const true_false_string tfs_command_response; +WS_VAR_IMPORT const true_false_string tfs_capable_not_capable; +WS_VAR_IMPORT const true_false_string tfs_supported_not_supported; + +/* + * Old true_false_string from packet.c + * Retained for backward compatibility until all dissectors are updated. + */ +WS_VAR_IMPORT const true_false_string flags_set_truth; + +#endif |