Subject: Re: the walls have ears
From: Ian Lance Taylor <>
Date: 31 May 1999 17:51:07 -0400

   Date: Mon, 31 May 1999 22:27:11 +0100
   From: Ben Laurie <>

   > Ben Laurie writes:
   >  > I absolutely don't understand (or agree with) this view that publishing
   >  > something under BSD can somehow lead to it being taken away from me.
   >  > How? Show me the mechanism!
   >  [Russ's example omitted]

   I can accept this. But Apache is not written for a business. Nor is
   OpenSSL. So why is BSD not appropriate for Apache or OpenSSL?

I'm not going to argue that BSD is not appropriate for Apache (I'm not
sure what OpenSSL is).  If you and the other Apache authors prefer the
BSD license, that's fine with me.

However, you originally asked how the code can be taken away from you.
In the most precise sense, of course it can not.  However, in a
certain meaningful sense it can.  John's posting shows how.

I make a router.  I decide that I want to pump up my revenue by
selling a web server that works with my router.  I write an
authentication algorithm that uses a trapdoor function based on the IP
address of the web server.  I don't permit packets to go through port
80 unless the web server has preauthenticated.  I make a version of
Apache which preauthenticates.

Now nobody can use the standard version of Apache on port 80 with my

If I happen to be an operating system vendor, I can do something
similar inside my operating system.  Now nobody can use the standard
version of Apache on port 80 with my operating system.

So even though Apache continues to exist, it can not be used in
certain circumstances where one would otherwise expect that it could
be used, and where, in particular, if Apache had been under the GPL,
it could be used.  To me that qualifies as losing the code, though I
admit you may not agree.

Again, I'm not saying that you shouldn't use the BSD license.  I'm
only trying to answer your original question, in which you ask how the
code can be taken away from you.  The mechanism is to find a simple
way to embed proprietary code within the product, such that the
proprietary code is required under certain circumstances.  I'm not
going to argue that anybody is likely to do this for Apache, but quite
a few people did do it for BSD and for X (in both cases the
proprietary code was hardware drivers).