Wireshark-dev: Re: [Wireshark-dev] [Wireshark-commits] rev 53489: /trunk/epan/ /trunk/epan/diss

Date: Thu, 21 Nov 2013 19:02:37 -0500 (EST)
Should there be separate APIs or should p_add_proto_data have a memory allocator function and packet_scope() would go to info->pool and everything else (NULL or file_scope) would go to where it is now?
-----Original Message-----
From: Evan Huus <eapache@xxxxxxxxx>
To: Developer support list for Wireshark <wireshark-dev@xxxxxxxxxxxxx>
Sent: Thu, Nov 21, 2013 6:30 pm
Subject: Re: [Wireshark-dev] [Wireshark-commits] rev 53489: /trunk/epan/ /trunk/epan/dissectors/: packet-ethertype.c packet-exported_pdu.c packet-infiniband.c packet-mpls.c packet-pw-eth.c packet-sctp.c /trunk/epan/: exported_pdu.c exported_pdu.h ...

On Thu, Nov 21, 2013 at 3:44 PM, Guy Harris <guy@xxxxxxxxxxxx> wrote:
>
> On Nov 21, 2013, at 12:08 PM, mmann@xxxxxxxxxxxxx wrote:
>
>> http://anonsvn.wireshark.org/viewvc/viewvc.cgi?view=rev&revision=53489
>>
>> User: mmann
>> Date: 2013/11/21 08:08 PM
>>
>> Log:
>> Remove ethertype, mpls_label and ppids from packet_info structure.
>
>>
>> The information was converted to "proto" data within their respective 
dissectors strictly for use in "Decode As".
>
> "proto" data is persistent, so you're allocating a chunk of data for every 
packet in an Ethernet capture, for example, which remains around until the 
capture is closed.  That might amount to a significant additional amount of 
memory for a large capture.
>
> Perhaps what's needed here is a way for dissectors to attach arbitrary data to 
a packet_info structure, with the data being freed when the packet_info 
structure is freed (for example, when the epan_dissect_t containing a 
packet_info structure is freed).

Memory allocated in the pinfo wmem allocator (pinfo->pool) will
automatically be freed when the packet_info struct is freed. It would
be pretty easy to do an analogue of p_add_proto_data using pinfo and
this wmem pool.
___________________________________________________________________________
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