aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2005-08-10 14:17:27 +0000
committerRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2005-08-10 14:17:27 +0000
commitefa1f430059f40d054d9f85fb0869583ffb76d2b (patch)
treef6a0350512578762858d1a0071abe17ae9a31ac6
parentb4441e6748170f63f19a3d0467d301f5852f161c (diff)
convert some tvb_fake_unicode() to tvb_get_ephemeral_faked_unicode()
svn path=/trunk/; revision=15272
-rw-r--r--epan/dissectors/packet-dcerpc-nt.c6
-rw-r--r--epan/dissectors/packet-gsm_sms.c5
-rw-r--r--epan/dissectors/packet-kerberos.c3
-rw-r--r--epan/dissectors/packet-ms-mms.c41
-rw-r--r--epan/dissectors/packet-ntlmssp.c6
-rw-r--r--epan/dissectors/packet-per.c3
-rw-r--r--epan/dissectors/packet-srvloc.c9
7 files changed, 19 insertions, 54 deletions
diff --git a/epan/dissectors/packet-dcerpc-nt.c b/epan/dissectors/packet-dcerpc-nt.c
index 7033a80473..2f1eaa45fe 100644
--- a/epan/dissectors/packet-dcerpc-nt.c
+++ b/epan/dissectors/packet-dcerpc-nt.c
@@ -986,7 +986,6 @@ dissect_ndr_uint16s(tvbuff_t *tvb, gint offset, packet_info *pinfo,
/*
* Helper routines for dissecting NDR strings
*/
-
void cb_wstr_postprocess(packet_info *pinfo, proto_tree *tree _U_,
proto_item *item, tvbuff_t *tvb,
int start_offset, int end_offset,
@@ -1014,7 +1013,7 @@ void cb_wstr_postprocess(packet_info *pinfo, proto_tree *tree _U_,
* some way we can get that string, rather than duplicating the
* efforts of that routine?
*/
- s = tvb_fake_unicode(
+ s = tvb_get_ephemeral_faked_unicode(
tvb, start_offset + 12, (end_offset - start_offset - 12) / 2,
TRUE);
@@ -1049,10 +1048,9 @@ void cb_wstr_postprocess(packet_info *pinfo, proto_tree *tree _U_,
dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
dcerpc_call_value *dcv = (dcerpc_call_value *)di->call_data;
+/* FIXME EPHEMERAL need to get rid of the g_strdup() and later g_free() */
dcv->private_data = g_strdup(s);
}
-
- g_free(s);
}
void cb_str_postprocess(packet_info *pinfo, proto_tree *tree _U_,
diff --git a/epan/dissectors/packet-gsm_sms.c b/epan/dissectors/packet-gsm_sms.c
index fff7a72a3f..266dbe43c6 100644
--- a/epan/dissectors/packet-gsm_sms.c
+++ b/epan/dissectors/packet-gsm_sms.c
@@ -1852,10 +1852,9 @@ dis_field_ud(tvbuff_t *tvb, proto_tree *tree, guint32 offset, guint32 length, gb
}
else if (ucs2)
{
- /* tvb_fake_unicode takes the lengt in number of guint16's */
- ustr = tvb_fake_unicode(tvb, offset, (length>>1), FALSE);
+ /* tvb_get_ephemeral_faked_unicode takes the lengt in number of guint16's */
+ ustr = tvb_get_ephemeral_faked_unicode(tvb, offset, (length>>1), FALSE);
proto_tree_add_text(subtree, tvb, offset, length, "%s", ustr);
- g_free(ustr);
}
}
}
diff --git a/epan/dissectors/packet-kerberos.c b/epan/dissectors/packet-kerberos.c
index 740b2bd35b..6abd9fe14e 100644
--- a/epan/dissectors/packet-kerberos.c
+++ b/epan/dissectors/packet-kerberos.c
@@ -2323,9 +2323,8 @@ dissect_krb5_PAC_CLIENT_INFO_TYPE(packet_info *pinfo _U_, proto_tree *parent_tre
offset+=2;
/* client name */
- name=tvb_fake_unicode(tvb, offset, namelen/2, TRUE);
+ name=tvb_get_ephemeral_faked_unicode(tvb, offset, namelen/2, TRUE);
proto_tree_add_string(tree, hf_krb_pac_clientname, tvb, offset, namelen, name);
- g_free(name);
offset+=namelen;
return offset;
diff --git a/epan/dissectors/packet-ms-mms.c b/epan/dissectors/packet-ms-mms.c
index 91676db384..8d7a5e92fd 100644
--- a/epan/dissectors/packet-ms-mms.c
+++ b/epan/dissectors/packet-ms-mms.c
@@ -787,7 +787,7 @@ void dissect_client_transport_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree
offset += 4;
/* Extract and show the string in tree and info column */
- transport_info = tvb_fake_unicode(tvb, offset, (length_remaining - 20)/2, TRUE);
+ transport_info = tvb_get_ephemeral_faked_unicode(tvb, offset, (length_remaining - 20)/2, TRUE);
proto_tree_add_string_format(tree, hf_msmms_command_client_transport_info, tvb,
offset, length_remaining-20,
@@ -836,9 +836,6 @@ void dissect_client_transport_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree
msmms_data_add_address(pinfo, &addr, pt, port);
}
}
-
- /* Can now free this string */
- g_free(transport_info);
}
/* Dissect server data */
@@ -902,7 +899,7 @@ void dissect_server_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
/* Server version string */
if (server_version_length > 1)
{
- server_version = tvb_fake_unicode(tvb, offset, server_version_length, TRUE);
+ server_version = tvb_get_ephemeral_faked_unicode(tvb, offset, server_version_length, TRUE);
/* Server version string */
proto_tree_add_string(tree, hf_msmms_command_server_version, tvb,
@@ -914,10 +911,6 @@ void dissect_server_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
col_append_fstr(pinfo->cinfo, COL_INFO, " (version='%s')",
format_text(server_version, server_version_length));
}
-
-
- /* Can now free this string */
- g_free(server_version);
}
offset += (server_version_length*2);
@@ -925,43 +918,34 @@ void dissect_server_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
/* Tool version string */
if (tool_version_length > 1)
{
- tool_version = tvb_fake_unicode(tvb, offset, tool_version_length, TRUE);
+ tool_version = tvb_get_ephemeral_faked_unicode(tvb, offset, tool_version_length, TRUE);
/* Server version string */
proto_tree_add_string(tree, hf_msmms_command_tool_version, tvb,
offset, tool_version_length*2,
format_text(tool_version, tool_version_length));
-
- /* Can now free this string */
- g_free(tool_version);
}
offset += (tool_version_length*2);
/* Download update player url string */
if (download_update_player_length > 1)
{
- download_update_player = tvb_fake_unicode(tvb, offset, download_update_player_length, TRUE);
+ download_update_player = tvb_get_ephemeral_faked_unicode(tvb, offset, download_update_player_length, TRUE);
proto_tree_add_string(tree, hf_msmms_command_update_url, tvb,
offset, download_update_player_length*2,
download_update_player);
-
- /* Can now free this string */
- g_free(download_update_player);
}
offset += (download_update_player_length*2);
/* Password encryption type string */
if (password_encryption_type_length > 1)
{
- password_encryption_type = tvb_fake_unicode(tvb, offset, password_encryption_type_length, TRUE);
+ password_encryption_type = tvb_get_ephemeral_faked_unicode(tvb, offset, password_encryption_type_length, TRUE);
proto_tree_add_string(tree, hf_msmms_command_password_type, tvb,
offset, password_encryption_type_length*2,
password_encryption_type);
-
- /* Can now free this string */
- g_free(password_encryption_type);
}
offset += (password_encryption_type_length*2);
@@ -984,7 +968,7 @@ void dissect_client_player_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t
offset += 4;
/* Extract and show the string in tree and info column */
- player_info = tvb_fake_unicode(tvb, offset, (length_remaining - 12)/2, TRUE);
+ player_info = tvb_get_ephemeral_faked_unicode(tvb, offset, (length_remaining - 12)/2, TRUE);
proto_tree_add_string(tree, hf_msmms_command_client_player_info, tvb,
offset, length_remaining-12,
@@ -995,9 +979,6 @@ void dissect_client_player_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t
col_append_fstr(pinfo->cinfo, COL_INFO, " (%s)",
format_text(player_info, (length_remaining - 12)/2));
}
-
- /* Can now free this string */
- g_free(player_info);
}
/* Dissect info about where client wants to start playing from */
@@ -1101,7 +1082,7 @@ void dissect_request_server_file(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
offset += 4;
/* File path on server */
- server_file = tvb_fake_unicode(tvb, offset, (length_remaining - 16)/2, TRUE);
+ server_file = tvb_get_ephemeral_faked_unicode(tvb, offset, (length_remaining - 16)/2, TRUE);
proto_tree_add_string(tree, hf_msmms_command_server_file, tvb,
offset, length_remaining-16,
@@ -1112,9 +1093,6 @@ void dissect_request_server_file(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
col_append_fstr(pinfo->cinfo, COL_INFO, " (%s)",
format_text(server_file, (length_remaining - 16)/2));
}
-
- /* Can now free this string */
- g_free(server_file);
}
/* Dissect media details from server */
@@ -1207,14 +1185,11 @@ void dissect_transport_info_response(tvbuff_t *tvb, proto_tree *tree,
offset += 4;
/* Read this strange string */
- strange_string = tvb_fake_unicode(tvb, offset, (length_remaining - 12)/2, TRUE);
+ strange_string = tvb_get_ephemeral_faked_unicode(tvb, offset, (length_remaining - 12)/2, TRUE);
proto_tree_add_string(tree, hf_msmms_command_strange_string, tvb,
offset, length_remaining-12,
strange_string);
-
- /* Can now free this string */
- g_free(strange_string);
}
/* Media stream MBR selector */
diff --git a/epan/dissectors/packet-ntlmssp.c b/epan/dissectors/packet-ntlmssp.c
index 1a48a3ef7f..7181aa8aea 100644
--- a/epan/dissectors/packet-ntlmssp.c
+++ b/epan/dissectors/packet-ntlmssp.c
@@ -694,14 +694,14 @@ dissect_ntlmv2_response(tvbuff_t *tvb, proto_tree *tree, int offset, int len)
/* Dissect name */
if (name_len > 0) {
- name = tvb_fake_unicode(
+ name = tvb_get_ephemeral_faked_unicode(
tvb, offset, name_len / 2, TRUE);
proto_tree_add_text(
name_tree, tvb, offset, name_len,
"Name: %s", name);
} else
- name = g_strdup("NULL");
+ name = "NULL";
if (name_type == 0)
proto_item_append_text(
@@ -714,8 +714,6 @@ dissect_ntlmv2_response(tvbuff_t *tvb, proto_tree *tree, int offset, int len)
val_to_str(name_type, ntlm_name_types,
"Unknown"), name);
- g_free(name);
-
offset += name_len;
proto_item_set_len(name_item, name_len + 4);
diff --git a/epan/dissectors/packet-per.c b/epan/dissectors/packet-per.c
index e6c29ec986..f5007ddc9a 100644
--- a/epan/dissectors/packet-per.c
+++ b/epan/dissectors/packet-per.c
@@ -484,10 +484,9 @@ dissect_per_BMPString(tvbuff_t *tvb, guint32 offset, packet_info *pinfo, proto_t
length=1024;
}
- str = tvb_fake_unicode(tvb, offset>>3, length, FALSE);
+ str = tvb_get_ephemeral_faked_unicode(tvb, offset>>3, length, FALSE);
proto_tree_add_string(tree, hf_index, tvb, offset>>3, length*2, str);
- g_free(str);
offset+=(length<<3)*2;
diff --git a/epan/dissectors/packet-srvloc.c b/epan/dissectors/packet-srvloc.c
index c4dee7ee27..56dd72ce6c 100644
--- a/epan/dissectors/packet-srvloc.c
+++ b/epan/dissectors/packet-srvloc.c
@@ -414,10 +414,9 @@ add_v1_string(proto_tree *tree, int hf, tvbuff_t *tvb, int offset, int length,
switch (encoding) {
case CHARSET_ISO_10646_UCS_2:
- unicode_str = tvb_fake_unicode(tvb, offset, length/2, FALSE);
+ unicode_str = tvb_get_ephemeral_faked_unicode(tvb, offset, length/2, FALSE);
proto_tree_add_string(tree, hf, tvb, offset, length,
unicode_str);
- g_free(unicode_str);
break;
default:
@@ -508,12 +507,10 @@ attr_list(proto_tree *tree, int hf, tvbuff_t *tvb, int offset, int length,
case CHARSET_ISO_10646_UCS_2:
- tmp = tvb_fake_unicode(tvb, offset, length/2, FALSE);
+ tmp = tvb_get_ephemeral_faked_unicode(tvb, offset, length/2, FALSE);
type_len = strcspn(tmp, "=");
- g_free(tmp);
- attr_type = tvb_fake_unicode(tvb, offset+2, type_len-1, FALSE);
+ attr_type = tvb_get_ephemeral_faked_unicode(tvb, offset+2, type_len-1, FALSE);
proto_tree_add_string(tree, hf, tvb, offset, type_len*2, attr_type);
- g_free(attr_type);
i=1;
for (foffset = offset + ((type_len*2)+2); foffset<length; foffset += 2) {