[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#748535: transition: gnutls28



On 2014-05-20 Julien Cristau <jcristau@debian.org> wrote:
> On Mon, May 19, 2014 at 19:04:43 +0200, Julien Cristau wrote:
> > On Sun, May 18, 2014 at 08:52:53 +0200, Andreas Metzler wrote:
[...] 
> > Apparently loading both versions of gnutls in the same process leads to
> > crashes.  That screams at bugs in gnutls symbol versioning.  Are you
> > aware of such issues?

BTW: Do you have a reference to (one of) these issues?

> So one issue seems to be that while gnutls26 and gnutls28 use versioned
> symbols, they use the same versions for their symbols.  Meaning you get
> the same issues as without versions, i.e. calling some functions from
> each.  Is there a good reason gnutls28 can't use its own separate set of
> symbol versions?

Hello,
Afaict it originated here
http://lists.gnu.org/archive/html/gnutls-devel/2007-02/msg00006.html
and somehow actually appeared at some later point starting here
<https://www.gitorious.org/gnutls/gnutls/commit/5fe8d8687eb193df0c105e2e6fe926e3676b1bb8>
and there was some discussion following
<http://lists.gnu.org/archive/html/gnutls-devel/2009-05/msg00067.html> 

The main rationale seemed to be that one gets better automatic
dependency info on rpm based distributions. (I have not used rpm for a
long time, so I do not know.) As a side-effect it helps as
documentation.

Anyway, my understanding of symbol versioning is that 
soname.0: foo@0 bar@0
soname.1  foo@0 bar@1 baz@1
would work perfectly well if foo() did exactly the same thing in
soname.0 and soname.1 and it would not matter whether the version from
soname.0 or soname.1 was chosen at runtime. And that was what upstream
was aiming for. Obviously it is a lot easier to get wrong.

Afaik it is not possible to change the versioning scheme and move from
soname.1  foo@0 bar@1 baz@1
to
soname.1  foo@1 bar@1 baz@1
without breaking the ABI, is it?

cu Andreas
-- 
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'


Reply to: