Hi Dylan,

On Tue, May 22, 2018 at 04:39:21PM -0000, Dylan Gray wrote:
>The dependency is a problem because my program depends on gssapi_krb5,
>krb5, sasl, and openldap. On Ubuntu, the linker will throw errors
>because "libkrb5.so.26, needed by //usr/lib/x86_64-linux-
>gnu/libgssapi.so.3, may conflict with libkrb5.so."

I see. Yes, I can see how that would be a problem. The linker warning is 
only a warning, but the ABIs very likely do conflict.

As far as I know the MIT and Heimdal libraries can be combined at 
runtime, thanks to symbol versioning; but that doesn't help you at build 
time.

I don't think changing libldap's linkage in an update to a 
several-years-old stable release is a good plan, though. It's at least 
as likely that doing so would break someone else's existing program (or 
worse, someone else's existing compiled binaries.)

I suppose if it were possible for you to use GSSAPI via SASL (like 
libldap does) instead of directly, you'd be doing that already.

I'm not really sure what to suggest here. I'll have to think about this. 
Maybe someone else reading this will have an idea.

(I'm actually not sure why libldap links against Heimdal in the first 
place. MIT is usually the default choice for libkrb5. Maybe because 
Heimdal was already pulled into the openldap build for other reasons.)

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to openldap in Ubuntu.
https://bugs.launchpad.net/bugs/1772530

Title:
  OpenLDAP depends on old version of KRB5 which conflicts with other
  packages

Status in openldap package in Ubuntu:
  Incomplete

Bug description:
  Currently, Ubuntu 16.04's newest offered version of OpenLDAP is
  version 2.4.42. This version depends on libgssapi3 which in turn
  depends libkrb5 version 2.6. Many other common libraries (like
  gssapi_krb5) depend on libkrb5 3.0. From what I can tell, OpenLDAP
  version 2.4.44 fixes this issue, but it is not available from any of
  the Ubuntu repo's. It would be fabulous if this could be fixed.

  Repo:
  > # OpenLDAP depends on krb5 2.6
  > readelf -d /usr/lib/x86_64-linux-gnu/libldap.so

  Dynamic section at offset 0x4d548 contains 32 entries:
    Tag        Type                         Name/Value
   0x0000000000000001 (NEEDED)             Shared library: [liblber-2.4.so.2]
   0x0000000000000001 (NEEDED)             Shared library: [libresolv.so.2]
   0x0000000000000001 (NEEDED)             Shared library: [libsasl2.so.2]
   0x0000000000000001 (NEEDED)             Shared library: [libgssapi.so.3]
   0x0000000000000001 (NEEDED)             Shared library: [libgnutls.so.30]
   0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
   0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
   0x000000000000000e (SONAME)             Library soname: [libldap_r-2.4.so.2]

  >readelf -d /usr/lib/x86_64-linux-gnu/libgssapi.so.3

  Dynamic section at offset 0x3daa8 contains 34 entries:
    Tag        Type                         Name/Value
   0x0000000000000001 (NEEDED)             Shared library: [libheimntlm.so.0]
   0x0000000000000001 (NEEDED)             Shared library: [libkrb5.so.26]
   0x0000000000000001 (NEEDED)             Shared library: [libasn1.so.8]
   0x0000000000000001 (NEEDED)             Shared library: [libcom_err.so.2]
   0x0000000000000001 (NEEDED)             Shared library: [libhcrypto.so.4]
   0x0000000000000001 (NEEDED)             Shared library: [libroken.so.18]
   0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
   0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
   0x000000000000000e (SONAME)             Library soname: [libgssapi.so.3]

  
  > # gssapi_krb5 and default krb5 depend on krb5 3.0
  > readelf -d /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so

  Dynamic section at offset 0x47c48 contains 31 entries:
    Tag        Type                         Name/Value
   0x0000000000000001 (NEEDED)             Shared library: [libkrb5.so.3]
   0x0000000000000001 (NEEDED)             Shared library: [libk5crypto.so.3]
   0x0000000000000001 (NEEDED)             Shared library: [libcom_err.so.2]
   0x0000000000000001 (NEEDED)             Shared library: [libkrb5support.so.0]
   0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
   0x000000000000000e (SONAME)             Library soname: [libgssapi_krb5.so.2]

  > readelf -d /usr/lib/x86_64-linux-gnu/libkrb5.so

  Dynamic section at offset 0xcfcc0 contains 32 entries:
    Tag        Type                         Name/Value
   0x0000000000000001 (NEEDED)             Shared library: [libk5crypto.so.3]
   0x0000000000000001 (NEEDED)             Shared library: [libcom_err.so.2]
   0x0000000000000001 (NEEDED)             Shared library: [libkrb5support.so.0]
   0x0000000000000001 (NEEDED)             Shared library: [libkeyutils.so.1]
   0x0000000000000001 (NEEDED)             Shared library: [libresolv.so.2]
   0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
   0x000000000000000e (SONAME)             Library soname: [libkrb5.so.3]

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openldap/+bug/1772530/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to