summaryrefslogtreecommitdiff
path: root/epan
diff options
context:
space:
mode:
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-mq.c33
-rw-r--r--epan/dissectors/packet-sdp.c19
-rw-r--r--epan/dissectors/packet-slsk.c9
-rw-r--r--epan/dissectors/packet-tacacs.c12
-rw-r--r--epan/dissectors/packet-ucp.c6
-rw-r--r--epan/dissectors/packet-uma.c6
6 files changed, 28 insertions, 57 deletions
diff --git a/epan/dissectors/packet-mq.c b/epan/dissectors/packet-mq.c
index 52f69d1a39..ec9e7ff7c7 100644
--- a/epan/dissectors/packet-mq.c
+++ b/epan/dissectors/packet-mq.c
@@ -1062,12 +1062,11 @@ dissect_mq_gmo(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gboolean bLi
if (check_col(pinfo->cinfo, COL_INFO))
{
guint8* sQueue;
- sQueue = tvb_get_string(tvb, offset + 24, 48);
+ sQueue = ep_tvb_get_string(tvb, offset + 24, 48);
if (strip_trailing_blanks(sQueue, 48) != 0)
{
col_append_fstr(pinfo->cinfo, COL_INFO, " Q=%s", sQueue);
}
- g_free(sQueue);
}
if (tree)
@@ -1139,12 +1138,11 @@ dissect_mq_pmo(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gboolean bLi
if (check_col(pinfo->cinfo, COL_INFO))
{
guint8* sQueue;
- sQueue = tvb_get_string(tvb, offset + 32, 48);
+ sQueue = ep_tvb_get_string(tvb, offset + 32, 48);
if (strip_trailing_blanks(sQueue, 48) != 0)
{
col_append_fstr(pinfo->cinfo, COL_INFO, " Q=%s", sQueue);
}
- g_free(sQueue);
}
if (tree)
@@ -1436,18 +1434,16 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
guint8* sApplicationName;
guint8* sQueueManager;
- sApplicationName = tvb_get_string(tvb, offset + 48, 28);
+ sApplicationName = ep_tvb_get_string(tvb, offset + 48, 28);
if (strip_trailing_blanks(sApplicationName, 28) != 0)
{
col_append_fstr(pinfo->cinfo, COL_INFO, ": App=%s", sApplicationName);
}
- g_free(sApplicationName);
- sQueueManager = tvb_get_string(tvb, offset, 48);
+ sQueueManager = ep_tvb_get_string(tvb, offset, 48);
if (strip_trailing_blanks(sQueueManager, 48) != 0)
{
col_append_fstr(pinfo->cinfo, COL_INFO, " QM=%s", sQueueManager);
}
- g_free(sQueueManager);
}
@@ -1563,9 +1559,8 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (tree)
{
guint8* sStructId;
- sStructId = tvb_get_string(tvb, offset, 4);
+ sStructId = ep_tvb_get_string(tvb, offset, 4);
ti = proto_tree_add_text(mqroot_tree, tvb, offset, 12, (const char*)sStructId);
- g_free(sStructId);
mq_tree = proto_item_add_subtree(ti, ett_mq_spi_base);
proto_tree_add_item(mq_tree, hf_mq_spi_base_structid, tvb, offset, 4, FALSE);
@@ -1606,9 +1601,8 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
/* Dissect the common part of these structures */
guint8* sStructId;
- sStructId = tvb_get_string(tvb, offset, 4);
+ sStructId = ep_tvb_get_string(tvb, offset, 4);
ti = proto_tree_add_text(mqroot_tree, tvb, offset, -1, "%s", (const char*)sStructId);
- g_free(sStructId);
mq_tree = proto_item_add_subtree(ti, ett_mq_spi_base);
proto_tree_add_item(mq_tree, hf_mq_spi_base_structid, tvb, offset, 4, FALSE);
@@ -1789,12 +1783,11 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (check_col(pinfo->cinfo, COL_INFO))
{
guint8* sChannel;
- sChannel = tvb_get_string(tvb, offset + 24, 20);
+ sChannel = ep_tvb_get_string(tvb, offset + 24, 20);
if (strip_trailing_blanks(sChannel, 20) != 0)
{
col_append_fstr(pinfo->cinfo, COL_INFO, ": CHL=%s", sChannel);
}
- g_free(sChannel);
}
if (tree)
@@ -1856,12 +1849,11 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (check_col(pinfo->cinfo, COL_INFO))
{
guint8* sQueueManager;
- sQueueManager = tvb_get_string(tvb, offset + 48, 48);
+ sQueueManager = ep_tvb_get_string(tvb, offset + 48, 48);
if (strip_trailing_blanks(sQueueManager,48) != 0)
{
col_append_fstr(pinfo->cinfo, COL_INFO, " QM=%s", sQueueManager);
}
- g_free(sQueueManager);
}
if (tree)
@@ -1891,12 +1883,11 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (check_col(pinfo->cinfo, COL_INFO))
{
guint8* sUserId;
- sUserId = tvb_get_string(tvb, offset + 4, 12);
+ sUserId = ep_tvb_get_string(tvb, offset + 4, 12);
if (strip_trailing_blanks(sUserId, 12) != 0)
{
col_append_fstr(pinfo->cinfo, COL_INFO, ": User=%s", sUserId);
}
- g_free(sUserId);
}
if (tree)
@@ -1943,12 +1934,11 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (check_col(pinfo->cinfo, COL_INFO))
{
guint8* sQueue;
- sQueue = tvb_get_string(tvb, offset + 12, 48);
+ sQueue = ep_tvb_get_string(tvb, offset + 12, 48);
if (strip_trailing_blanks(sQueue,48) != 0)
{
col_append_fstr(pinfo->cinfo, COL_INFO, " Obj=%s", sQueue);
}
- g_free(sQueue);
}
if (tree)
@@ -2245,7 +2235,7 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (tMsgProps.iOffsetFormat != 0)
{
guint8* sFormat = NULL;
- sFormat = tvb_get_string(tvb, tMsgProps.iOffsetFormat, 8);
+ sFormat = ep_tvb_get_string(tvb, tMsgProps.iOffsetFormat, 8);
if (strip_trailing_blanks(sFormat, 8) == 0) sFormat = (guint8*)g_strdup("MQNONE");
if (check_col(pinfo->cinfo, COL_INFO))
{
@@ -2255,7 +2245,6 @@ dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
proto_tree_add_string_hidden(tree, hf_mq_md_hidden_lastformat, tvb, tMsgProps.iOffsetFormat, 8, (const char*)sFormat);
}
- g_free(sFormat);
}
if (check_col(pinfo->cinfo, COL_INFO))
{
diff --git a/epan/dissectors/packet-sdp.c b/epan/dissectors/packet-sdp.c
index c784fe2051..84cbefe3c9 100644
--- a/epan/dissectors/packet-sdp.c
+++ b/epan/dissectors/packet-sdp.c
@@ -364,7 +364,7 @@ dissect_sdp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
tokenoffset = 2;
if (hf == hf_unknown)
tokenoffset = 0;
- string = tvb_get_string(tvb, offset + tokenoffset,
+ string = ep_tvb_get_string(tvb, offset + tokenoffset,
linelen - tokenoffset);
sub_ti = proto_tree_add_string_format(sdp_tree,hf,tvb, offset,
linelen, string,
@@ -372,7 +372,6 @@ dissect_sdp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
proto_registrar_get_name(hf),
format_text(string,
linelen - tokenoffset));
- g_free(string);
call_sdp_subdissector(tvb_new_subset(tvb,offset+tokenoffset,
linelen-tokenoffset,
linelen-tokenoffset),
@@ -837,12 +836,11 @@ static void dissect_sdp_session_attribute(tvbuff_t *tvb, proto_item * ti){
hf_session_attribute_field,
tvb, offset, tokenlen, FALSE);
- field_name = tvb_get_string(tvb, offset, tokenlen);
+ field_name = ep_tvb_get_string(tvb, offset, tokenlen);
offset = next_offset + 1;
if (strcmp(field_name, "ipbcp") == 0) {
- g_free(field_name);
offset = tvb_pbrk_guint8(tvb,offset,-1,"0123456789");
@@ -875,7 +873,6 @@ static void dissect_sdp_session_attribute(tvbuff_t *tvb, proto_item * ti){
hf_session_attribute_value,
tvb, offset, -1, FALSE);
- g_free(field_name);
}
}
@@ -967,14 +964,13 @@ dissect_sdp_media(tvbuff_t *tvb, proto_item *ti,
if (strcmp(transport_info->media_proto[transport_info->media_count],
"RTP/AVP") == 0) {
- media_format = tvb_get_string(tvb, offset, tokenlen);
+ media_format = ep_tvb_get_string(tvb, offset, tokenlen);
proto_tree_add_string(sdp_media_tree, hf_media_format, tvb, offset,
tokenlen, val_to_str(atol(media_format), rtp_payload_type_vals, "%u"));
index = transport_info->media[transport_info->media_count].pt_count;
transport_info->media[transport_info->media_count].pt[index] = atol(media_format);
if (index < (SDP_MAX_RTP_PAYLOAD_TYPES-1))
transport_info->media[transport_info->media_count].pt_count++;
- g_free(media_format);
} else {
proto_tree_add_item(sdp_media_tree, hf_media_format, tvb,
offset, tokenlen, FALSE);
@@ -1021,7 +1017,7 @@ static void dissect_sdp_media_attribute(tvbuff_t *tvb, proto_item * ti, transpor
hf_media_attribute_field,
tvb, offset, tokenlen, FALSE);
- field_name = tvb_get_string(tvb, offset, tokenlen);
+ field_name = ep_tvb_get_string(tvb, offset, tokenlen);
offset = next_offset + 1;
proto_tree_add_item(sdp_media_attribute_tree,
@@ -1033,21 +1029,19 @@ static void dissect_sdp_media_attribute(tvbuff_t *tvb, proto_item * ti, transpor
gint *key;
next_offset = tvb_find_guint8(tvb,offset,-1,' ');
- g_free(field_name);
if(next_offset == -1)
return;
tokenlen = next_offset - offset;
- payload_type = tvb_get_string(tvb, offset, tokenlen);
+ payload_type = ep_tvb_get_string(tvb, offset, tokenlen);
offset = next_offset + 1;
next_offset = tvb_find_guint8(tvb,offset,-1,'/');
if(next_offset == -1){
- g_free(payload_type);
return;
}
@@ -1091,8 +1085,7 @@ static void dissect_sdp_media_attribute(tvbuff_t *tvb, proto_item * ti, transpor
else
g_hash_table_insert(transport_info->media[ transport_info->media_count-1 ].rtp_dyn_payload, key, encoding_name);
- g_free(payload_type);
- } else g_free(field_name);
+ }
}
void
diff --git a/epan/dissectors/packet-slsk.c b/epan/dissectors/packet-slsk.c
index b9864a8a82..9b9bb07ce2 100644
--- a/epan/dissectors/packet-slsk.c
+++ b/epan/dissectors/packet-slsk.c
@@ -977,11 +977,10 @@ static void dissect_slsk_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
offset += 4+len;
len = tvb_get_letohl(tvb, offset);
proto_tree_add_uint(slsk_tree, hf_slsk_string_length, tvb, offset, 4, len);
- str = tvb_get_string(tvb, offset+4, len);
+ str = ep_tvb_get_string(tvb, offset+4, len);
proto_tree_add_string_format(slsk_tree, hf_slsk_connection_type, tvb, offset+4, len, str,
"Connection Type: %s (Char: %s)", connection_type(str),
format_text(str, len));
- g_free(str);
offset += 4+len;
}
else if (check_slsk_format(tvb, offset, "issiii")) {
@@ -998,11 +997,10 @@ static void dissect_slsk_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
offset += 4+len;
len = tvb_get_letohl(tvb, offset);
proto_tree_add_uint(slsk_tree, hf_slsk_string_length, tvb, offset, 4, len);
- str = tvb_get_string(tvb, offset+4, len);
+ str = ep_tvb_get_string(tvb, offset+4, len);
proto_tree_add_string_format(slsk_tree, hf_slsk_connection_type, tvb, offset+4, len, str,
"Connection Type: %s (Char: %s)", connection_type(str),
format_text(str, len));
- g_free(str);
offset += 4+len;
proto_tree_add_item(slsk_tree, hf_slsk_ip, tvb, offset, 4, FALSE);
offset += 4;
@@ -2359,11 +2357,10 @@ static void dissect_slsk_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
offset += 4+len;
len = tvb_get_letohl(tvb, offset);
proto_tree_add_uint(slsk_tree, hf_slsk_string_length, tvb, offset, 4, len);
- str = tvb_get_string(tvb, offset+4, len);
+ str = ep_tvb_get_string(tvb, offset+4, len);
proto_tree_add_string_format(slsk_tree, hf_slsk_connection_type, tvb, offset+4, len, str,
"Connection Type: %s (Char: %s)", connection_type(str),
format_text(str, len));
- g_free(str);
offset += 4+len;
proto_tree_add_uint(slsk_tree, hf_slsk_token, tvb, offset, 4, tvb_get_letohl(tvb, offset));
offset += 4;
diff --git a/epan/dissectors/packet-tacacs.c b/epan/dissectors/packet-tacacs.c
index ba932bfe3c..f7a2435aa2 100644
--- a/epan/dissectors/packet-tacacs.c
+++ b/epan/dissectors/packet-tacacs.c
@@ -574,10 +574,9 @@ dissect_tacplus_body_authen_req_cont( tvbuff_t *tvb, proto_tree *tree )
val=tvb_get_ntohs( tvb, AUTHEN_C_USER_LEN_OFF );
proto_tree_add_text( tree, tvb, AUTHEN_C_USER_LEN_OFF, 2 , "User length: %d", val );
if( val ){
- buff=tvb_get_string( tvb, var_off, val );
+ buff=ep_tvb_get_string( tvb, var_off, val );
proto_tree_add_text( tree, tvb, var_off, val, "User: %s", buff );
var_off+=val;
- g_free(buff);
}
val=tvb_get_ntohs( tvb, AUTHEN_C_DATA_LEN_OFF );
@@ -612,10 +611,9 @@ dissect_tacplus_body_authen_rep( tvbuff_t *tvb, proto_tree *tree )
proto_tree_add_text( tree, tvb, AUTHEN_R_SRV_MSG_LEN_OFF, 2 ,
"Server message length: %d", val );
if( val ) {
- buff=tvb_get_string(tvb, var_off, val );
+ buff=ep_tvb_get_string(tvb, var_off, val );
proto_tree_add_text(tree, tvb, var_off, val, "Server message: %s", buff );
var_off+=val;
- g_free(buff);
}
val=tvb_get_ntohs(tvb, AUTHEN_R_DATA_LEN_OFF );
@@ -737,11 +735,10 @@ dissect_tacplus_body_acct_rep( tvbuff_t* tvb, proto_tree *tree )
proto_tree_add_text( tree, tvb, ACCT_R_SRV_MSG_LEN_OFF, 2 ,
"Server message length: %d", val );
if( val ) {
- buff=tvb_get_string( tvb, var_off, val );
+ buff=ep_tvb_get_string( tvb, var_off, val );
proto_tree_add_text( tree, tvb, var_off,
val, "Server message: %s", buff );
var_off+=val;
- g_free(buff);
}
/* Data */
@@ -749,10 +746,9 @@ dissect_tacplus_body_acct_rep( tvbuff_t* tvb, proto_tree *tree )
proto_tree_add_text( tree, tvb, ACCT_R_DATA_LEN_OFF, 2 ,
"Data length: %d", val );
if( val ) {
- buff= tvb_get_string( tvb, var_off, val );
+ buff= ep_tvb_get_string( tvb, var_off, val );
proto_tree_add_text( tree, tvb, var_off,
val, "Data: %s", buff );
- g_free(buff);
}
}
diff --git a/epan/dissectors/packet-ucp.c b/epan/dissectors/packet-ucp.c
index 6ff5490dd1..b9dece1f81 100644
--- a/epan/dissectors/packet-ucp.c
+++ b/epan/dissectors/packet-ucp.c
@@ -785,12 +785,11 @@ ucp_handle_int(proto_tree *tree, tvbuff_t *tvb, int field, int *offset)
tvb_ensure_bytes_exist(tvb, *offset, len + 1);
} else
len = idx - *offset;
- strval = tvb_get_string(tvb, *offset, len);
+ strval = ep_tvb_get_string(tvb, *offset, len);
if (len > 0) {
intval = atoi(strval);
proto_tree_add_uint(tree, field, tvb, *offset, idx, intval);
}
- g_free(strval);
*offset += len;
if (idx != -1)
*offset += 1; /* skip terminating '/' */
@@ -812,14 +811,13 @@ ucp_handle_time(proto_tree *tree, tvbuff_t *tvb, int field, int *offset)
tvb_ensure_bytes_exist(tvb, *offset, len + 1);
} else
len = idx - *offset;
- strval = tvb_get_string(tvb, *offset, len);
+ strval = ep_tvb_get_string(tvb, *offset, len);
if (len > 0) {
tval = ucp_mktime(strval);
tmptime.secs = tval;
tmptime.nsecs = 0;
proto_tree_add_time(tree, field, tvb, *offset, idx, &tmptime);
}
- g_free(strval);
*offset += len;
if (idx != -1)
*offset += 1; /* skip terminating '/' */
diff --git a/epan/dissectors/packet-uma.c b/epan/dissectors/packet-uma.c
index af823c5ff1..12a4bbb888 100644
--- a/epan/dissectors/packet-uma.c
+++ b/epan/dissectors/packet-uma.c
@@ -949,9 +949,8 @@ dissect_uma_IE(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset)
break;
case 10: /* UNC SGW Fully Qualified Domain/Host Name */
if ( ie_len > 0){
- string = tvb_get_string(tvb, ie_offset, ie_len);
+ string = ep_tvb_get_string(tvb, ie_offset, ie_len);
proto_tree_add_string(urr_ie_tree, hf_uma_urr_FQDN, tvb, ie_offset, ie_len, string);
- g_free(string);
}else{
proto_tree_add_text(urr_ie_tree,tvb,offset,1,"FQDN not present");
}
@@ -1352,9 +1351,8 @@ dissect_uma_IE(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset)
break;
case 98: /* UNC Fully Qualified Domain/Host Name */
if ( ie_len > 0){
- string = tvb_get_string(tvb, ie_offset, ie_len);
+ string = ep_tvb_get_string(tvb, ie_offset, ie_len);
proto_tree_add_string(urr_ie_tree, hf_uma_unc_FQDN, tvb, ie_offset, ie_len, string);
- g_free(string);
}else{
proto_tree_add_text(urr_ie_tree,tvb,offset,1,"UNC FQDN not present");
}