svn commit: trunk/busybox: applets include

Rob Landley rob at
Thu Sep 21 11:18:45 PDT 2006

On Thursday 21 September 2006 3:45 am, Bernhard Fischer wrote:
> On Wed, Sep 20, 2006 at 02:41:14PM -0700, landley at wrote:
> >Author: landley
> >Date: 2006-09-20 14:41:13 -0700 (Wed, 20 Sep 2006)
> >New Revision: 16165
> >
> >Log:
> >The Software Freedom Law Center wants us to add a copyright notice to the
> >generated binaries, to make copyright enforcement easier.  Our liason with
> >them (Bradley Kuhn) suggested the following text:
> >
> >> Copyright (C) YEAR-2006 ?\194?\160Erik Andersen, Rob Landley, and others.
> >> Licensed under GPLv2. ?\194?\160See source distribution for full notice.
> >
> >And the busybox help message seems the least offensive place to put it.  
> >some point in the future, I need to strip 128 bytes from the binary to feel
> >good about this, though. :)
> So how is this better than allowing GPLv3, which, from what i read on
> the list, does enforce printing that license notice?

I mentioned I need to strip 128 bytes from the binary to feel good about it?  
For one thing, I may move the entire BusyBox help text under 
CONFIG_SHOW_USAGE.  (I may also make the rest of the help text smaller.  
Haven't decided yet.)

For a while now I've had a todo item to look at this area and see if the 
applet list could be spit out in an easily parseable form (with paths) 
ala "./busybox --applets", so you could go:

cd /usr/bin; for i in `./busybox --applets`; do ln -s busybox $i; done

Instead of the --install thing.  (That way, symlink or hardlink is _your_ 

You'll also notice this doesn't impact scripts/individual, which is where the 
repeated extra bytes would really add up.

> I would also dislike this bloat if the legal foo was potentially
> compressed, at least this would add a bit less bloat.

I'll ping them and see if that works for 'em.  (I don't know if having it in 
cleartext is an advantage?  I'll ask.)

I've also thougth about moving the BusyBox help message into usage.h and 
making it part of the standard help infrastructure.  Again, I have todo items 

> That said, which previous license violations are being dealt with
> currently?

Remember the "hall of shame"?  Plus Erik had an mbox file full of emails that 
he hadn't had time to follow up on, and I've been forwarding the reports I 
get emailed to me.  There's rather a long list, but you know how lawyers hate 
to talk about pending litigation.  (Good lawyers, anyway.)

It's taken this long to confirm stuff and track down contact info and all 

> It's not that there isn't already evidence that several 
> companies violate our GPL license as can be seen on the shame html
> page. What about dealing with those before
> a) acting upon a not yet established eventual threat that GPLv>=3 may
> impose according to your understanding

I'm not talking about a "threat" of GPLv3.  I'm talking about a lack of 
interest in GPLv3.  Right now, we have code in the tree written by Linus 
Torvalds that "may be redistributed as per the Linux copyright" (see 
util-linux/mkfs_minix.c), and Linus clarified six years ago that this 
licenense was GPLv2 nly.  (Are you saying that this applet being part of 
BusyBox for many years was "mere aggregation"?)  I want to merge the 
diethotplug code which is very clearly GPLv2 only and which the author will 
_not_ relicense.  I don't want to pester the author of ntpclient to see if I 
can get him to relicense it (in that case, yeah probably, but I'm just not 
interested).  I don't want to try to figure out if the kernel header code we 
block copied into libbb/loop.c is allowable under fair use.

And I don't want to police a dual license.  Policing one license is hard 
enough.  There's nothing wrong with GPLv2.

> b) adding stuff like this for no apparent reason since the code
> clearly is GPL already?

Since Bradley Kuhn is not our actual lawyer (he's our non-lawyer SFLC liason, 
possibly a paralegal, I didn't ask) his emails don't count as "work product" 
and so there shouldn't be a major downside sharing them (other than it being 
slightly impolite not to ask first, but I'm really really really really 
really sick of this topic just now and am not spending more time on it today.  
Sorry Bradley.)

When the SFLC first brought this up I pointed out that we say "busybox" in the 
strings a lot, and asked why that wasn't enough, and here's a cut and paste 
of Bradley's reply:

> Rob Landley wrote:
> > On Monday 18 September 2006 7:58 pm, Bradley M. Kuhn wrote:
> > > There have been some discussions on how to make sure things like:
> > >
> > >  static char *notice = "Copyright (C) 2006 Rob Landley, Licensed under
> >
> > GPLv2";
> >
> > > don't get pulled out and ditched by the optimizer.
> >
> > What exactly is the goal here?
> [...]
> > BusyBox v1.2.0-svn (2006.09.19-02:08+0000) multi-call binary
> Yes, a like like this alone is enough to give us evidence to pursue an
> enforcement case -- no question about that.
> However, it's an EXTREME "gotcha" on a GPL violation if someone's *actual*
> copyright notice appears in the 'strings' output on binary.  This is
> because the violator, by distributing the work with your copyright notice
> in place, has made a clear statement that they knew the work was
> copyrighted by you.
> It's basically the perfect egg-on-the-face moment, because they are
> admitting fully in their *own distribution* that they've infringed your
> copyright.
> So many times, violators argue that they didn't know what was in there,
> etc.  When the Copyright notice appears right in the binary, they start
> the negotiation at a serious disadvantage from the start.
> Also, there is the added bonus that if the default 'make' of busybox
> generates a copyright notice that's left in the binary, the violator would
> have to go through hoops to remove it.  Should they ever do this, it would
> be good evidence that they had engaged in *willful* infringement of your
> copyright.
> As I understand it (Norwood can confirm), this allows for a stronger set
> of penalties in the courts when someone engages in willful copyright
> infringement.  Of course, our goal is to get compliance without ever going
> to court, but having a bigger lever during that negotiation is always an
> aid.
> The copyright notice for the binary need not list every copyright holder;
> it'd be enough to say:
>   "Copyright (C) YEAR-2006  Erik Andersen, Rob Landley, and others.
>  Licensed under GPLv2.  See source distribution for full notice."
>    -- bkuhn

Now you know as much as I do on the topic.

> highly irritating.

Bruce pegged my irritat-o-meter this week.  At this point, I wanna vacation...

Never bet against the cheap plastic solution.

More information about the busybox mailing list