aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2008-06-25 09:12:35 +0000
committerGuy Harris <guy@alum.mit.edu>2008-06-25 09:12:35 +0000
commit83fc9d5e0952b79aa59f2676f73c54893c0c7a56 (patch)
tree2f52b71c5dec33e0ee6a1b48d6420269ab845ee2
parent044e57c91780795ada89b9a5cd50cf0f53eadfc2 (diff)
Constify a bunch of stuff, to squelch -Wwrite-strings warnings.
epan/dissectors/packet-ncp2222.inc is a bit hard to fix, so we're not ready to enable that warning by default yet. Throw in some casts to handle GLib routines that take arbitrary non-const pointers (they can later return the pointers, and some callers might want to modify or free up those pointers in cases where they're known to be writable or allocated). Use ep_tvb_memdup() rather than a combination of ep_alloc() and tvb_memcpy(). Clean up some indentation. svn path=/trunk/; revision=25601
-rw-r--r--configure.in2
-rw-r--r--epan/addr_resolv.c2
-rw-r--r--epan/addr_resolv.h4
-rw-r--r--epan/dissectors/packet-cdp.c2
-rw-r--r--epan/dissectors/packet-dhcp-failover.c2
-rw-r--r--epan/dissectors/packet-fix.c180
-rw-r--r--epan/dissectors/packet-icep.c2
-rw-r--r--epan/dissectors/packet-icmpv6.c2
-rw-r--r--epan/dissectors/packet-ieee80211.c2
-rw-r--r--epan/dissectors/packet-image-png.c2
-rw-r--r--epan/dissectors/packet-imf.c2
-rw-r--r--epan/dissectors/packet-ip.c4
-rw-r--r--epan/dissectors/packet-ipv6.c5
-rw-r--r--epan/dissectors/packet-isis-clv.c2
-rw-r--r--epan/dissectors/packet-isis-lsp.c2
-rw-r--r--epan/dissectors/packet-iwarp-ddp-rdmap.c2
-rw-r--r--epan/dissectors/packet-jxta.c2
-rw-r--r--epan/dissectors/packet-lapd.c4
-rw-r--r--epan/dissectors/packet-ldp.c10
-rw-r--r--epan/dissectors/packet-mbtcp.c4
-rw-r--r--epan/dissectors/packet-megaco.c2
-rw-r--r--epan/dissectors/packet-mmse.c23
-rw-r--r--epan/dissectors/packet-mount.c3
-rw-r--r--epan/dissectors/packet-nbns.c10
-rw-r--r--epan/dissectors/packet-netflow.c4
-rw-r--r--epan/dissectors/packet-stun2.c4
-rw-r--r--epan/dissectors/packet-wol.c2
-rw-r--r--epan/gcp.h4
-rw-r--r--epan/stream.c2
-rw-r--r--epan/stream.h2
-rw-r--r--epan/to_str.c2
-rw-r--r--epan/to_str.h2
-rw-r--r--gtk/capture_if_dlg.c11
33 files changed, 157 insertions, 151 deletions
diff --git a/configure.in b/configure.in
index 6e2c2aaaaf..0e43cb0bf9 100644
--- a/configure.in
+++ b/configure.in
@@ -236,7 +236,7 @@ AC_ARG_ENABLE(extra-gcc-checks,
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wbad-function-cast)
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wcast-qual)
#
- # epan/dissectors/packet-fix.c blocks this one
+ # epan/dissectors/packet-ncp2222.inc blocks this one
# for now.
#
AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wwrite-strings)
diff --git a/epan/addr_resolv.c b/epan/addr_resolv.c
index f24c0f9dad..dfc9e5fba2 100644
--- a/epan/addr_resolv.c
+++ b/epan/addr_resolv.c
@@ -2262,7 +2262,7 @@ host_name_lookup_cleanup(void) {
#endif /* HAVE_GNU_ADNS */
-extern gchar *get_hostname(guint addr)
+extern const gchar *get_hostname(guint addr)
{
gboolean found;
diff --git a/epan/addr_resolv.h b/epan/addr_resolv.h
index 424e37ebe3..4869c73288 100644
--- a/epan/addr_resolv.h
+++ b/epan/addr_resolv.h
@@ -131,11 +131,11 @@ extern gint host_name_lookup_process(gpointer data);
extern void host_name_lookup_cleanup(void);
/* get_hostname returns the host name or "%d.%d.%d.%d" if not found */
-extern gchar *get_hostname(guint addr);
+extern const gchar *get_hostname(guint addr);
/* get_hostname6 returns the host name, or numeric addr if not found */
struct e_in6_addr;
-const gchar* get_hostname6(struct e_in6_addr *ad);
+extern const gchar* get_hostname6(struct e_in6_addr *ad);
/* get_ether_name returns the logical name if found in ethers files else
"<vendor>_%02x:%02x:%02x" if the vendor code is known else
diff --git a/epan/dissectors/packet-cdp.c b/epan/dissectors/packet-cdp.c
index 03585a0912..e0bd6ccd77 100644
--- a/epan/dissectors/packet-cdp.c
+++ b/epan/dissectors/packet-cdp.c
@@ -898,7 +898,7 @@ dissect_address_tlv(tvbuff_t *tvb, int offset, int length, proto_tree *tree)
const char *protocol_str;
guint16 address_length;
const char *address_type_str;
- char *address_str;
+ const char *address_str;
if (length < 1)
return -1;
diff --git a/epan/dissectors/packet-dhcp-failover.c b/epan/dissectors/packet-dhcp-failover.c
index c271af9b75..03b37ab4d9 100644
--- a/epan/dissectors/packet-dhcp-failover.c
+++ b/epan/dissectors/packet-dhcp-failover.c
@@ -367,7 +367,7 @@ dissect_dhcpfo_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
guint8 htype, reject_reason, message_digest_type;
const guint8 *chaddr;
guint8 binding_status;
- gchar *assigned_ip_address_str, *sending_server_ip_address_str;
+ const gchar *assigned_ip_address_str, *sending_server_ip_address_str;
guint32 addresses_transferred;
guint8 *client_identifier_str, *vendor_class_str;
const gchar *htype_str;
diff --git a/epan/dissectors/packet-fix.c b/epan/dissectors/packet-fix.c
index 51e6e2d11c..e24e318c1f 100644
--- a/epan/dissectors/packet-fix.c
+++ b/epan/dissectors/packet-fix.c
@@ -743,96 +743,96 @@ static void dissect_fix_init(void) {
g_datalist_init(&msg_types);
- g_datalist_set_data(&msg_types, "0", "Heartbeat");
- g_datalist_set_data(&msg_types, "1", "Test Request");
- g_datalist_set_data(&msg_types, "2", "Resend Request");
- g_datalist_set_data(&msg_types, "3", "Reject");
- g_datalist_set_data(&msg_types, "4", "Sequence Reset");
- g_datalist_set_data(&msg_types, "5", "Logout");
- g_datalist_set_data(&msg_types, "6", "Indication of Interest");
- g_datalist_set_data(&msg_types, "7", "Advertisement");
- g_datalist_set_data(&msg_types, "8", "Execution Report");
- g_datalist_set_data(&msg_types, "9", "Order Cancel Reject");
- g_datalist_set_data(&msg_types, "A", "Logon");
- g_datalist_set_data(&msg_types, "B", "News");
- g_datalist_set_data(&msg_types, "C", "Email");
- g_datalist_set_data(&msg_types, "D", "Order - Single");
- g_datalist_set_data(&msg_types, "E", "Order - List");
- g_datalist_set_data(&msg_types, "F", "Order Cancel Request");
- g_datalist_set_data(&msg_types, "G", "Order Cancel - Replace Request");
- g_datalist_set_data(&msg_types, "H", "Order Status Request");
- g_datalist_set_data(&msg_types, "J", "Allocation");
- g_datalist_set_data(&msg_types, "K", "List Cancel Request");
- g_datalist_set_data(&msg_types, "L", "List Execute");
- g_datalist_set_data(&msg_types, "M", "List Status Request");
- g_datalist_set_data(&msg_types, "N", "List Status");
- g_datalist_set_data(&msg_types, "P", "Allocation ACK");
- g_datalist_set_data(&msg_types, "Q", "Don't Know Trade (DK)");
- g_datalist_set_data(&msg_types, "R", "Quote Request");
- g_datalist_set_data(&msg_types, "S", "Quote");
- g_datalist_set_data(&msg_types, "T", "Settlement Instructions");
- g_datalist_set_data(&msg_types, "V", "Market Data Request");
- g_datalist_set_data(&msg_types, "W", "Market Data-Snapshot - Full Refresh");
- g_datalist_set_data(&msg_types, "X", "Market Data-Incremental Refresh");
- g_datalist_set_data(&msg_types, "Y", "Market Data Request Reject");
- g_datalist_set_data(&msg_types, "Z", "Quote Cancel");
- g_datalist_set_data(&msg_types, "a", "Quote Status Request");
- g_datalist_set_data(&msg_types, "b", "Mass Quote Acknowledgement");
- g_datalist_set_data(&msg_types, "c", "Security Definition Request");
- g_datalist_set_data(&msg_types, "d", "Security Definition");
- g_datalist_set_data(&msg_types, "e", "Security Status Request");
- g_datalist_set_data(&msg_types, "f", "Security Status");
- g_datalist_set_data(&msg_types, "g", "Trading Session Status Request");
- g_datalist_set_data(&msg_types, "h", "Trading Session Status");
- g_datalist_set_data(&msg_types, "i", "Mass Quote");
- g_datalist_set_data(&msg_types, "j", "Business Message Reject");
- g_datalist_set_data(&msg_types, "k", "Bid Request ");
- g_datalist_set_data(&msg_types, "l", "Bid Response");
- g_datalist_set_data(&msg_types, "m", "List Strike Price");
- g_datalist_set_data(&msg_types, "n", "XML message");
- g_datalist_set_data(&msg_types, "o", "Registration Instructions");
- g_datalist_set_data(&msg_types, "p", "Registration Instructions Response");
- g_datalist_set_data(&msg_types, "q", "Order Mass Cancel Request");
- g_datalist_set_data(&msg_types, "r", "Order Mass Cancel Report");
- g_datalist_set_data(&msg_types, "s", "New Order - Cross");
- g_datalist_set_data(&msg_types, "t", "Cross Order Cancel - Replace Request");
- g_datalist_set_data(&msg_types, "u", "Cross Order Cancel Request");
- g_datalist_set_data(&msg_types, "v", "Security Type Request");
- g_datalist_set_data(&msg_types, "w", "Security Types");
- g_datalist_set_data(&msg_types, "x", "Security List Request");
- g_datalist_set_data(&msg_types, "y", "Security List");
- g_datalist_set_data(&msg_types, "z", "Derivative Security List Request");
- g_datalist_set_data(&msg_types, "AA", "Derivative Security List");
- g_datalist_set_data(&msg_types, "AB", "New Order - Multileg");
- g_datalist_set_data(&msg_types, "AC", "Multileg Order Cancel - Replace");
- g_datalist_set_data(&msg_types, "AD", "Trade Capture Report Request");
- g_datalist_set_data(&msg_types, "AE", "Trade Capture Report");
- g_datalist_set_data(&msg_types, "AF", "Order Mass Status Request");
- g_datalist_set_data(&msg_types, "AG", "Quote Request Reject");
- g_datalist_set_data(&msg_types, "AH", "RFQ Request");
- g_datalist_set_data(&msg_types, "AI", "Quote Status Report");
- g_datalist_set_data(&msg_types, "AJ", "Quote Response");
- g_datalist_set_data(&msg_types, "AK", "Confirmation");
- g_datalist_set_data(&msg_types, "AL", "Position Maintenance Request");
- g_datalist_set_data(&msg_types, "AM", "Position Maintenance Report");
- g_datalist_set_data(&msg_types, "AN", "Request For Positions");
- g_datalist_set_data(&msg_types, "AO", "Request For Positions Ack");
- g_datalist_set_data(&msg_types, "AP", "Position Report");
- g_datalist_set_data(&msg_types, "AQ", "Trade Capture Report Request Ack");
- g_datalist_set_data(&msg_types, "AR", "Trade Capture Report Ack");
- g_datalist_set_data(&msg_types, "AS", "Allocation Report");
- g_datalist_set_data(&msg_types, "AT", "Allocation Report Ack");
- g_datalist_set_data(&msg_types, "AU", "Confirmation Ack");
- g_datalist_set_data(&msg_types, "AV", "Settlement Instruction Request");
- g_datalist_set_data(&msg_types, "AW", "Assignment Report");
- g_datalist_set_data(&msg_types, "AX", "Collateral Request");
- g_datalist_set_data(&msg_types, "AY", "Collateral Assignment");
- g_datalist_set_data(&msg_types, "AZ", "Collateral Response");
- g_datalist_set_data(&msg_types, "BA", "Collateral Report");
- g_datalist_set_data(&msg_types, "BB", "Collateral Inquiry");
- g_datalist_set_data(&msg_types, "BE", "User Request");
- g_datalist_set_data(&msg_types, "BF", "User Response");
- g_datalist_set_data(&msg_types, "BG", "Collateral Inquiry Ack");
+ g_datalist_set_data(&msg_types, "0", (gchar *)"Heartbeat");
+ g_datalist_set_data(&msg_types, "1", (gchar *)"Test Request");
+ g_datalist_set_data(&msg_types, "2", (gchar *)"Resend Request");
+ g_datalist_set_data(&msg_types, "3", (gchar *)"Reject");
+ g_datalist_set_data(&msg_types, "4", (gchar *)"Sequence Reset");
+ g_datalist_set_data(&msg_types, "5", (gchar *)"Logout");
+ g_datalist_set_data(&msg_types, "6", (gchar *)"Indication of Interest");
+ g_datalist_set_data(&msg_types, "7", (gchar *)"Advertisement");
+ g_datalist_set_data(&msg_types, "8", (gchar *)"Execution Report");
+ g_datalist_set_data(&msg_types, "9", (gchar *)"Order Cancel Reject");
+ g_datalist_set_data(&msg_types, "A", (gchar *)"Logon");
+ g_datalist_set_data(&msg_types, "B", (gchar *)"News");
+ g_datalist_set_data(&msg_types, "C", (gchar *)"Email");
+ g_datalist_set_data(&msg_types, "D", (gchar *)"Order - Single");
+ g_datalist_set_data(&msg_types, "E", (gchar *)"Order - List");
+ g_datalist_set_data(&msg_types, "F", (gchar *)"Order Cancel Request");
+ g_datalist_set_data(&msg_types, "G", (gchar *)"Order Cancel - Replace Request");
+ g_datalist_set_data(&msg_types, "H", (gchar *)"Order Status Request");
+ g_datalist_set_data(&msg_types, "J", (gchar *)"Allocation");
+ g_datalist_set_data(&msg_types, "K", (gchar *)"List Cancel Request");
+ g_datalist_set_data(&msg_types, "L", (gchar *)"List Execute");
+ g_datalist_set_data(&msg_types, "M", (gchar *)"List Status Request");
+ g_datalist_set_data(&msg_types, "N", (gchar *)"List Status");
+ g_datalist_set_data(&msg_types, "P", (gchar *)"Allocation ACK");
+ g_datalist_set_data(&msg_types, "Q", (gchar *)"Don't Know Trade (DK)");
+ g_datalist_set_data(&msg_types, "R", (gchar *)"Quote Request");
+ g_datalist_set_data(&msg_types, "S", (gchar *)"Quote");
+ g_datalist_set_data(&msg_types, "T", (gchar *)"Settlement Instructions");
+ g_datalist_set_data(&msg_types, "V", (gchar *)"Market Data Request");
+ g_datalist_set_data(&msg_types, "W", (gchar *)"Market Data-Snapshot - Full Refresh");
+ g_datalist_set_data(&msg_types, "X", (gchar *)"Market Data-Incremental Refresh");
+ g_datalist_set_data(&msg_types, "Y", (gchar *)"Market Data Request Reject");
+ g_datalist_set_data(&msg_types, "Z", (gchar *)"Quote Cancel");
+ g_datalist_set_data(&msg_types, "a", (gchar *)"Quote Status Request");
+ g_datalist_set_data(&msg_types, "b", (gchar *)"Mass Quote Acknowledgement");
+ g_datalist_set_data(&msg_types, "c", (gchar *)"Security Definition Request");
+ g_datalist_set_data(&msg_types, "d", (gchar *)"Security Definition");
+ g_datalist_set_data(&msg_types, "e", (gchar *)"Security Status Request");
+ g_datalist_set_data(&msg_types, "f", (gchar *)"Security Status");
+ g_datalist_set_data(&msg_types, "g", (gchar *)"Trading Session Status Request");
+ g_datalist_set_data(&msg_types, "h", (gchar *)"Trading Session Status");
+ g_datalist_set_data(&msg_types, "i", (gchar *)"Mass Quote");
+ g_datalist_set_data(&msg_types, "j", (gchar *)"Business Message Reject");
+ g_datalist_set_data(&msg_types, "k", (gchar *)"Bid Request ");
+ g_datalist_set_data(&msg_types, "l", (gchar *)"Bid Response");
+ g_datalist_set_data(&msg_types, "m", (gchar *)"List Strike Price");
+ g_datalist_set_data(&msg_types, "n", (gchar *)"XML message");
+ g_datalist_set_data(&msg_types, "o", (gchar *)"Registration Instructions");
+ g_datalist_set_data(&msg_types, "p", (gchar *)"Registration Instructions Response");
+ g_datalist_set_data(&msg_types, "q", (gchar *)"Order Mass Cancel Request");
+ g_datalist_set_data(&msg_types, "r", (gchar *)"Order Mass Cancel Report");
+ g_datalist_set_data(&msg_types, "s", (gchar *)"New Order - Cross");
+ g_datalist_set_data(&msg_types, "t", (gchar *)"Cross Order Cancel - Replace Request");
+ g_datalist_set_data(&msg_types, "u", (gchar *)"Cross Order Cancel Request");
+ g_datalist_set_data(&msg_types, "v", (gchar *)"Security Type Request");
+ g_datalist_set_data(&msg_types, "w", (gchar *)"Security Types");
+ g_datalist_set_data(&msg_types, "x", (gchar *)"Security List Request");
+ g_datalist_set_data(&msg_types, "y", (gchar *)"Security List");
+ g_datalist_set_data(&msg_types, "z", (gchar *)"Derivative Security List Request");
+ g_datalist_set_data(&msg_types, "AA", (gchar *)"Derivative Security List");
+ g_datalist_set_data(&msg_types, "AB", (gchar *)"New Order - Multileg");
+ g_datalist_set_data(&msg_types, "AC", (gchar *)"Multileg Order Cancel - Replace");
+ g_datalist_set_data(&msg_types, "AD", (gchar *)"Trade Capture Report Request");
+ g_datalist_set_data(&msg_types, "AE", (gchar *)"Trade Capture Report");
+ g_datalist_set_data(&msg_types, "AF", (gchar *)"Order Mass Status Request");
+ g_datalist_set_data(&msg_types, "AG", (gchar *)"Quote Request Reject");
+ g_datalist_set_data(&msg_types, "AH", (gchar *)"RFQ Request");
+ g_datalist_set_data(&msg_types, "AI", (gchar *)"Quote Status Report");
+ g_datalist_set_data(&msg_types, "AJ", (gchar *)"Quote Response");
+ g_datalist_set_data(&msg_types, "AK", (gchar *)"Confirmation");
+ g_datalist_set_data(&msg_types, "AL", (gchar *)"Position Maintenance Request");
+ g_datalist_set_data(&msg_types, "AM", (gchar *)"Position Maintenance Report");
+ g_datalist_set_data(&msg_types, "AN", (gchar *)"Request For Positions");
+ g_datalist_set_data(&msg_types, "AO", (gchar *)"Request For Positions Ack");
+ g_datalist_set_data(&msg_types, "AP", (gchar *)"Position Report");
+ g_datalist_set_data(&msg_types, "AQ", (gchar *)"Trade Capture Report Request Ack");
+ g_datalist_set_data(&msg_types, "AR", (gchar *)"Trade Capture Report Ack");
+ g_datalist_set_data(&msg_types, "AS", (gchar *)"Allocation Report");
+ g_datalist_set_data(&msg_types, "AT", (gchar *)"Allocation Report Ack");
+ g_datalist_set_data(&msg_types, "AU", (gchar *)"Confirmation Ack");
+ g_datalist_set_data(&msg_types, "AV", (gchar *)"Settlement Instruction Request");
+ g_datalist_set_data(&msg_types, "AW", (gchar *)"Assignment Report");
+ g_datalist_set_data(&msg_types, "AX", (gchar *)"Collateral Request");
+ g_datalist_set_data(&msg_types, "AY", (gchar *)"Collateral Assignment");
+ g_datalist_set_data(&msg_types, "AZ", (gchar *)"Collateral Response");
+ g_datalist_set_data(&msg_types, "BA", (gchar *)"Collateral Report");
+ g_datalist_set_data(&msg_types, "BB", (gchar *)"Collateral Inquiry");
+ g_datalist_set_data(&msg_types, "BE", (gchar *)"User Request");
+ g_datalist_set_data(&msg_types, "BF", (gchar *)"User Response");
+ g_datalist_set_data(&msg_types, "BG", (gchar *)"Collateral Inquiry Ack");
g_datalist_set_data(&msg_types, "BH", (gpointer)(void *)"Confirmation Request");
}
diff --git a/epan/dissectors/packet-icep.c b/epan/dissectors/packet-icep.c
index 66fd241e24..f815d88696 100644
--- a/epan/dissectors/packet-icep.c
+++ b/epan/dissectors/packet-icep.c
@@ -385,7 +385,7 @@ static void dissect_ice_context(proto_tree *tree, tvbuff_t *tvb, guint32 offset,
guint32 Size = 0; /* number of key-value in the dictionary */
guint32 i = 0;
- char *s = NULL;
+ const char *s = NULL;
(*consumed) = 0;
diff --git a/epan/dissectors/packet-icmpv6.c b/epan/dissectors/packet-icmpv6.c
index a3cf20bbd5..fad18d2583 100644
--- a/epan/dissectors/packet-icmpv6.c
+++ b/epan/dissectors/packet-icmpv6.c
@@ -734,7 +734,7 @@ dissect_icmpv6fmip6opt(tvbuff_t *tvb, int offset, proto_tree *tree)
proto_item *ti;
struct fmip6_opt_hdr fmip6_opt_hdr, *opt;
int len;
- char *typename;
+ const char *typename;
if (!tree)
return;
diff --git a/epan/dissectors/packet-ieee80211.c b/epan/dissectors/packet-ieee80211.c
index 89b65c3c21..705b219a33 100644
--- a/epan/dissectors/packet-ieee80211.c
+++ b/epan/dissectors/packet-ieee80211.c
@@ -5644,7 +5644,7 @@ dissect_ieee80211_common (tvbuff_t * tvb, packet_info * pinfo,
char out_buff[SHORT_STR];
gint is_iv_bad;
guchar iv_buff[4];
- char *addr1_str = NULL;
+ const char *addr1_str = NULL;
int addr1_hf = -1;
guint offset;
const gchar *fts_str;
diff --git a/epan/dissectors/packet-image-png.c b/epan/dissectors/packet-image-png.c
index d2669ba9c3..018ca026d8 100644
--- a/epan/dissectors/packet-image-png.c
+++ b/epan/dissectors/packet-image-png.c
@@ -188,7 +188,7 @@ dissect_png_bkgd(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
typedef struct _chunk_dissector_t {
guint32 type;
- char *name;
+ const char *name;
void (*dissector)(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
} chunk_dissector_t;
diff --git a/epan/dissectors/packet-imf.c b/epan/dissectors/packet-imf.c
index 22421ccd81..e29528d398 100644
--- a/epan/dissectors/packet-imf.c
+++ b/epan/dissectors/packet-imf.c
@@ -140,7 +140,7 @@ static int ett_imf_extension = -1;
static int ett_imf_message_text = -1;
struct imf_field {
- char *name; /* field name - in lower case for matching purposes */
+ const char *name; /* field name - in lower case for matching purposes */
int *hf_id; /* wireshark field */
void (*subdissector)(tvbuff_t *tvb, int offset, int length, proto_item *item);
gboolean add_to_col_info; /* add field to column info */
diff --git a/epan/dissectors/packet-ip.c b/epan/dissectors/packet-ip.c
index 2cb804b78d..e93c8aa411 100644
--- a/epan/dissectors/packet-ip.c
+++ b/epan/dissectors/packet-ip.c
@@ -1396,7 +1396,7 @@ dissect_ip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
SET_ADDRESS(&pinfo->src, AT_IPv4, 4, src_addr);
SET_ADDRESS(&iph->ip_src, AT_IPv4, 4, src_addr);
if (tree) {
- char *src_host;
+ const char *src_host;
memcpy(&addr, iph->ip_src.data, 4);
src_host = get_hostname(addr);
@@ -1438,7 +1438,7 @@ dissect_ip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
}
if (tree) {
- char *dst_host;
+ const char *dst_host;
memcpy(&addr, iph->ip_dst.data, 4);
dst_host = get_hostname(addr);
diff --git a/epan/dissectors/packet-ipv6.c b/epan/dissectors/packet-ipv6.c
index 303951e606..e0409fc7cd 100644
--- a/epan/dissectors/packet-ipv6.c
+++ b/epan/dissectors/packet-ipv6.c
@@ -922,7 +922,7 @@ dissect_shimopts(tvbuff_t *tvb, int offset, proto_tree *tree, packet_info *pinfo
}
static void
-dissect_shim6_ct(proto_tree * shim_tree, gint hf_item, tvbuff_t * tvb, gint offset, guchar * label)
+dissect_shim6_ct(proto_tree * shim_tree, gint hf_item, tvbuff_t * tvb, gint offset, const guchar * label)
{
guint8 tmp[6];
guchar * ct_str;
@@ -943,7 +943,8 @@ dissect_shim6_ct(proto_tree * shim_tree, gint hf_item, tvbuff_t * tvb, gint offs
static void
dissect_shim6_probes(proto_tree * shim_tree, tvbuff_t * tvb, gint offset,
- guchar * label, guint nbr_probe, gboolean probes_rcvd)
+ const guchar * label, guint nbr_probe,
+ gboolean probes_rcvd)
{
proto_tree * probes_tree;
proto_tree * probe_tree;
diff --git a/epan/dissectors/packet-isis-clv.c b/epan/dissectors/packet-isis-clv.c
index 10655d8914..25248f7863 100644
--- a/epan/dissectors/packet-isis-clv.c
+++ b/epan/dissectors/packet-isis-clv.c
@@ -263,7 +263,7 @@ isis_dissect_mt_clv(tvbuff_t *tvb, proto_tree *tree, int offset, int length,
int tree_id)
{
guint16 mt_block;
- char *mt_desc;
+ const char *mt_desc;
while (length>0) {
/* length can only be a multiple of 2, otherwise there is
diff --git a/epan/dissectors/packet-isis-lsp.c b/epan/dissectors/packet-isis-lsp.c
index 494e0b8dbd..e3e878d4d5 100644
--- a/epan/dissectors/packet-isis-lsp.c
+++ b/epan/dissectors/packet-isis-lsp.c
@@ -429,7 +429,7 @@ static void
dissect_lsp_mt_id(tvbuff_t *tvb, proto_tree *tree, int offset)
{
int mt_block, mt_id;
- char *mt_desc="";
+ const char *mt_desc="";
/* fetch two bytes */
mt_block = tvb_get_ntohs(tvb, offset);
diff --git a/epan/dissectors/packet-iwarp-ddp-rdmap.c b/epan/dissectors/packet-iwarp-ddp-rdmap.c
index 55d0c24a0a..92f9eed178 100644
--- a/epan/dissectors/packet-iwarp-ddp-rdmap.c
+++ b/epan/dissectors/packet-iwarp-ddp-rdmap.c
@@ -264,7 +264,7 @@ void
ddp_rdma_packetlist(packet_info *pinfo, gboolean ddp_last_flag,
guint8 rdma_msg_opcode)
{
- gchar *ddp_fragment_state;
+ const gchar *ddp_fragment_state;
if (check_col(pinfo->cinfo, COL_PROTOCOL)) {
col_set_str(pinfo->cinfo, COL_PROTOCOL, "DDP/RDMA");
diff --git a/epan/dissectors/packet-jxta.c b/epan/dissectors/packet-jxta.c
index a3bc5d4257..7afef1fa42 100644
--- a/epan/dissectors/packet-jxta.c
+++ b/epan/dissectors/packet-jxta.c
@@ -2110,7 +2110,7 @@ static int dissect_jxta_message_element_2(tvbuff_t * tvb, packet_info * pinfo, p
guint16 nameID;
proto_item *name_ti;
guint64 content_len;
- gchar *mediatype = NULL;
+ const gchar *mediatype = NULL;
tvbuff_t *element_content_tvb;
proto_item * jxta_elem_length_item = NULL;
diff --git a/epan/dissectors/packet-lapd.c b/epan/dissectors/packet-lapd.c
index 45944da293..a74612edf1 100644
--- a/epan/dissectors/packet-lapd.c
+++ b/epan/dissectors/packet-lapd.c
@@ -396,8 +396,8 @@ dissect_lapd(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
guint16 address, cr, sapi, tei;
gboolean is_response = 0;
tvbuff_t *next_tvb;
- char *srcname = "?";
- char *dstname = "?";
+ const char *srcname = "?";
+ const char *dstname = "?";
if (check_col(pinfo->cinfo, COL_PROTOCOL))
col_set_str(pinfo->cinfo, COL_PROTOCOL, "LAPD");
diff --git a/epan/dissectors/packet-ldp.c b/epan/dissectors/packet-ldp.c
index 9a38d47b22..3b8fed66c5 100644
--- a/epan/dissectors/packet-ldp.c
+++ b/epan/dissectors/packet-ldp.c
@@ -690,12 +690,12 @@ static const value_string tlv_status_data[] = {
};
/* Define storage class for a string handler function
- * with a const guint8 * argument, and returning a gchar *
+ * with a const guint8 * argument, and returning a const gchar *
*/
-typedef gchar *(string_handler_func)(const guint8 *);
+typedef const gchar *(string_handler_func)(const guint8 *);
/* Default handler for address to string conversion */
-static gchar *
+static const gchar *
default_str_handler(const guint8 * bytes _U_)
{
return "<Support for this Address Family not implemented>";
@@ -712,7 +712,7 @@ dissect_tlv_fec(tvbuff_t *tvb, guint offset, proto_tree *tree, int rem)
guint8 addr_size=0, *addr, implemented, prefix_len_octets, prefix_len, host_len, vc_len;
guint8 intparam_len;
string_handler_func *str_handler = default_str_handler;
- char *str;
+ const char *str;
if (tree) {
ti=proto_tree_add_text(tree, tvb, offset, rem, "FEC Elements");
@@ -1054,7 +1054,7 @@ dissect_tlv_address_list(tvbuff_t *tvb, guint offset, proto_tree *tree, int rem)
guint16 family, ix;
guint8 addr_size, *addr;
string_handler_func *str_handler = default_str_handler;
- char *str;
+ const char *str;
if (tree) {
if( rem < 2 ) {
diff --git a/epan/dissectors/packet-mbtcp.c b/epan/dissectors/packet-mbtcp.c
index d4ba97f5f1..1ffd01f7ac 100644
--- a/epan/dissectors/packet-mbtcp.c
+++ b/epan/dissectors/packet-mbtcp.c
@@ -213,8 +213,8 @@ dissect_mbtcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
guint i;
gint packet_len, payload_start, payload_len;
const char *func_string = "";
- char *pkt_type_str = "";
- char *err_str = "";
+ const char *pkt_type_str = "";
+ const char *err_str = "";
guint32 byte_cnt, group_byte_cnt, group_word_cnt;
guint32 packet_num; /* num to uniquely identify different mbtcp
* packets in one TCP packet */
diff --git a/epan/dissectors/packet-megaco.c b/epan/dissectors/packet-megaco.c
index 6a86ba6bce..530d4c2d5f 100644
--- a/epan/dissectors/packet-megaco.c
+++ b/epan/dissectors/packet-megaco.c
@@ -1233,7 +1233,7 @@ nextcontext:
wild_term = GCP_WILDCARD_CHOOSE;
term->len = 1;
- term->buffer = (guint8*)(term->str = "$");
+ term->buffer = (term->str = "$");
term = gcp_cmd_add_term(msg, trx, cmd, term, wild_term, keep_persistent_data);
diff --git a/epan/dissectors/packet-mmse.c b/epan/dissectors/packet-mmse.c
index 03a7b6eecc..7df1bdd8a3 100644
--- a/epan/dissectors/packet-mmse.c
+++ b/epan/dissectors/packet-mmse.c
@@ -457,7 +457,7 @@ static const value_string vals_reply_charging[] = {
* \return The length in bytes of the entire field
*/
static guint
-get_text_string(tvbuff_t *tvb, guint offset, char **strval)
+get_text_string(tvbuff_t *tvb, guint offset, const char **strval)
{
guint len;
@@ -466,9 +466,9 @@ get_text_string(tvbuff_t *tvb, guint offset, char **strval)
len = tvb_strsize(tvb, offset);
DebugLog((" [1] tvb_strsize(tvb, offset) == %u\n", len));
if (tvb_get_guint8(tvb, offset) == MM_QUOTE)
- *strval = (char *)tvb_memcpy(tvb, ep_alloc(len-1), offset+1, len-1);
+ *strval = ep_tvb_memdup(tvb, offset+1, len-1);
else
- *strval = (char *)tvb_memcpy(tvb, ep_alloc(len), offset, len);
+ *strval = ep_tvb_memdup(tvb, offset, len);
DebugLog((" [3] Return(len) == %u\n", len));
return len;
}
@@ -517,7 +517,7 @@ get_value_length(tvbuff_t *tvb, guint offset, guint *byte_count)
* \return The length in bytes of the entire field
*/
static guint
-get_encoded_strval(tvbuff_t *tvb, guint offset, char **strval)
+get_encoded_strval(tvbuff_t *tvb, guint offset, const char **strval)
{
guint field;
guint length;
@@ -709,7 +709,7 @@ dissect_mmse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint8 pdut,
{
guint offset;
guint8 field = 0;
- char *strval;
+ const char *strval;
guint length;
guint count;
guint8 version = 0x80; /* Default to MMSE 1.0 */
@@ -771,16 +771,17 @@ dissect_mmse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint8 pdut,
version = tvb_get_guint8(tvb, offset++);
if (tree) {
guint8 major, minor;
+ char *vers_string;
major = (version & 0x70) >> 4;
minor = version & 0x0F;
if (minor == 0x0F)
- strval = g_strdup_printf("%u", major);
+ vers_string = g_strdup_printf("%u", major);
else
- strval = g_strdup_printf("%u.%u", major, minor);
+ vers_string = g_strdup_printf("%u.%u", major, minor);
proto_tree_add_string(mmse_tree, hf_mmse_mms_version,
- tvb, offset - 2, 2, strval);
- g_free(strval);
+ tvb, offset - 2, 2, vers_string);
+ g_free(vers_string);
}
break;
case MM_BCC_HDR: /* Encoded-string-value */
@@ -1276,8 +1277,8 @@ dissect_mmse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint8 pdut,
}
offset += length;
} else { /* Literal WSP header encoding */
- guint length2;
- char *strval2;
+ guint length2;
+ const char *strval2;
--offset;
length = get_text_string(tvb, offset, &strval);
diff --git a/epan/dissectors/packet-mount.c b/epan/dissectors/packet-mount.c
index 5866c63152..069b08af74 100644
--- a/epan/dissectors/packet-mount.c
+++ b/epan/dissectors/packet-mount.c
@@ -168,7 +168,8 @@ dissect_mount_dirpath_call(tvbuff_t *tvb, int offset, packet_info *pinfo,
rpc_call_info_value *civ=pinfo->private_data;
if(civ->request && (civ->proc==1)){
- unsigned char *host, *name;
+ const gchar *host;
+ unsigned char *name;
unsigned const char *dir;
int len;
diff --git a/epan/dissectors/packet-nbns.c b/epan/dissectors/packet-nbns.c
index db85150b6d..aabeb6a515 100644
--- a/epan/dissectors/packet-nbns.c
+++ b/epan/dissectors/packet-nbns.c
@@ -277,14 +277,16 @@ get_nbns_name(tvbuff_t *tvb, int offset, int nbns_data_offset,
{
int name_len;
const char *name;
- char *nbname;
+ const char *nbname;
+ char *nbname_buf;
const char *pname;
char cname, cnbname;
int name_type;
char *pname_ret;
size_t index = 0;
- nbname=ep_alloc(NBNAME_BUF_LEN);
+ nbname_buf=ep_alloc(NBNAME_BUF_LEN);
+ nbname = nbname_buf;
name_len = get_dns_name(tvb, offset, nbns_data_offset, &name);
/* OK, now undo the first-level encoding. */
@@ -327,14 +329,14 @@ get_nbns_name(tvbuff_t *tvb, int offset, int nbns_data_offset,
/* Do we have room to store the character? */
if (index < NETBIOS_NAME_LEN) {
/* Yes - store the character. */
- nbname[index++] = cnbname;
+ nbname_buf[index++] = cnbname;
}
}
/* NetBIOS names are supposed to be exactly 16 bytes long. */
if (index != NETBIOS_NAME_LEN) {
/* It's not. */
- g_snprintf(nbname, NBNAME_BUF_LEN, "Illegal NetBIOS name (%lu bytes long)",
+ g_snprintf(nbname_buf, NBNAME_BUF_LEN, "Illegal NetBIOS name (%lu bytes long)",
(unsigned long)index);
goto bad;
}
diff --git a/epan/dissectors/packet-netflow.c b/epan/dissectors/packet-netflow.c
index 632a29d49f..17703b0a3b 100644
--- a/epan/dissectors/packet-netflow.c
+++ b/epan/dissectors/packet-netflow.c
@@ -398,7 +398,7 @@ static struct v9_template *v9_template_get(guint16 id, address * net_src,
guint32 src_id);
static const char * decode_v9_template_types(int type);
-static gchar *getprefix(const guint32 * address, int prefix);
+static const gchar *getprefix(const guint32 * address, int prefix);
static int flow_process_ints(proto_tree * pdutree, tvbuff_t * tvb,
int offset);
@@ -2214,7 +2214,7 @@ dissect_pdu(proto_tree * pdutree, tvbuff_t * tvb, int offset, hdrinfo_t * hdrinf
return (offset - startoffset);
}
-static gchar *
+static const gchar *
getprefix(const guint32 * address, int prefix)
{
guint32 gprefix;
diff --git a/epan/dissectors/packet-stun2.c b/epan/dissectors/packet-stun2.c
index c170358659..6ad4d3b333 100644
--- a/epan/dissectors/packet-stun2.c
+++ b/epan/dissectors/packet-stun2.c
@@ -427,7 +427,7 @@ dissect_stun2_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
break;
proto_tree_add_item(att_tree, stun2_att_ipv4, tvb, offset+4, 4, FALSE);
{
- gchar *ipstr;
+ const gchar *ipstr;
guint32 ip;
ip = tvb_get_ipv4(tvb,offset+4);
ipstr = ip_to_str((guint8*)&ip);
@@ -582,7 +582,7 @@ dissect_stun2_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
PROTO_ITEM_SET_GENERATED(ti);
{
- gchar *ipstr;
+ const gchar *ipstr;
guint32 ip;
guint16 port;
ip = g_htonl(tvb_get_ntohl(tvb, offset+4) ^ transaction_id_first_word);
diff --git a/epan/dissectors/packet-wol.c b/epan/dissectors/packet-wol.c
index 5e42e999ac..52225e51f1 100644
--- a/epan/dissectors/packet-wol.c
+++ b/epan/dissectors/packet-wol.c
@@ -97,7 +97,7 @@ dissect_wol(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
gint offset;
guint8 sync[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
guint8 *mac;
- guint8 *passwd;
+ const guint8 *passwd;
/* Set up structures needed to add the protocol subtree and manage it */
proto_item *ti;
diff --git a/epan/gcp.h b/epan/gcp.h
index daf34cf6ee..b591f30f63 100644
--- a/epan/gcp.h
+++ b/epan/gcp.h
@@ -150,9 +150,9 @@ typedef enum _gcp_wildcard_t {
} gcp_wildcard_t;
typedef struct _gcp_term_t {
- gchar* str;
+ const gchar* str;
- guint8* buffer;
+ const guint8* buffer;
guint len;
guint type;
diff --git a/epan/stream.c b/epan/stream.c
index 434ed23fd1..0802a36f94 100644
--- a/epan/stream.c
+++ b/epan/stream.c
@@ -488,7 +488,7 @@ stream_pdu_fragment_t *stream_add_frag( stream_t *stream, guint32 framenum, guin
tvbuff_t *stream_process_reassembled(
tvbuff_t *tvb, int offset, packet_info *pinfo,
- char *name, const stream_pdu_fragment_t *frag,
+ const char *name, const stream_pdu_fragment_t *frag,
const struct _fragment_items *fit,
gboolean *update_col_infop, proto_tree *tree)
{
diff --git a/epan/stream.h b/epan/stream.h
index 2b4c33744a..aeb18e4cc1 100644
--- a/epan/stream.h
+++ b/epan/stream.h
@@ -123,7 +123,7 @@ extern struct _fragment_data *stream_get_frag_data( const stream_pdu_fragment_t
*/
extern tvbuff_t *stream_process_reassembled(
tvbuff_t *tvb, int offset, packet_info *pinfo,
- char *name, const stream_pdu_fragment_t *frag,
+ const char *name, const stream_pdu_fragment_t *frag,
const struct _fragment_items *fit,
gboolean *update_col_infop, proto_tree *tree);
diff --git a/epan/to_str.c b/epan/to_str.c
index 0f05fc62a8..cfde027c5d 100644
--- a/epan/to_str.c
+++ b/epan/to_str.c
@@ -139,7 +139,7 @@ ether_to_str(const guint8 *ad)
This function is very fast and this function is called a lot.
XXX update the address_to_str stuff to use this function.
*/
-gchar *
+const gchar *
ip_to_str(const guint8 *ad) {
gchar *buf;
diff --git a/epan/to_str.h b/epan/to_str.h
index 147a944f06..48d1e3d2f4 100644
--- a/epan/to_str.h
+++ b/epan/to_str.h
@@ -57,7 +57,7 @@ extern gchar* address_to_str(const address *);
extern void address_to_str_buf(const address *addr, gchar *buf, int buf_len);
extern gchar* bytestring_to_str(const guint8 *, guint32, char);
extern gchar* ether_to_str(const guint8 *);
-extern gchar* ip_to_str(const guint8 *);
+extern const gchar* ip_to_str(const guint8 *);
extern void ip_to_str_buf(const guint8 *ad, gchar *buf, int buf_len);
extern gchar* fc_to_str(const guint8 *);
extern gchar* fcwwn_to_str (const guint8 *);
diff --git a/gtk/capture_if_dlg.c b/gtk/capture_if_dlg.c
index 6c40b60b7f..a7350bf32f 100644
--- a/gtk/capture_if_dlg.c
+++ b/gtk/capture_if_dlg.c
@@ -378,6 +378,7 @@ capture_if_cb(GtkWidget *w _U_, gpointer d _U_)
GSList *curr_ip;
if_addr_t *ip_addr;
GString *if_tool_str = g_string_new("");
+ const gchar *addr_str;
gchar *tmp_str;
if_stat_cache_t *sc;
@@ -563,20 +564,20 @@ capture_if_cb(GtkWidget *w _U_, gpointer d _U_)
switch (ip_addr->type) {
case AT_IPv4:
- tmp_str = ip_to_str((guint8 *)&ip_addr->ip_addr.ip4_addr);
+ addr_str = ip_to_str((guint8 *)&ip_addr->ip_addr.ip4_addr);
break;
case AT_IPv6:
- tmp_str = ip6_to_str((struct e_in6_addr *)&ip_addr->ip_addr.ip6_addr);
+ addr_str = ip6_to_str((struct e_in6_addr *)&ip_addr->ip_addr.ip6_addr);
break;
default:
g_assert_not_reached();
- tmp_str = NULL;
+ addr_str = NULL;
}
- if_dlg_data->ip_lb = gtk_label_new(tmp_str);
+ if_dlg_data->ip_lb = gtk_label_new(addr_str);
gtk_widget_set_sensitive(if_dlg_data->ip_lb, TRUE);
- g_string_append(if_tool_str, tmp_str);
+ g_string_append(if_tool_str, addr_str);
} else {
if_dlg_data->ip_lb = gtk_label_new("unknown");
gtk_widget_set_sensitive(if_dlg_data->ip_lb, FALSE);