Subject: Re: NetBSD 2.0 release date
To: None <tech-kern@NetBSD.org>
From: John Franklin <firstname.lastname@example.org>
Date: 12/09/2003 00:45:16
On Dec 8, 2003, at 3:39 PM, Jason Thorpe wrote:
> On Dec 8, 2003, at 11:08 AM, John Franklin wrote:
>> Hmm... wouldn't want to take a minor number without the decision=20
>> coming from the library developer. Can ELF handle a third version=20
>> number as a build number? That is, libother.0.1.0 is linked against=20=
>> libc.12, and libother.0.1.1 is linked against libc.13.
> ELF doesn't actually *have* shared library version numbers. Library=20=
> versions are completely a naming scheme in ELF.
> Let's take our current scheme as an example.
> We generate libraries with names like:
> ld(1) looks for libraries with names like:
> Encoded in the library is something called an "soname". By=20
> *convention*, this is a name of the form:
> This "soname" is what is recorded in the dependency information. So,=20=
> let's consider:
> * A library named libfoo.so.1.1
> * The "soname" of the library is libfoo.so.1
> * The link-time name that ld(1) looks for is libfoo.so
> In this case, the program gets a dependency recorded for a library=20
> named "libfoo.so.1", and so the run-time dynamic linker will look for=20=
> a file named "libfoo.so.1". This is why you see symbolic links on=20
> systems that use ELF shared libraries:
> 0 lrwxr-xr-x 1 root wheel 15 Sep 23 08:06 libkrb5.so@ ->=20
> 0 lrwxr-xr-x 1 root wheel 15 Sep 23 08:06 libkrb5.so.18@ ->=20=
> 268 -r--r--r-- 1 root wheel 272935 Sep 23 08:06 libkrb5.so.18.4
A fair point. But we can update the run-time dynamic linker to=20
intelligently look at <soname>[.x] files until it finds the set of=20
shared libraries that are most current and have sonames all in=20
1. Are there new security issues beyond that of shared libraries?
2 Do we want to turn convention into de-facto standard?
3. If there are multiple sets, with no clear-cut winner (e.g. libfoo.1=20=
& libbar.2 vs libfoo.2 & libbar.1), which set gets selected?
ICBM: 35=B043'56"N 78=B053'27"W