Bug #81
closedpossible readline license violation
0%
Description
vinum and two Kerberos utilities currently link against readline. At least vinum
contains an advertisement clause, which renders its invalid to link against the
GPLed readline.
Files
Updated by memmerto about 18 years ago
I'll take a look at seeing if we can use the BSD-licensed libedit instead.
Updated by memmerto almost 18 years ago
Put this on my list of things to look at.
Updated by memmerto almost 18 years ago
Investigation reveals that although the two KRB5 utilities (kadmin, ktutil)
link with -lreadline, they don't actually use the readline facilities.
The following patch removes -lreadline, and is buildworld clean.
Updated by justin almost 18 years ago
Does vinum link but not use, too? And/Or: does the FreeBSD version of vinum
have the same issue?
Updated by memmerto almost 18 years ago
Our vinum links with and uses readline, so more work is required to fix that.
FreeBSD-6 uses a GEOM-based vinum, which links with and uses readline.
However, it appears to be considerably rewritten from the non-GEOM vinum, and
uses the new BSD licence (no adv clause) so they are fine linking with the
GPL'd readline.
Updated by justin almost 18 years ago
Does the advertising clause still apply to the old vinum code? There were
some licenses where that hadn't been cleaned out in FreeBSD until
recently. This may be a question for Greg Lehey.
Updated by memmerto almost 18 years ago
We can remove the advertising clause from the vinum code, as per this email
from Greg. Patch attached.
On Friday, 19 January 2007 at 15:23:36 -0500, Matt Emmerton wrote:
Greg,
I'm working on DragonFlyBSD, which branched from FreeBSD-4.x. As such, it
has an "old" version of vinum which uses a BSD licence which includes an
advertising clause. (Interestingly, not requiring Berkeley to be mentioned,
but some other organization.)I know that vinum has undergone a GEOM-ification in newer FreeBSD releases,
and it appears that all the new code in FreeBSD does not have any advertising
clauses. However, this is not useful to us since we don't have GEOM.
Understood. I've already sent a message to the FreeBSD people saying
that they can remove the advertising clause; of course you may do so
as well.
Greg
Updated by dillon almost 18 years ago
:Matt Emmerton <matt@gsicomp.on.ca> added the comment:
:
:Investigation reveals that although the two KRB5 utilities (kadmin, ktutil)=20
:link with -lreadline, they don't actually use the readline facilities.
:
:The following patch removes -lreadline, and is buildworld clean.
I applied the patch manually. I couldn't apply it automatically
even with patch p N because it does not seem to be using the
proper relative paths :)
-Matt
Matthew Dillon
<dillon@backplane.com>
:Index: kerberos5/usr.sbin/ktutil/Makefile
:===================================================================
:RCS file: /home/dcvs/src/kerberos5/usr.sbin/ktutil/Makefile,v
:retrieving revision 1.4
:diff r1.4 Makefile
:23c23
:< -lreadline -lncurses
:--
:> lncurses
:Index: kerberos5/usr.bin/kadmin/Makefile
:===================================================================
:RCS file: /home/dcvs/src/kerberos5/usr.bin/kadmin/Makefile,v
:retrieving revision 1.1
:diff -r1.1 Makefile
:31c31
:< -lreadline -lncurses ${LDAPLDADD}
:--
:> -lncurses ${LDAPLDADD}
Updated by dillon almost 18 years ago
:Matt Emmerton <matt@gsicomp.on.ca> added the comment:
:
:We can remove the advertising clause from the vinum code, as per this email=20
:from Greg. Patch attached.
Committed!
-Matt
Updated by swildner almost 18 years ago
Did you actually check this with -DWANT_KERBEROS (which fails after the
patch was committed).
Sascha
Updated by memmerto almost 18 years ago
I have confirmed that the patch breaks world when WANT_KERBEROS is set.
It appears that although kadmin/ktutil don't use readline themselves, libsl
(which they link with) is the real user of readline.
I note that it appears that kadmin and kadmin are the only things to link with
libsl, and that the libsl sources have #ifdef HAVE_READLINE wrappers around all
readline-related code.
I see two options:
1) flip the HAVE_READLINE bit so that we don't need to link with readline, but
also lose readline support (line editing and history) in the process
2) update libsl to use libedit instead of readline.
Updated by corecode almost 18 years ago
+1 for using libedit, but possibly after the release.
cheers
simon
Updated by dillon almost 18 years ago
:I have confirmed that the patch breaks world when WANT_KERBEROS is set.
:It appears that although kadmin/ktutil don't use readline themselves, libsl
:(which they link with) is the real user of readline.
:
:I note that it appears that kadmin and kadmin are the only things to link with
:libsl, and that the libsl sources have #ifdef HAVE_READLINE wrappers around all
:readline-related code.
:
:I see two options:
:1) flip the HAVE_READLINE bit so that we don't need to link with readline, but
:also lose readline support (line editing and history) in the process
:2) update libsl to use libedit instead of readline.
Just flip HAVE_READLINE for now.
-Matt
Matthew Dillon
<dillon@backplane.com>
Updated by memmerto almost 18 years ago
Looks like swilder committed a fix for this yesterday (undefining
HAVE_READLINE). Closing.