diff options
author | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2005-07-28 09:47:28 +0000 |
---|---|---|
committer | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2005-07-28 09:47:28 +0000 |
commit | 0d7a2abbc76409c342cc283ece9f2947aec643b7 (patch) | |
tree | 5400640b4e3e95fc3a1c8358828d8afab3a004f0 /epan/dissectors | |
parent | 7035a45c8f7787ae3a4fed454f08589dea6abb20 (diff) |
some more memification of tvb_get_string() no obvious memleaks fixed this time :-(
svn path=/trunk/; revision=15131
Diffstat (limited to 'epan/dissectors')
-rw-r--r-- | epan/dissectors/packet-dcm.c | 5 | ||||
-rw-r--r-- | epan/dissectors/packet-dhcpv6.c | 6 | ||||
-rw-r--r-- | epan/dissectors/packet-edonkey.c | 3 | ||||
-rw-r--r-- | epan/dissectors/packet-fcdns.c | 3 | ||||
-rw-r--r-- | epan/dissectors/packet-fcswils.c | 6 | ||||
-rw-r--r-- | epan/dissectors/packet-image-gif.c | 6 | ||||
-rw-r--r-- | epan/dissectors/packet-smb.c | 3 | ||||
-rw-r--r-- | epan/dissectors/packet-sna.c | 3 | ||||
-rw-r--r-- | epan/dissectors/packet-telnet.c | 3 |
9 files changed, 11 insertions, 27 deletions
diff --git a/epan/dissectors/packet-dcm.c b/epan/dissectors/packet-dcm.c index a9bb64c91e..b9460daf19 100644 --- a/epan/dissectors/packet-dcm.c +++ b/epan/dissectors/packet-dcm.c @@ -492,7 +492,7 @@ dcm_setSyntax(dcmItem_t *di, char *name) if (di->xfer != dcm_xfer_unk) g_free(di->xfer); /* free prev allocated xfer */ di->syntax = 0; - di->xfer = name; + di->xfer = g_strdup(name); if (0 == *name) return; /* this would be faster to skip the common parts, and have a FSA to * find the syntax. @@ -660,8 +660,7 @@ dissect_dcm_assoc(dcmState_t *dcm_data, proto_item *ti, tvbuff_t *tvb, int offse if (ti) proto_tree_add_item(dcm_tree, hf_dcm_pdi_syntax, tvb, offset, len > 65 ? 65 : len, FALSE); if (reply && di && di->valid) { - /* setSyntax now free's existing name, if being reset */ - name = tvb_get_string(tvb, offset, len); + name = ep_tvb_get_string(tvb, offset, len); dcm_setSyntax(di, name); } reply = 0; diff --git a/epan/dissectors/packet-dhcpv6.c b/epan/dissectors/packet-dhcpv6.c index edaaef6410..e5f5db2905 100644 --- a/epan/dissectors/packet-dhcpv6.c +++ b/epan/dissectors/packet-dhcpv6.c @@ -580,11 +580,10 @@ dhcpv6_option(tvbuff_t *tvb, packet_info *pinfo, proto_tree *bp_tree, status_code); if (optlen - 2 > 0) { - status_message = tvb_get_string(tvb, off + 2, optlen - 2); + status_message = ep_tvb_get_string(tvb, off + 2, optlen - 2); proto_tree_add_text(subtree, tvb, off + 2, optlen - 2, "Status Message: %s", status_message); - g_free(status_message); } } break; @@ -728,9 +727,8 @@ dhcpv6_option(tvbuff_t *tvb, packet_info *pinfo, proto_tree *bp_tree, break; case OPTION_TIME_ZONE: if (optlen > 0) { - buf = tvb_get_string(tvb, off, optlen); + buf = ep_tvb_get_string(tvb, off, optlen); proto_tree_add_text(subtree, tvb, off, optlen, "time-zone: %s", buf); - g_free(buf); } break; case OPTION_LIFETIME: diff --git a/epan/dissectors/packet-edonkey.c b/epan/dissectors/packet-edonkey.c index d785efa935..03d2ddda97 100644 --- a/epan/dissectors/packet-edonkey.c +++ b/epan/dissectors/packet-edonkey.c @@ -292,9 +292,8 @@ static guint8 edonkey_metatag_name_get_type(tvbuff_t *tvb, gint start, gint leng if (match_strval(special_tagtype, edonkey_special_tags) == NULL) { gint index; - tag_name = tvb_get_string(tvb, start, length); + tag_name = ep_tvb_get_string(tvb, start, length); index = lookup_str_index(tag_name, length, edonkey_special_tags); - g_free(tag_name); if (index < 0) return EDONKEY_STAG_UNKNOWN; else return edonkey_special_tags[index].value; diff --git a/epan/dissectors/packet-fcdns.c b/epan/dissectors/packet-fcdns.c index 98ba7e7f62..f3765350d1 100644 --- a/epan/dissectors/packet-fcdns.c +++ b/epan/dissectors/packet-fcdns.c @@ -1143,7 +1143,7 @@ static guint8 * zonenm_to_str (tvbuff_t *tvb, gint offset) { int len = tvb_get_guint8 (tvb, offset); - return tvb_get_string (tvb, offset+4, len); + return ep_tvb_get_string (tvb, offset+4, len); } static void @@ -1186,7 +1186,6 @@ dissect_fcdns_zone_mbr (tvbuff_t *tvb, proto_tree *zmbr_tree, int offset) str = zonenm_to_str (tvb, offset+4); proto_tree_add_string (zmbr_tree, hf_fcdns_zone_mbrid, tvb, offset+4, idlen, str); - g_free (str); break; default: proto_tree_add_string (zmbr_tree, hf_fcdns_zone_mbrid, tvb, diff --git a/epan/dissectors/packet-fcswils.c b/epan/dissectors/packet-fcswils.c index ed12efd0dd..85dacacad5 100644 --- a/epan/dissectors/packet-fcswils.c +++ b/epan/dissectors/packet-fcswils.c @@ -444,7 +444,7 @@ static guint8 * zonenm_to_str (tvbuff_t *tvb, gint offset) { int len = tvb_get_guint8 (tvb, offset); - return tvb_get_string (tvb, offset+4, len); + return ep_tvb_get_string (tvb, offset+4, len); } /* Offset points to the start of the zone object */ @@ -1042,7 +1042,6 @@ dissect_swils_zone_mbr (tvbuff_t *tvb, proto_tree *zmbr_tree, int offset) str = zonenm_to_str (tvb, offset+4); proto_tree_add_string (zmbr_tree, hf_swils_zone_mbrid, tvb, offset+4, idlen, str); - g_free (str); break; case FC_SWILS_ZONEMBR_WWN_LUN: proto_tree_add_string (zmbr_tree, hf_swils_zone_mbrid, tvb, @@ -1094,7 +1093,6 @@ dissect_swils_zone_obj (tvbuff_t *tvb, proto_tree *zobj_tree, int offset) str = zonenm_to_str (tvb, offset+4); proto_tree_add_string (zobj_tree, hf_swils_zone_objname, tvb, offset+4, ZONENAME_LEN (tvb, offset+4), str); - g_free (str); numrec = tvb_get_ntohl (tvb, offset+4+ZONENAME_LEN (tvb, offset+4)); proto_tree_add_text (zobj_tree, tvb, @@ -1141,7 +1139,6 @@ dissect_swils_mergereq (tvbuff_t *tvb, proto_tree *mr_tree, guint8 isreq) proto_tree_add_string (mr_tree, hf_swils_zone_activezonenm, tvb, offset+4, ZONENAME_LEN (tvb, offset+4), str); - g_free (str); /* objlistlen gives the size of the active zoneset object list */ objlistlen = zonesetlen - ZONENAME_LEN (tvb, offset+4); @@ -1289,7 +1286,6 @@ dissect_swils_sfc (tvbuff_t *tvb, proto_tree *sfc_tree, guint8 isreq) proto_tree_add_string (sfc_tree, hf_swils_sfc_zonenm, tvb, offset+4, ZONENAME_LEN (tvb, offset+4), str); - g_free (str); /* objlistlen gives the size of the active zoneset object list */ objlistlen = zonesetlen - ZONENAME_LEN (tvb, offset+4); diff --git a/epan/dissectors/packet-image-gif.c b/epan/dissectors/packet-image-gif.c index 9fec930740..4eefe72635 100644 --- a/epan/dissectors/packet-image-gif.c +++ b/epan/dissectors/packet-image-gif.c @@ -168,7 +168,7 @@ dissect_gif(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) guint8 color_resolution; guint8 image_bpp; guint tvb_len = tvb_reported_length(tvb); - char *str = tvb_get_string(tvb, 0, 6); + char *str = ep_tvb_get_string(tvb, 0, 6); guint8 version; /* Check whether we're processing a GIF object */ @@ -181,7 +181,6 @@ dissect_gif(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) } else { /* Not a GIF image! */ version = GIF_ERROR; - g_free(str); return; } /* Add summary to INFO column if it is enabled */ @@ -196,7 +195,6 @@ dissect_gif(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) if (tree) { ti = proto_tree_add_item(tree, proto_gif, tvb, 0, -1, TRUE); proto_item_append_text(ti, ", Version: %s", str); - g_free(str); gif_tree = proto_item_add_subtree(ti, ett_gif); /* GIF signature */ ti = proto_tree_add_item(gif_tree, hf_version, tvb, 0, 6, TRUE); @@ -440,8 +438,6 @@ dissect_gif(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) } } /* while */ } - else - g_free(str); } diff --git a/epan/dissectors/packet-smb.c b/epan/dissectors/packet-smb.c index 988d743493..b33c783aff 100644 --- a/epan/dissectors/packet-smb.c +++ b/epan/dissectors/packet-smb.c @@ -10273,9 +10273,8 @@ dissect_4_2_16_2(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, /* EA name */ - name = tvb_get_string(tvb, offset, name_len); + name = ep_tvb_get_string(tvb, offset, name_len); proto_item_append_text(item, ": %s", format_text(name, strlen(name))); - g_free(name); CHECK_BYTE_COUNT_SUBR(name_len + 1); proto_tree_add_item( diff --git a/epan/dissectors/packet-sna.c b/epan/dissectors/packet-sna.c index bc12508de4..a9f1f65dcb 100644 --- a/epan/dissectors/packet-sna.c +++ b/epan/dissectors/packet-sna.c @@ -2421,10 +2421,9 @@ dissect_control_0e(tvbuff_t *tvb, proto_tree *tree) if (len <= 0) return; - buf = tvb_get_string(tvb, 3, len); + buf = ep_tvb_get_string(tvb, 3, len); EBCDIC_to_ASCII(buf, len); proto_tree_add_string(tree, hf_sna_control_0e_value, tvb, 3, len, buf); - g_free(buf); } static void diff --git a/epan/dissectors/packet-telnet.c b/epan/dissectors/packet-telnet.c index 4ccbaa64e5..53c4dad07a 100644 --- a/epan/dissectors/packet-telnet.c +++ b/epan/dissectors/packet-telnet.c @@ -417,9 +417,8 @@ dissect_comport_subopt(packet_info *pinfo _U_, const char *optname, tvbuff_t *tv if (len == 0) { proto_tree_add_text(tree, tvb, offset, 1, "%s Requests Signature",source); } else { - guint8 *sig = tvb_get_string(tvb, offset + 1, len); + guint8 *sig = ep_tvb_get_string(tvb, offset + 1, len); proto_tree_add_text(tree, tvb, offset, 1 + len, "%s Signature: %s",source, sig); - g_free(sig); } break; |