some courier executables can't load libraries in /usr/lib/courier-authlib

Bug #260899 reported by Javier Uruen Val
6
Affects Status Importance Assigned to Milestone
courier (Ubuntu)
Fix Released
High
Nicolas Valcarcel

Bug Description

Release: 8.10

Version: 0.60.0-1ubuntu1

Since the latest courier upload (0.60.0-1ubuntu1), I'm experiencing a problem with the shared libraries.

One of the changes made to the package was the removal of rpath information from the binaries. Without this information some courier executables won't be able to locate the libraries under /usr/lib/courier-authlib and will fail with the following error:

/usr/lib/courier/courier/courierpop3login: error while loading shared libraries: libcourierauthsasl.so: cannot open shared object file: No such file or directory

I guess there are a few approaches to fix this:

        - Do not strip rpath information
        - Add /usr/lib/courier-authlib directory to /etc/ld.so.conf
        - Change /usr/lib/courier-authlib to /usr/lib
        - Modify courier init.d scripts to use LD_LIBRARY_PATH
        - ...

I'm attaching a patch for first approach. It reverts the changes made to strip rpath information. Although this will make lintian to complain again.

Related branches

Revision history for this message
Javier Uruen Val (juruen) wrote :
description: updated
description: updated
Revision history for this message
Michael Casadevall (mcasadevall) wrote :

Embedding rpath information is the wrong fix for it, Debian policy says that rpath is only acceptable for private modules of a program, but authlib is a general purpose library (it has a courier-authlib-dev package).

I'm not familiar with the ld.so.conf policy, but I believe we need to move the libraries into /usr/lib. I need to confer with sistpoty, he'll be able to give be a proper answer on the policy.

Removing ubuntu-universe-sponsors until a confirmed course of action is determined.

Changed in courier:
assignee: nobody → sonicmctails
importance: Undecided → High
status: New → Confirmed
Revision history for this message
Javier Uruen Val (juruen) wrote :

I think one could argue that as courier-authlib is meant to be used by the courier packages, these libraries could be considered as private and they shouldn't pollute /usr/lib/

On the other hand according to this entry [0] rpath should only be used with libraries shipped by the same source package. So /usr/lib seems better place.

[0] http://wiki.debian.org/RpathIssue

Revision history for this message
Michael Casadevall (mcasadevall) wrote :

The problem is the upstream courier packaging is very inconsistent; it even violates Debian's policy w.r.t. to shared libraries. the courier-authlib package has the following rdepends, so nothing outside of courier is directly dependent on it.

mcasadevall@blacksteel:~/packaging/xfce4.6-beta/xfwm$ apt-cache rdepends courier-authlib
courier-authlib
Reverse Depends:
  courier-mta
  maildrop
  courieruserinfo
  courierpasswd
  courierpassd
  courier-base
  courier-authlib-userdb
  courier-authlib-postgresql
  courier-authlib-pipe
  courier-authlib-mysql
  courier-authlib-ldap
  courier-authlib-dev
  courier-authdaemon

Revision history for this message
ehcpdeveloper (ehcpdeveloper) wrote :

i have same issue,

how can i apply patch above, at http://launchpadlibrarian.net/17048503/courier_0.60.0-1ubuntu2.diff ?
to which file should i apply patch.

this is very urgent for me, nobody on my server can get to their mail...

Revision history for this message
ehcpdeveloper (ehcpdeveloper) wrote :

i copied all in /usr/lib/courier-authlib to /usr/lib
now it works..
this may not be best solution but, i needed an urgent solution...

Revision history for this message
Michael Casadevall (mcasadevall) wrote :

Just as a note, I'm working with the other people who worked on fixing the issues with courier on best how to fix it, we will likely be backing out the rpath fix until which time we can figure out a proper method to fix it.

bvidinli: why are you running intrepid on a production server? Its still only recommended for developers.

Revision history for this message
Nicolas Valcarcel (nvalcarcel) wrote :

ups! working on it

Changed in courier:
assignee: sonicmctails → nvalcarcel
Revision history for this message
Colin Watson (cjwatson) wrote :

Nicolas asked for my feedback on IRC.

My gut feel is that courier-authlib is essentially private to courier, despite being a separate package (presumably due to being distributed as a separate source package upstream). The courier-authlib-dev package is just there so that other bits of courier can be built against it. This theory is supported by the package descriptions for courier-authlib and courier-authlib-dev. Accordingly, my recommendation would be to put the rpath back rather than making it a public library.

Revision history for this message
Nicolas Valcarcel (nvalcarcel) wrote :

After talking with Colin (and after his comment) i've just sponsored Javier's patch, since that's the correct fix, thank you all for your help and contributions!!

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package courier - 0.60.0-1ubuntu2

---------------
courier (0.60.0-1ubuntu2) intrepid; urgency=low

  * Do not strip rpath info as it's needed to succesfully load
    the shared libraries in /usr/lib/courier-authlib (LP: #260899)

 -- Javier Uruen Val <email address hidden> Sun, 24 Aug 2008 11:52:00 -0400

Changed in courier:
status: Confirmed → Fix Released
Revision history for this message
ehcpdeveloper (ehcpdeveloper) wrote : Re: [Bug 260899] Re: some courier executables can't load libraries in /usr/lib/courier-authlib

you asked: why are you running intrepid on a production server? Its still
> only recommended for developers.
my answer:
1-i have no patience,
2-sometime it is better to have a production system, to be able to see
bugs and let them fixed. bugs are fixed faster in development period.

i keep myself hard, to not to upgrade at alpha 1 ! i managed to wait
until alpha 3... and i installed alpha3...
thanks.
and thanks to ubuntu people... ubuntu developers.....

2008/8/26 Michael Casadevall <email address hidden>:
> Just as a note, I'm working with the other people who worked on fixing
> the issues with courier on best how to fix it, we will likely be backing
> out the rpath fix until which time we can figure out a proper method to
> fix it.
>
> bvidinli: why are you running intrepid on a production server? Its still
> only recommended for developers.
>
> --
> some courier executables can't load libraries in /usr/lib/courier-authlib
> https://bugs.launchpad.net/bugs/260899
> You received this bug notification because you are a direct subscriber
> of the bug.
>

--
İ.Bahattin Vidinli
Elk-Elektronik Müh.
-------------------
iletisim bilgileri:
msn/email: <email address hidden>
yahoo,skype,google: bvidinli

Vodafone: +90.543.2388711
Turkcell: +90.532.7990607

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.