Wireshark-dev: Re: [Wireshark-dev] [Wireshark-commits] rev 51395: /trunk/epan/dissectors/ /trun

From: Evan Huus <eapache@xxxxxxxxx>
Date: Mon, 19 Aug 2013 07:24:44 -0400
On 2013-08-19, at 6:42 AM, Pascal Quantin <pascal.quantin@xxxxxxxxx> wrote:

2013/8/17 Jakub Zawadzki <darkjames-ws@xxxxxxxxxxxx>
By the way from ROHC code:

2296             data = "" *)ep_alloc(len);
2299             next_tvb = tvb_new_child_real_data(tvb, data, len, len);
2300             add_new_data_source(pinfo, next_tvb, "Payload");

It's very bad idea to use ep-allocated tvb as data source.

Hi Jakub,

I fixed several dissectors using ep allocated memory for data source in r51423. I hope I did not miss any.

That's great Pascal. However, there are some where if an exception gets thrown before the tvb_set_free call then it could be a memory leak. If it is not possible to move the set_free to immediately after the allocation (so there is nothing to throw an exception) then I suggest allocating in wmem's pinfo->pool instead.

Cheers,
Evan

Best regards,
Pascal.
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev@xxxxxxxxxxxxx>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
            mailto:wireshark-dev-request@xxxxxxxxxxxxx?subject=unsubscribe