[TUHS] GNU vs BSD before the lawsuit and before Linux

Random832 random832 at fastmail.com
Sun Mar 19 03:45:33 AEST 2017


On Sat, Mar 18, 2017, at 12:25, Doug McIlroy wrote:
> Nick asked for an exmple of AT&T code in Gnu.
> Warner explained a spectrum of ways and degrees of innocence
> by which that might happen.
> 
> The example I have in mind is "calendar" from v7, whose very
> idiosyncratic implementation appeared in Gnu with only
> cosmetic changes. It has been modified since by discarding
> archaic efficiency hacks, but still uses the same quirky
> basic method.

The "calendar" available my Linux machine is from the "bsdmainutils"
package (which has never been put under the GPL, incidentally) which is
stuff copied with attribution from FreeBSD/NetBSD/OpenBSD, and
calendar.c has a UCB copyright/license and OpenBSD RCS ID at the top of
the file. (In the TUHS archive, this implementation first appears in
4.3BSD-Reno, with earlier versions having code clearly derived from V7).

The earliest version (from Debian 1.1) that I can find has a UCB
copyright dated 1993 and SCCS ID 8.3 3/25/94, not much removed from
4.4BSD in the archive (which has SCCS ID 8.1 6/6/93) - my guess is that
the actual source is 4.4BSD-Lite, which is mentioned in the bsdmainutils
README.

In the converted-to-git CSRG archive, the implementation first appears
in 1989 by "bostic" (Keith Bostic, presumably)
https://github.com/weiss/original-bsd/commit/46857f6fe723eff85f22986beb78063f05b60f78
with the change note "redone from scratch as a C program to fix cpp
security problem" - this is the first version to have a UCB copyright
notice. [Using cpp seems to have itself been a BSD innovation circa
4.1cBSD]

V7 calendar consists of a C program that outputs a set of regexes, and a
shell script that runs egrep. Unless by "same quirky basic method" you
mean the fact that it reads events from a text file at all, I'm not sure
what you're referring to... but that's functionality rather than
implementation.

There's a lot of code in a handful of not-part-of-GNU-proper core
utility packages used in Linux distributions - bsdmainutils, bsdgames,
bsdutils, and util-linux [only the last of which has the GPL] - which
come from some BSD or another and mostly have intact UCB copyright
statements and licenses at the top. If any of these are improperly
attributed, it's likely that UCB is to blame.

> Conceivably Gnu's implementation was done only after v7
> code was made public. But in any event, it has been
> distributed without attribution.
> 
> Doug


More information about the TUHS mailing list