Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] Wireshark ABI compatibilty in release branches

From: Bálint Réczey <balint@xxxxxxxxxxxxxxx>
Date: Mon, 21 Jan 2013 22:12:58 +0100
Hi,

2013/1/20 Jaap Keuter <jaap.keuter@xxxxxxxxx>
On 01/18/2013 08:05 PM, Evan Huus wrote:
> On Fri, Jan 18, 2013 at 1:12 PM, Bálint Réczey <balint@xxxxxxxxxxxxxxx> wrote:
>> Hi,
>>
>> I think we did a very good job in maintaining backward compatibility
>> in  1.6.x and 1.8.x releases [1].
>>
>> In  >1.6.1 there were no backward incompatible change in the 1.6.x
>> branch and on 1.8.x branch there were only one [2].
>> It is caused by a fix [3] for bug 7348 [4].
>>
>> IMHO while fixing the bug was clearly useful we could consider
>> reverting the fix on 1.8.x it to return to the original ABI in 1.8.5.
>>
>> What do you, developers think? What policy should we follow in case of
>> accidental ABI breakages?
>>
>> Cheers,
>> Balint
>>
>> [1] http://upstream-tracker.org/versions/wireshark.html
>> [2] http://upstream-tracker.org/compat_reports/wireshark/1.8.2_to_1.8.3/abi_compat_report.html
>> [3] http://code.wireshark.org/git/?p=wireshark;a=commit;h=e5e09f70168e7534a91959255e558c8a5cd9991a
>> [4] https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7348

>
> In this particular case the bug is so minor that I have no problem
> with reverting it (I personally wouldn't have bothered back-porting it
> in the first place).
>
> In the general case I think we should try to avoid ABI breakage where
> possible, but not at the cost of crashers or security bugs. The very
> first google hit for many variants of 'libwireshark' or 'using
> libwireshark' is [1] which explains how it's not really usable in
> 3rd-party programs anyways.
>
> Tangentially, it would be nice if it were usable as a proper library
> in 3rd-party programs, but that's a lot of work somebody would have to
> do to get it in shape.
>
> Cheers,
> Evan
>
> [1] http://stackoverflow.com/questions/10308127/using-libwireshark-to-get-wireshark-functionality-programatically/10355701#10355701
>


Well, the whole exercise to get the dissection engine nicely packed into a lib
was (partly) because of returning questions about a 'stable' engine lib.
So we either do it properly or not at all. This bug falls into the category
'nice to have' so should not lead to API/ABI breakage.

Just my ¤0.02,
Jaap
 
Based on the supporting opinions I have added reverting the fix to the 1.8.5 queue.

Cheers,
Balint