Wireshark-dev: Re: [Wireshark-dev] [Wireshark-commits] rev 52106: /trunk/epan/ /trunk/epan/diss
From: Gerald Combs <gerald@xxxxxxxxxxxxx>
Date: Tue, 17 Sep 2013 11:54:58 -0700
On 9/17/13 11:37 AM, Jeff Morriss wrote:
> On 09/16/13 17:15, gerald@xxxxxxxxxxxxx wrote:
>> http://anonsvn.wireshark.org/viewvc/viewvc.cgi?view=rev&revision=52106
>>
>> User: gerald
>> Date: 2013/09/16 02:15 PM
>>
>> Log:
>>   Convert each of the address.h macros to inline functions.
>>
>>   Document each function. Note that we now call tvb_get_ptr() before
>>   modifying the address in tvb_set_address() and tvb_set_address_hf().
>> The
>>   caller doesn't have to worry about doing that any more. Add
>>   add_address_to_hash64().
> 
> Hmm, the complication in doing this is that it would seem that some
> compilers (in this case Sun's) want to resolve the symbols in those
> inline functions even in modules the inline functions are not used in.
> From the Solaris buildbot's log:
> 
>>   CCLD   dumpcap
>> Undefined            first referenced
>>  symbol                  in file
>> se_alloc                            dumpcap-capture_opts.o
>> tvb_get_ptr                         dumpcap-capture_opts.o
>> ld: fatal: symbol referencing errors. No output written to .libs/dumpcap
> 
> I can't imagine we want to link dumpcap with libwireshark but I have
> another idea of how to solve this problem.

I switched TVB_SET_ADDRESS, TVB_SET_ADDRESS_HF, and SE_COPY_ADDRESS back
to pure macros in r52122. It might make more sense to move them to
tvbuff.h and emem.h, however.