Public Domain software in UN*X?

Mike Tilson mike at hcradm.UUCP
Tue Dec 25 05:55:09 AEST 1984


Before people start assuming that this or that item of software from 4.2BSD
is "public domain", it would be useful to read the license agreement you
(or your organization) has with the Regents of the University of California.
Essentially you had to agree that the entire UCB distribution is covered
under your *AT&T UNIX license*.  The only way to get something from 4.2BSD
into the "public domain" is to find the person who *owns* it, and have that
person give it to you free of restrictions.  The "owner" is often not the same
as the "author".  If you are going to use any "public domain" software in a
commercial application, you might want to investigate whether the author of
the software actually has the right to give it to you.  (The software might
actually belong to the author's institution or employer -- if the author works
for a commercial entity, this is almost invariably the case.)

Many people forget that various software packages incorporate the intellectual
property of some other organization (like AT&T).  A recent news posting
speculated that David Tilbrook's QED/TIPS package might be public domain.
In fact, deep in the heart of the QED package is the Version 6 "ed.c".
(At least this was the case some time ago -- I haven't looked lately.)

If a software package has lifted source code from various licensed sources,
then the package is covered by the *union* of licensing restrictions, and
by the *intersection* of licensing rights.  This should be kept in mind
when building new applications.  It is often better to use existing software
as a tool through a well-defined interface, rather than modifying and
incorporating source code into a package.  E.g. if you need a special
stdio routine, write one which operates by calling the standard unchanged
routines, rather than by hacking some AT&T source code into your program
with changes.  This approach will save future licensing hassles, and as
a by-product it also helps portability and maintainability.

It isn't enough to say that some software "ought to be" in the public domain.
People feel this way especially about the UCB stuff.  However, AT&T in good
faith provided UNIX to universities at nominal charge, and it was UCB's
decision (along with Darpa) to make use of UNIX in the 4.2BSD effort.  The
*changes* to UNIX may somehow end up in the public domain, but UNIX itself
is not.  The only way to "uncontaminate" 4.2BSD would be to re-do the whole
thing without reference to any UNIX source code (and also with an independent
re-write of all the manuals).  If you think about how hard that is, you'll
realize how much 4.2BSD still owes to UNIX.

/Michael Tilson, Human Computing Resources Corp.



More information about the Comp.unix.wizards mailing list