* /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
@ 2009-10-13 7:20 Manoj Srivastava
2009-10-13 14:07 ` Joshua Brindle
0 siblings, 1 reply; 11+ messages in thread
From: Manoj Srivastava @ 2009-10-13 7:20 UTC (permalink / raw)
To: selinux; +Cc: Raphael Geissert, 549610-forwarded
Hi,
As demonstrated by
$ ldd /lib/libsemanage.so.1
linux-gate.so.1 => (0xb8092000)
libsepol.so.1 => /lib/libsepol.so.1 (0xb8015000)
libselinux.so.1 => /lib/libselinux.so.1 (0xb7ffa000)
libbz2.so.1.0 => /lib/libbz2.so.1.0 (0xb7fe9000)
libustr-1.0.so.1 => /usr/lib/libustr-1.0.so.1 (0xb7fbf000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7e60000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7e5c000)
/lib/ld-linux.so.2 (0xb8093000)
libsemanage1 links to libustr which is located under the,
possible separate or external, /usr partition, which would render
libsemanage unusable in such setups. (This dependency has been around
since 2.0.9).
Should we move libsemanage1 to /usr/lib? The only reason for it
to be in /lib would be for early boot, where /usr might not be
available, but at this point, it is likely not usable without /usr
anyway.
manoj
--
Manoj Srivastava <srivasta@acm.org> <http://www.golden-gryphon.com/>
1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-13 7:20 /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1 Manoj Srivastava
@ 2009-10-13 14:07 ` Joshua Brindle
2009-10-14 5:49 ` Manoj Srivastava
2009-11-27 18:03 ` Joshua Brindle
0 siblings, 2 replies; 11+ messages in thread
From: Joshua Brindle @ 2009-10-13 14:07 UTC (permalink / raw)
To: selinux, Raphael Geissert, 549610-forwarded
Manoj Srivastava wrote:
> Hi,
>
> As demonstrated by
>
> $ ldd /lib/libsemanage.so.1
> linux-gate.so.1 => (0xb8092000)
> libsepol.so.1 => /lib/libsepol.so.1 (0xb8015000)
> libselinux.so.1 => /lib/libselinux.so.1 (0xb7ffa000)
> libbz2.so.1.0 => /lib/libbz2.so.1.0 (0xb7fe9000)
> libustr-1.0.so.1 => /usr/lib/libustr-1.0.so.1 (0xb7fbf000)
> libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7e60000)
> libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7e5c000)
> /lib/ld-linux.so.2 (0xb8093000)
>
> libsemanage1 links to libustr which is located under the,
> possible separate or external, /usr partition, which would render
> libsemanage unusable in such setups. (This dependency has been around
> since 2.0.9).
>
> Should we move libsemanage1 to /usr/lib? The only reason for it
> to be in /lib would be for early boot, where /usr might not be
> available, but at this point, it is likely not usable without /usr
> anyway.
>
> manoj
Yes, I'm not sure why you'd need libsemanage during early boot, we
probably should apply this:
diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
index cfb9558..c531a2f 100644
--- a/libsemanage/src/Makefile
+++ b/libsemanage/src/Makefile
@@ -1,7 +1,7 @@
# Installation directories.
PREFIX ?= $(DESTDIR)/usr
LIBDIR ?= $(PREFIX)/lib
-SHLIBDIR ?= $(DESTDIR)/lib
+SHLIBDIR ?= $(PREFIX)/lib
INCLUDEDIR ?= $(PREFIX)/include
PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
sys.version_info[0:2]')
PYINC ?= /usr/include/${PYLIBVER}
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-13 14:07 ` Joshua Brindle
@ 2009-10-14 5:49 ` Manoj Srivastava
2009-10-19 14:20 ` Stephen Smalley
2009-11-27 18:03 ` Joshua Brindle
1 sibling, 1 reply; 11+ messages in thread
From: Manoj Srivastava @ 2009-10-14 5:49 UTC (permalink / raw)
To: selinux
On Tue, Oct 13 2009, Joshua Brindle wrote:
> Yes, I'm not sure why you'd need libsemanage during early boot, we
> probably should apply this:
>
> diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
> index cfb9558..c531a2f 100644
> --- a/libsemanage/src/Makefile
> +++ b/libsemanage/src/Makefile
> @@ -1,7 +1,7 @@
> # Installation directories.
> PREFIX ?= $(DESTDIR)/usr
> LIBDIR ?= $(PREFIX)/lib
> -SHLIBDIR ?= $(DESTDIR)/lib
> +SHLIBDIR ?= $(PREFIX)/lib
> INCLUDEDIR ?= $(PREFIX)/include
> PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
> sys.version_info[0:2]')
> PYINC ?= /usr/include/${PYLIBVER}
>
I've applied this patch in Debian unstable.
manoj
--
Manoj Srivastava <srivasta@acm.org> <http://www.golden-gryphon.com/>
1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-14 5:49 ` Manoj Srivastava
@ 2009-10-19 14:20 ` Stephen Smalley
2009-10-19 15:07 ` Daniel J Walsh
2009-10-21 14:03 ` Manoj Srivastava
0 siblings, 2 replies; 11+ messages in thread
From: Stephen Smalley @ 2009-10-19 14:20 UTC (permalink / raw)
To: Manoj Srivastava; +Cc: selinux, Joshua Brindle, Daniel J Walsh
On Wed, 2009-10-14 at 00:49 -0500, Manoj Srivastava wrote:
> On Tue, Oct 13 2009, Joshua Brindle wrote:
>
>
> > Yes, I'm not sure why you'd need libsemanage during early boot, we
> > probably should apply this:
> >
> > diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
> > index cfb9558..c531a2f 100644
> > --- a/libsemanage/src/Makefile
> > +++ b/libsemanage/src/Makefile
> > @@ -1,7 +1,7 @@
> > # Installation directories.
> > PREFIX ?= $(DESTDIR)/usr
> > LIBDIR ?= $(PREFIX)/lib
> > -SHLIBDIR ?= $(DESTDIR)/lib
> > +SHLIBDIR ?= $(PREFIX)/lib
> > INCLUDEDIR ?= $(PREFIX)/include
> > PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
> > sys.version_info[0:2]')
> > PYINC ?= /usr/include/${PYLIBVER}
> >
>
> I've applied this patch in Debian unstable.
My only concern with relocating libsemanage is whether it will create
any compatibility problems for existing binaries previously linked
against /lib/libsemanage.so.1. Also it could get confusing if you build
and install the newer version and existing binaries keep using the old
library at the old location. You likely need/want to
symlink /lib/libsemanage.so.1 to the new location.
--
Stephen Smalley
National Security Agency
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-19 14:20 ` Stephen Smalley
@ 2009-10-19 15:07 ` Daniel J Walsh
2009-10-19 15:11 ` Stephen Smalley
2009-10-21 14:03 ` Manoj Srivastava
1 sibling, 1 reply; 11+ messages in thread
From: Daniel J Walsh @ 2009-10-19 15:07 UTC (permalink / raw)
To: Stephen Smalley; +Cc: Manoj Srivastava, selinux, Joshua Brindle
On 10/19/2009 10:20 AM, Stephen Smalley wrote:
> On Wed, 2009-10-14 at 00:49 -0500, Manoj Srivastava wrote:
>> On Tue, Oct 13 2009, Joshua Brindle wrote:
>>
>>
>>> Yes, I'm not sure why you'd need libsemanage during early boot, we
>>> probably should apply this:
>>>
>>> diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
>>> index cfb9558..c531a2f 100644
>>> --- a/libsemanage/src/Makefile
>>> +++ b/libsemanage/src/Makefile
>>> @@ -1,7 +1,7 @@
>>> # Installation directories.
>>> PREFIX ?= $(DESTDIR)/usr
>>> LIBDIR ?= $(PREFIX)/lib
>>> -SHLIBDIR ?= $(DESTDIR)/lib
>>> +SHLIBDIR ?= $(PREFIX)/lib
>>> INCLUDEDIR ?= $(PREFIX)/include
>>> PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
>>> sys.version_info[0:2]')
>>> PYINC ?= /usr/include/${PYLIBVER}
>>>
>>
>> I've applied this patch in Debian unstable.
>
> My only concern with relocating libsemanage is whether it will create
> any compatibility problems for existing binaries previously linked
> against /lib/libsemanage.so.1. Also it could get confusing if you build
> and install the newer version and existing binaries keep using the old
> library at the old location. You likely need/want to
> symlink /lib/libsemanage.so.1 to the new location.
>
Why does it need to be moved? Are you doing semanage functions during boot up?
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-19 15:07 ` Daniel J Walsh
@ 2009-10-19 15:11 ` Stephen Smalley
2009-10-19 15:35 ` Daniel J Walsh
0 siblings, 1 reply; 11+ messages in thread
From: Stephen Smalley @ 2009-10-19 15:11 UTC (permalink / raw)
To: Daniel J Walsh; +Cc: Manoj Srivastava, selinux, Joshua Brindle
On Mon, 2009-10-19 at 11:07 -0400, Daniel J Walsh wrote:
> On 10/19/2009 10:20 AM, Stephen Smalley wrote:
> > On Wed, 2009-10-14 at 00:49 -0500, Manoj Srivastava wrote:
> >> On Tue, Oct 13 2009, Joshua Brindle wrote:
> >>
> >>
> >>> Yes, I'm not sure why you'd need libsemanage during early boot, we
> >>> probably should apply this:
> >>>
> >>> diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
> >>> index cfb9558..c531a2f 100644
> >>> --- a/libsemanage/src/Makefile
> >>> +++ b/libsemanage/src/Makefile
> >>> @@ -1,7 +1,7 @@
> >>> # Installation directories.
> >>> PREFIX ?= $(DESTDIR)/usr
> >>> LIBDIR ?= $(PREFIX)/lib
> >>> -SHLIBDIR ?= $(DESTDIR)/lib
> >>> +SHLIBDIR ?= $(PREFIX)/lib
> >>> INCLUDEDIR ?= $(PREFIX)/include
> >>> PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
> >>> sys.version_info[0:2]')
> >>> PYINC ?= /usr/include/${PYLIBVER}
> >>>
> >>
> >> I've applied this patch in Debian unstable.
> >
> > My only concern with relocating libsemanage is whether it will create
> > any compatibility problems for existing binaries previously linked
> > against /lib/libsemanage.so.1. Also it could get confusing if you build
> > and install the newer version and existing binaries keep using the old
> > library at the old location. You likely need/want to
> > symlink /lib/libsemanage.so.1 to the new location.
> >
> Why does it need to be moved? Are you doing semanage functions during boot up?
It's moving the other direction (presently in /lib, moving to /usr/lib).
Manoj pointed out that because of the ustr dependency, it no longer
makes sense to keep libsemanage in /lib, because libustr lives
in /usr/lib.
--
Stephen Smalley
National Security Agency
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-19 15:11 ` Stephen Smalley
@ 2009-10-19 15:35 ` Daniel J Walsh
2009-10-19 19:10 ` Joshua Brindle
0 siblings, 1 reply; 11+ messages in thread
From: Daniel J Walsh @ 2009-10-19 15:35 UTC (permalink / raw)
To: Stephen Smalley; +Cc: Manoj Srivastava, selinux, Joshua Brindle
On 10/19/2009 11:11 AM, Stephen Smalley wrote:
> On Mon, 2009-10-19 at 11:07 -0400, Daniel J Walsh wrote:
>> On 10/19/2009 10:20 AM, Stephen Smalley wrote:
>>> On Wed, 2009-10-14 at 00:49 -0500, Manoj Srivastava wrote:
>>>> On Tue, Oct 13 2009, Joshua Brindle wrote:
>>>>
>>>>
>>>>> Yes, I'm not sure why you'd need libsemanage during early boot, we
>>>>> probably should apply this:
>>>>>
>>>>> diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
>>>>> index cfb9558..c531a2f 100644
>>>>> --- a/libsemanage/src/Makefile
>>>>> +++ b/libsemanage/src/Makefile
>>>>> @@ -1,7 +1,7 @@
>>>>> # Installation directories.
>>>>> PREFIX ?= $(DESTDIR)/usr
>>>>> LIBDIR ?= $(PREFIX)/lib
>>>>> -SHLIBDIR ?= $(DESTDIR)/lib
>>>>> +SHLIBDIR ?= $(PREFIX)/lib
>>>>> INCLUDEDIR ?= $(PREFIX)/include
>>>>> PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
>>>>> sys.version_info[0:2]')
>>>>> PYINC ?= /usr/include/${PYLIBVER}
>>>>>
>>>>
>>>> I've applied this patch in Debian unstable.
>>>
>>> My only concern with relocating libsemanage is whether it will create
>>> any compatibility problems for existing binaries previously linked
>>> against /lib/libsemanage.so.1. Also it could get confusing if you build
>>> and install the newer version and existing binaries keep using the old
>>> library at the old location. You likely need/want to
>>> symlink /lib/libsemanage.so.1 to the new location.
>>>
>> Why does it need to be moved? Are you doing semanage functions during boot up?
>
> It's moving the other direction (presently in /lib, moving to /usr/lib).
> Manoj pointed out that because of the ustr dependency, it no longer
> makes sense to keep libsemanage in /lib, because libustr lives
> in /usr/lib.
>
Oh, I misread. I think like a symbolic link should handle this
Although the only entry I see for this is
ls -l /lib | grep '\.\.'
lrwxrwxrwx. 1 root root 14 2009-10-11 07:36 cpp -> ../usr/bin/cpp
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-19 15:35 ` Daniel J Walsh
@ 2009-10-19 19:10 ` Joshua Brindle
0 siblings, 0 replies; 11+ messages in thread
From: Joshua Brindle @ 2009-10-19 19:10 UTC (permalink / raw)
To: Daniel J Walsh; +Cc: Stephen Smalley, Manoj Srivastava, selinux, Joshua Brindle
Daniel J Walsh wrote:
> On 10/19/2009 11:11 AM, Stephen Smalley wrote:
>> On Mon, 2009-10-19 at 11:07 -0400, Daniel J Walsh wrote:
>>> On 10/19/2009 10:20 AM, Stephen Smalley wrote:
>>>> On Wed, 2009-10-14 at 00:49 -0500, Manoj Srivastava wrote:
>>>>> On Tue, Oct 13 2009, Joshua Brindle wrote:
>>>>>
>>>>>
>>>>>> Yes, I'm not sure why you'd need libsemanage during early boot, we
>>>>>> probably should apply this:
>>>>>>
>>>>>> diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
>>>>>> index cfb9558..c531a2f 100644
>>>>>> --- a/libsemanage/src/Makefile
>>>>>> +++ b/libsemanage/src/Makefile
>>>>>> @@ -1,7 +1,7 @@
>>>>>> # Installation directories.
>>>>>> PREFIX ?= $(DESTDIR)/usr
>>>>>> LIBDIR ?= $(PREFIX)/lib
>>>>>> -SHLIBDIR ?= $(DESTDIR)/lib
>>>>>> +SHLIBDIR ?= $(PREFIX)/lib
>>>>>> INCLUDEDIR ?= $(PREFIX)/include
>>>>>> PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
>>>>>> sys.version_info[0:2]')
>>>>>> PYINC ?= /usr/include/${PYLIBVER}
>>>>>>
>>>>> I've applied this patch in Debian unstable.
>>>> My only concern with relocating libsemanage is whether it will create
>>>> any compatibility problems for existing binaries previously linked
>>>> against /lib/libsemanage.so.1. Also it could get confusing if you build
>>>> and install the newer version and existing binaries keep using the old
>>>> library at the old location. You likely need/want to
>>>> symlink /lib/libsemanage.so.1 to the new location.
>>>>
>>> Why does it need to be moved? Are you doing semanage functions during boot up?
>> It's moving the other direction (presently in /lib, moving to /usr/lib).
>> Manoj pointed out that because of the ustr dependency, it no longer
>> makes sense to keep libsemanage in /lib, because libustr lives
>> in /usr/lib.
>>
> Oh, I misread. I think like a symbolic link should handle this
>
> Although the only entry I see for this is
>
> ls -l /lib | grep '\.\.'
> lrwxrwxrwx. 1 root root 14 2009-10-11 07:36 cpp -> ../usr/bin/cpp
>
Having a symbolic link doesn't help. If someone sees libsemanage.so in
/lib they should rightly believe that it is available during early boot
when in fact it is not since /usr/lib/libustr.so might not be available.
The dynamic linker shouldn't really get upset if it moves so the only
issue is leaving a stale one there on non-package managed systems.
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-19 14:20 ` Stephen Smalley
2009-10-19 15:07 ` Daniel J Walsh
@ 2009-10-21 14:03 ` Manoj Srivastava
2009-10-21 14:29 ` Stephen Smalley
1 sibling, 1 reply; 11+ messages in thread
From: Manoj Srivastava @ 2009-10-21 14:03 UTC (permalink / raw)
To: selinux
On Mon, Oct 19 2009, Stephen Smalley wrote:
> On Wed, 2009-10-14 at 00:49 -0500, Manoj Srivastava wrote:
>> On Tue, Oct 13 2009, Joshua Brindle wrote:
>>
>>
>> > Yes, I'm not sure why you'd need libsemanage during early boot, we
>> > probably should apply this:
>> >
>> > diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
>> > index cfb9558..c531a2f 100644
>> > --- a/libsemanage/src/Makefile
>> > +++ b/libsemanage/src/Makefile
>> > @@ -1,7 +1,7 @@
>> > # Installation directories.
>> > PREFIX ?= $(DESTDIR)/usr
>> > LIBDIR ?= $(PREFIX)/lib
>> > -SHLIBDIR ?= $(DESTDIR)/lib
>> > +SHLIBDIR ?= $(PREFIX)/lib
>> > INCLUDEDIR ?= $(PREFIX)/include
>> > PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
>> > sys.version_info[0:2]')
>> > PYINC ?= /usr/include/${PYLIBVER}
>> >
>>
>> I've applied this patch in Debian unstable.
>
> My only concern with relocating libsemanage is whether it will create
> any compatibility problems for existing binaries previously linked
> against /lib/libsemanage.so.1. Also it could get confusing if you
> build and install the newer version and existing binaries keep using
> the old library at the old location. You likely need/want to symlink
> /lib/libsemanage.so.1 to the new location.
As long as the new library location is in the ld.so path, there
is no issue, is there? At run time, ld.so searches the path, loads the
shared libraries from the new location, prepares the program to run,
and then runs it. At worst, there might be two copies of the library
loaded into memory, in case there are programs already running linked
with libsemanage.
If I am wrong, and long running programs might be affected when
the library location is yanked out from under them, some mitigating
action may be taken. I am not sure there are any daemons yet linked
with libsemanage, but I can arrange for any such daemons to be
restarted during installation, once I get any bug report.
manoj
--
Manoj Srivastava <srivasta@acm.org> <http://www.golden-gryphon.com/>
1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-21 14:03 ` Manoj Srivastava
@ 2009-10-21 14:29 ` Stephen Smalley
0 siblings, 0 replies; 11+ messages in thread
From: Stephen Smalley @ 2009-10-21 14:29 UTC (permalink / raw)
To: Manoj Srivastava; +Cc: selinux
On Wed, 2009-10-21 at 09:03 -0500, Manoj Srivastava wrote:
> On Mon, Oct 19 2009, Stephen Smalley wrote:
>
> > On Wed, 2009-10-14 at 00:49 -0500, Manoj Srivastava wrote:
> >> On Tue, Oct 13 2009, Joshua Brindle wrote:
> >>
> >>
> >> > Yes, I'm not sure why you'd need libsemanage during early boot, we
> >> > probably should apply this:
> >> >
> >> > diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
> >> > index cfb9558..c531a2f 100644
> >> > --- a/libsemanage/src/Makefile
> >> > +++ b/libsemanage/src/Makefile
> >> > @@ -1,7 +1,7 @@
> >> > # Installation directories.
> >> > PREFIX ?= $(DESTDIR)/usr
> >> > LIBDIR ?= $(PREFIX)/lib
> >> > -SHLIBDIR ?= $(DESTDIR)/lib
> >> > +SHLIBDIR ?= $(PREFIX)/lib
> >> > INCLUDEDIR ?= $(PREFIX)/include
> >> > PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
> >> > sys.version_info[0:2]')
> >> > PYINC ?= /usr/include/${PYLIBVER}
> >> >
> >>
> >> I've applied this patch in Debian unstable.
> >
> > My only concern with relocating libsemanage is whether it will create
> > any compatibility problems for existing binaries previously linked
> > against /lib/libsemanage.so.1. Also it could get confusing if you
> > build and install the newer version and existing binaries keep using
> > the old library at the old location. You likely need/want to symlink
> > /lib/libsemanage.so.1 to the new location.
>
> As long as the new library location is in the ld.so path, there
> is no issue, is there? At run time, ld.so searches the path, loads the
> shared libraries from the new location, prepares the program to run,
> and then runs it. At worst, there might be two copies of the library
> loaded into memory, in case there are programs already running linked
> with libsemanage.
>
> If I am wrong, and long running programs might be affected when
> the library location is yanked out from under them, some mitigating
> action may be taken. I am not sure there are any daemons yet linked
> with libsemanage, but I can arrange for any such daemons to be
> restarted during installation, once I get any bug report.
No, I think my concern was misplaced. As long as we ensure that we
don't leave a stale copy of the library around in the old location, we
should be fine.
--
Stephen Smalley
National Security Agency
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1
2009-10-13 14:07 ` Joshua Brindle
2009-10-14 5:49 ` Manoj Srivastava
@ 2009-11-27 18:03 ` Joshua Brindle
1 sibling, 0 replies; 11+ messages in thread
From: Joshua Brindle @ 2009-11-27 18:03 UTC (permalink / raw)
To: selinux, Raphael Geissert, 549610-forwarded
Joshua Brindle wrote:
> Manoj Srivastava wrote:
>> Hi,
>>
>> As demonstrated by
>>
>> $ ldd /lib/libsemanage.so.1
>> linux-gate.so.1 => (0xb8092000)
>> libsepol.so.1 => /lib/libsepol.so.1 (0xb8015000)
>> libselinux.so.1 => /lib/libselinux.so.1 (0xb7ffa000)
>> libbz2.so.1.0 => /lib/libbz2.so.1.0 (0xb7fe9000)
>> libustr-1.0.so.1 => /usr/lib/libustr-1.0.so.1 (0xb7fbf000)
>> libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7e60000)
>> libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7e5c000)
>> /lib/ld-linux.so.2 (0xb8093000)
>>
>> libsemanage1 links to libustr which is located under the,
>> possible separate or external, /usr partition, which would render
>> libsemanage unusable in such setups. (This dependency has been around
>> since 2.0.9).
>>
>> Should we move libsemanage1 to /usr/lib? The only reason for it
>> to be in /lib would be for early boot, where /usr might not be
>> available, but at this point, it is likely not usable without /usr
>> anyway.
>>
>> manoj
>
>
> Yes, I'm not sure why you'd need libsemanage during early boot, we
> probably should apply this:
>
> diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
> index cfb9558..c531a2f 100644
> --- a/libsemanage/src/Makefile
> +++ b/libsemanage/src/Makefile
> @@ -1,7 +1,7 @@
> # Installation directories.
> PREFIX ?= $(DESTDIR)/usr
> LIBDIR ?= $(PREFIX)/lib
> -SHLIBDIR ?= $(DESTDIR)/lib
> +SHLIBDIR ?= $(PREFIX)/lib
> INCLUDEDIR ?= $(PREFIX)/include
> PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
> sys.version_info[0:2]')
> PYINC ?= /usr/include/${PYLIBVER}
>
Looks like I missed the libsemanage.so.1 libsemanage.so symlink, applied
the following patch to libsemanage 2.0.43:
diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile
index a249f0f..67afc60 100644
--- a/libsemanage/src/Makefile
+++ b/libsemanage/src/Makefile
@@ -1,7 +1,7 @@
# Installation directories.
PREFIX ?= $(DESTDIR)/usr
LIBDIR ?= $(PREFIX)/lib
-SHLIBDIR ?= $(DESTDIR)/lib
+SHLIBDIR ?= $(PREFIX)/lib
INCLUDEDIR ?= $(PREFIX)/include
PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" %
sys.version_info[0:2]')
PYINC ?= /usr/include/${PYLIBVER}
@@ -127,7 +127,7 @@ install: all
test -d $(LIBDIR)/pkgconfig || install -m 755 -d
$(LIBDIR)/pkgconfig
install -m 644 $(LIBPC) $(LIBDIR)/pkgconfig
test -f $(DEFAULT_SEMANAGE_CONF_LOCATION) || install -m 644 -D
semanage.conf $(DEFAULT_SEMANAGE_CONF_LOCATION)
- cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO)
$(TARGET)
+ cd $(LIBDIR) && ln -sf $(LIBSO) $(TARGET)
install-pywrap: pywrap
test -d $(PYLIBDIR)/site-packages || install -m 755 -d
$(PYLIBDIR)/site-packages
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply related [flat|nested] 11+ messages in thread
end of thread, other threads:[~2009-11-27 18:03 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-13 7:20 /lib/libsemanage.so.1 links to /usr/lib/libustr-1.0.so.1 Manoj Srivastava
2009-10-13 14:07 ` Joshua Brindle
2009-10-14 5:49 ` Manoj Srivastava
2009-10-19 14:20 ` Stephen Smalley
2009-10-19 15:07 ` Daniel J Walsh
2009-10-19 15:11 ` Stephen Smalley
2009-10-19 15:35 ` Daniel J Walsh
2009-10-19 19:10 ` Joshua Brindle
2009-10-21 14:03 ` Manoj Srivastava
2009-10-21 14:29 ` Stephen Smalley
2009-11-27 18:03 ` Joshua Brindle
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.