Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 9 Nov 1995 22:42:17 -0600 (CST)
From:      Joe Greco <jgreco@brasil.moneng.mei.com>
To:        jdp@polstra.com (John Polstra)
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Kerb Encr Telnet!! I found the problem!
Message-ID:  <199511100442.WAA23781@brasil.moneng.mei.com>
In-Reply-To: <m0tDbtV-000072C@seattle.polstra.com> from "John Polstra" at Nov 9, 95 10:40:00 am

next in thread | previous in thread | raw e-mail | index | archive | help
> > So we have shared library collisions.  From a quick re-examination of bin.*,
> > it would appear that there is a mix of *.2.0, *.2.1, *.2.2, and *.3.0...  is
> > this good?
> 
> No.  It's BAD.

My point exactly  :-)

It's not as clear what the best policy is.  Do you bump with each release?
I think that that might be "bad" policy as it would cause needless
increments in rarely modified libs.

Ideally, you bump the version number when you change the services offered by
a library.  But what about when you have more than one library, and it is
"pick one of X"?  They should probably all get numbered the same, and one
higher than the previous revision(s) - i.e. this new Kerberized libtelnet
and the system default libtelnet should both be libtelnet.so.2.1.

Or, maybe it would be even better for the sake of clarity, to install the
Kerberized libtelnet as "libtelnet.krb.so.2.1", the default as
"libtelnet.reg.so.2.1", and make symlinks.

> > Well at least it gives us a suggested workaround:  don't install compat
> > libraries.
> 
> Sometimes you're stuck with them.  For instance, the X-Inside X server
> depends on having compat1x installed.

I realize that.  I would of course prefer to see it fixed.

> I think the right solution would be to _religiously_ follow the rule
> that shared library minor version numbers get incremented on _every_ new
> "release".  Whether "release" means RELEASE or SNAPshot is probably a
> matter of judgement.  To be perfectly safe, the minor number would have
> to increase every time a library changed in any way whatsoever.

I would argue that that is needlessly strict.  You don't WANT to update the
minor version numbers every RELEASE or SNAP, unless there is a difference
that would require it.  A version number change is intended to convey the
fact that the available library interface is somehow different.  If I decide
to rewrite printf but not change the interface, that should NOT be a version
number bump.  If I add functionality that requires external support, or add
new functionality that adds to or changes the library interface, that SHOULD
be a version bump.  So when libtelnet was Kerberized, the numbers for both
regular and Kerberized should have been bumped (in my mind).

I am NOT being critical of whoever did this work, mind you.  When I
Kerberized my own systems I didn't bump it either.

This is, of course, a subject that merits debate  :-)

> This would ensure that the system would always use the newest version of
> each library, no matter what order they were loaded off the various
> distributions.

Bingo.

... Joe

-------------------------------------------------------------------------------
Joe Greco - Systems Administrator			      jgreco@ns.sol.net
Solaria Public Access UNIX - Milwaukee, WI			   414/342-4847



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199511100442.WAA23781>