Re: warnings while compiling 2.1.81

Trevor Johnson (trevor@jpj.net)
Thu, 29 Jan 1998 00:31:34 -0500 (EST)


> Erm, bsd_comp, and ppp_deflate are always built as modules, because of
> pattent issues in bsd_comp's case, and I assume that ppp_deflate is just
> followning bsd_comp's lead ;).

Are you sure of this? A look at drivers/net/bsd_comp.c shows it has a
standard BSD licence, which perhaps is satisfied by these lines in
drivers/net/ppp.c:

#ifndef MODULE /* slhc module logic has its own copyright announcement */
printk (KERN_INFO
"TCP compression code copyright 1989 Regents of the "
"University of California\n");
#endif

A comment in bsd_comp.c says it tries to avoid using patented techniques:

/*
* Decompress "BSD Compress".
*
* Because of patent problems, we return DECOMP_ERROR for errors
* found by inspecting the input data and for system problems, but
* DECOMP_FATALERROR for any errors which could possibly be said to
* be being detected "after" decompression. For DECOMP_ERROR,
* we can issue a CCP reset-request; for DECOMP_FATALERROR, we may be
* infringing a patent of Motorola's if we do, so we take CCP down
* instead.
*
* Given that the frame has the correct sequence number and a good FCS,
* errors such as invalid codes in the input most likely indicate a
* bug, so we return DECOMP_FATALERROR for them in order to turn off
* compression, even though they are detected by inspecting the input.
*/

I thought that perhaps the problem was with the Predictor-1 algorithm,
which isn't included with the Linux kernel. A look at RFC 1978 showed:

1. Introduction
Predictor is a high speed compression algorithm, available
without license fees. The compression ratio obtained using
predictor is not as good as other compression algorithms, but
it remains one of the fastest algorithms available.

Note that although care has been taken to ensure that the
following code does not infringe any patents, there is no
assurance that it is not covered by a patent.

Documentation/networking/ppp.txt says:

The BSD compression code will only build as a loadable module. There
was an earlier version which would build it into the kernel but that
functionality has been removed for various reasons.

If the problem is that someone might in the future find that the BSD
compression code is covered by a patent, it seems to me that a kernel plus
a module would violate it just as thoroughly as a monolithic kernel. What
am I missing here?
___
Trevor Johnson