| STREAMS, LiS, and Caldera's Netware for Linux - Updated |
| Monday, July 03 2006 @ 01:08 PM EDT |
|
You may have noticed in IBM's Reply Memorandum in Support of Motion to Confine SCO's Claims to, and Strike Allegations in Excess of, the Final Disclosures, that footnote 2 mentioned something called STREAMS: 2 Even as to the categories of material identified in the Final Disclosures, SCO uses Dr. Cargill to expand considerably the scope of its allegations. For example, the Cargill report alleges that IBM has misused the “totality of the Streams framework”, drawing in every line in over 150 new files, never before mentioned by SCO. SCO fleshed out the accusation in its Memorandum in Opposition to IBM's Motion to Confine SCO's Claims to, and Strike Allegations in Excess of, The Final Disclosures : Dr. Thomas Cargill, a software consultant and former computer science professor and UNIX developer, concludes in his report that Linux 2.4 and 2.6 and LiS Streams (collectively "Linux") are substantially similar to the Unix System V Release 4 operating system ("SVr4"), and therefore, that Linux infringes copyrights of SVr4. (Ex. 3 at 3.) In reaching this conclusion, and by applying the applicable legal test, he further opines that Linux is a substantial copy of UNIX System V Release 4 ("SVr4") because it appropriated the essential structure of UNIX by incorporating (1) many of the "system calls" in SVr4; (2) the SVr4 file system; (3) the ELF format; and (4) the Streams communication module. (Id. at 3-4.)... As usual, SCO seems to have failed to research its own history. I also think it has misunderstood what LiS is. So I'll help SCO out. As you will see, it was Caldera that wanted STREAMS put into the Linux kernel, failed, but included it in its own distro, Caldera Open Linux, so it could offer what it called Caldera Netware for Linux. Once again, SCO would now like to sue folks for something it itself put into Linux, or in this case tried to put there but failed.
It's not in the kernel, which is what this litigation is supposedly about. This Linux Gazette page from 1998, explains, in answer to a question from someone who had downloaded it from ftp://ftp.caldera.com/pub/netware/INSTALL.redhat -- Caldera's site, notice, offering STREAMS for other distros -- and tried to install it in Red Hat but couldn't and wanted to know how to fix the problem: When I type in rpm -i kernel-2_0_35-1nw_i386.rpm, I get the following error: ln: boot/vmlinuz-2.0.35-1nw-streams: No such file or directory Can you tell me why? More importantly, can you tell me how to fix it? As you can see, Caldera was evangelizing STREAMS and encouraging its use. It tried hard, but failed, to get Streams put into the Linux kernel. Back in 1998, Alan Cox commented on STREAMS and Linux on LKML, stating why he thought there was no way Linux, the kernel, should ever include it. You can see he is talking to chrisc@caldera.com if you open the headers. Caldera was upset that Linux developers were opposed to including STREAMS in Linux, and complained that if they wouldn't allow it, "Caldera is stuck." What does that mean? Stuck how? Caldera had just put Netware stuff into Caldera Open Linux, including STREAMS, in connection with Netware for Linux, as you'll see in the LKML interchange. (See also this 1998 c't review.) Why didn't Linux developers want it in the kernel? There were important technical reasons, as you'll see. It would slow Linux down, Cox said. And who, Cox asked, will maintain it if Caldera someday switched from being a Linux vendor? Ah, how prophetic. Here's the Cox reply to "chrisc@caldera.com", with the caldera guy's prior message interspersed, and slightly edited for language, but otherwise intact so you can see how hard Caldera pushed for Streams and how firmly it was rejected, beginning and ending with a row of stars so you can quickly see where it begins and ends: **************************
From (Alan Cox)
> pennies worth. All of the following is my personal opinion, worth
I can't be bothered to even discuss the more stupid poltical aspects
> "convert" Streams code to "Linux-specific" alternatives necessarily The are several things people muddle up 1. Streams
This is an API design for layered networking. Even the inventor
Streams are technical very flawed and not a good thing to put in 2. TLI/XTLI
These are the interfaces _most_ people actually use. TLI and XTLI
Alexey Kuznetsov wrote a complete TLI emulation over sockets layer
So most TLI/XTLI applications are sorted. Finally almost all
> Besides, despite the strongly-held opinions of many persons, the
The jury returned the final verdict about four years ago. There is no
So from a technical point of view streams is dead. There are people who Thats the technical status. > isn't the most important issue. If I had a choice between _no
The Linux kernel is a technical project. Streams are "not interesting" > a mistake to tie "NetWare on Streams" with "NetWare performance".
Indeed - netware is fast "despite streams" and "despite the netware You will find it interesting. > A: Because certain extensions to the kernel must be made in order to
Syscall numbers you didnt register with Linus as far as I can tell, which > that the kernel changes required to support a loadable Streams It is entirely a technical opposition. > fear the introduction of support for a Streams module as such a
Putting support for something in the kernel implies a maintenance commitment
That said I see no reason why Caldera shouldnt ask and get a pair of syscall > cases (e.g. NetWare for Linux), the software under consideration is
Actually there is MARS_NWE which is effectively exactly that. Caldera are > A: I've been truly amazed at the "group opinion" on this subject.
If you were technically aware of whats going on in networking you wouldnt > Most people say that opposition to Streams is on technical grounds,
I've never seen Linus with a political agenda. And even the people who get > be going out of their way to make Streams painful for everyone, as They don't need fulfilling. > The fascinating thing going on here is the fear of the "success" of
It wouldnt be a success - it would be an app that screws the future of
Having an application that is streams dependant that makes it hard to break
What it means 3 years down the line is Linux would be bottom of the webstone
Linux is _technically superior_ - that is its fundamental superiority. The > the masses. (Not to mention David's unsupported assertion that the
It does. We cannot do zero copy page flipping in a streams environment. When
Another very worrying issue is field of interest in the support. Caldera > I disagree with David's assertion that Streams will "creap" [sic]
No streams does NOT have a well defined kernel interface. It has a poorly
Streams depends on the sk_buffs in the kernel. In a zero copy world those > it's maintained by some nice guys at Gcom, NOT the _kernel
For how long. Who maintains it if Caldera pull out of Linux to concentrate > A: This remains to be seen, but a couple come to mind. Firstly,
These are entirely non-technical issues, and you seem to be a bit short
The decisions people like Linus and Davem make on what goes into the
We don't want to put that 200K in. Maybe to Caldera its a worthwhile Alan ********************************** chrisc at Caldera mentions LiS, and here is that project's page. I gather LiS is what Caldera used. This GCom page informs us that Linux STREAMS [LiS] was released under the LGPL. GCom's David Grothe claims to be the LiS copyright holder, by the way, not SCO or IBM, and as you may have noticed on that page, there was a decided difference of opinion between him and Cox and clearly no cooperation. It's so ironic, then, that SCO is trying to claim Linux is infringing STREAMS, when the kernel guys absolutely hated the idea and chose an alternative. Anyway, LiS isn't STREAMS, Dr. Cargill notwithstanding, but rather it provides for an interface between STREAMS and the kernel, or at least that is what I get from this information: Linux STREAMS (LiS) provides for an interface between STREAMS drivers and the surrounding kernel environment. This interface has grown over time and is likely to expand in the future. Another page explains a bit more: LiS is a software package that comprises an implementation of SVR4 compatible STREAMS for Linux. It takes the form of a loadable module for the Linux kernel. LiS installs in any directory on your system, not in the kernel source tree. When it is built it is possible to link pre-compiled STREAMS drivers with it so that when LiS loads into the kernel it brings "application" drivers with it. Alternatively, STREAMS drivers can be coded as loadable Linux drivers which depend upon LiS. In this way, individual STREAMS drivers can be loaded and unloaded dynamically. Caldera was all about blending proprietary and open, and Linux is not on that same page. It's why, in my opinion, Caldera could never make it as a GNU/Linux vendor. A lot of folks despised what they were doing. Now Caldera -- morphed into the SCO Group -- wishes to sue over stuff they fought hard to include into Linux, the kernel, and when that didn't work put into their own distribution. Let that be a lesson to all who think that proprietary anything is safe to include in FOSS. Somehow, it always comes back to bite you. Anyway, Linux STREAMS or LiS was a separate project, not part of the kernel, as you'll see in the whining of the Caldera person trying to get STREAMS included in the kernel, because he mentions the LiS project. Cox says the conversation first started in 1996. If you are interested in STREAMS, you can learn all about its methods and concepts from the following:
If AT&T meant to keep STREAMS to itself, a big old secretive method or concept, it had a funny way of showing it. SCO is claiming copyright infringement, however. So let's think that through. That last book is one of the ones that SCO registered the copyright for, TX 2 833-114, listed on SCO's 2nd Amended Complaint in SCO v. Novell but not on the list in the Second Amended Complaint in SCO v. IBM. What that means is that, as usual, its copyright claims depend greatly on whether it even has any copyright rights. Novell has dueling claims. And it also means it probably should have listed the copyright it purports to have in this litigation, if it wished to argue STREAMS. It's not a fatal mistake, but it's certainly typical. I happen to have a copy of the book "Special Edition: Using Caldera Open Linux," by Allan Smart, Erik Ratcliffe, Tim Bird, and David Bandel. The first three were Caldera employees at the time of publication in 1999. There is an entire section on NetWare and OpenLinux. On page 690, the book directed readers to Caldera Systems' FTP site at ftp://ftp.calderasystems.com/pub/netware/ to obtain "the latest NetWare client updates and patches for OpenLinux." I never recommend visiting SCO sites, or their supporters' sites, but you don't need to in this case. If you go to Planet Mirror, you'll find it's available for download. They say a picture is worth a thousand words, so here's a screenshot of what you'll find there:
I'd say this information puts SCO in rather an awkward position. First, why is it mentioning STREAMS in connection with IBM? Second, why is it suing anybody but the LiS guys over LiS? Even if it did, is there any basis? It provides an interface. An optional interface at that. The Linux kernel guys apparently did nothing but prevent STREAMS from getting into the kernel as best they could, so why say Linux is infringing? And finally, how can SCO sue anybody for something Caldera so actively and publicly promoted and distributed itself, and under the LGPL to boot? I note that the Caldera representative arguing with Cox mentions the LiS project with approval. So it knew about the project since at least 1998, and apparently before, maybe since 1996. If it represented "copyright infringement," SCO likely waited too long to assert that claim, even if it had copyright rights, which is a very big question mark. If you read the article I wrote about Judge Kimball back in 2003, you'll find a case where he ruled that waiting too long to assert a copyright claim is fatal to the case. For those who hate to click on links, I will reproduce that one section: 10. And here is a copyright case he handled, in which he said the plaintiff waited too long to raise his objection. "Had Jacobsen [plaintiff] voiced his disapproval in 1996, Hughes would have had the opportunity to take the offending material out of the books," he wrote in his decision. Because he waited too long, the material had lost its copyright. A news story in the Deseret News explains:In his ruling, Kimball said Jacobsen did not "express any disapproval" of the series until 1999, after the third volume had been published. "Had Jacobsen voiced his disapproval in 1996, Hughes would have had the opportunity to take the offending material out of the books," Kimball wrote. "For Jacobsen to wait until three volumes of the series had been published before voicing his disapproval, when it is clear he had ample opportunity to let Hughes know of his disapproval as early as 1996, results in extreme prejudice to Hughes." Obviously, Caldera knew about LiS at least back in 1998. We saw that in the Cox-chrisc@caldera.com exchange. Caldera not only raised no objection in 1998, it was a participant and evangelizer. How, then, can SCO sue anybody now? UPDATE: First, you don't want to skip the comments on this article, as readers have posted some very valuable information. And I want to thank Groklaw member dmomara for reminding me of the following detail. Contrast the information in this article with the letter [PDF] sent by Brent Hatch to Todd Shaughnessy back in discovery phase, dated Aprill 19, 2004 and Exhibit G[PDF], attached, where SCO listed LiS ("Linux files from LiS-2.1.5, downloaded from ftp://ftp.gcom.com/pub/linux/src/LiS/LiS-2.15.tgz") and claimed the following: 1. SCO, as the copyright owner of source code and/or documentation upon which the following files and lines of code were copied or derived, has never contributed or authorized these lines of code, or the documentation related thereto, for use in Linux as specified under Section 0, or any other provision, of the GPL. Guess again. Yes, this is the stupidest lawsuit in the history of the world. Well. OK. Top ten. |
|
||||