Wireshark-dev: Re: [Wireshark-dev] Future of Wireshark's shared library ABI stability

From: João Valverde <j@xxxxxx>
Date: Fri, 21 Jan 2022 00:28:11 +0000


On 20/01/22 21:24, Bálint Réczey wrote:
Hi Guy,

Guy Harris <gharris@xxxxxxxxx> ezt írta (időpont: 2022. jan. 20., Cs, 21:52):
On Jan 20, 2022, at 12:34 PM, Gerald Combs <gerald@xxxxxxxxxxxxx> wrote:

Q: Should *wsutil* be part of that stable ABI?

Debian, Ubuntu and (according to rpmfind.net) OpenSuSE and Mageia treat it as such. It would be helpful to know what non-Wireshark packages depend on wsutil in those distributions and elsewhere.
...and, if there are any, to know *why*.
It seems libvirt's plugin needs wmem_alloc(), for example:
https://gitlab.com/wireshark/wireshark/-/issues/17889

How is that relevant?

The answer to the question that was asked is: exactly zero Debian packages have a dependency on your libwsutil/libwireshark/libwiretap packages.

If you want to see what a properly packaged non-trivial application for Debian looks like check out Geany[1] for example. It also uses shared libraries internally and has a plugin system.

IMO it is easier mentally to have a single library ABI policy because
we ship only public libraries. Having a more relaxed private shared
library policy would make it easier to make mistakes.

I have no idea what you are trying to say here. The libraries were not intended to be public until you stepped in, by the way.

Also if libwsutil (with wmem_alloc) became private in 3.6.x then
libvirt had a much harder time continuing the maintenance of their
plugin starting with 3.6.0.

No. Nobody said anything about 3.6.x and none of that is true.

[1]https://salsa.debian.org/geany-team/geany