Image of grog
SCO's complaint against IBM: an analysis
Greg's diary
Photo index
Greg's home page
Network link stats
Greg's other links
Copyright information
Main SCO page
Groogle

This document was written incrementally between June and August 2003. In the meantime, a Rob Landley and Eric Raymond have done a much more detailed analysis. I'm sure they've missed some minor things that I have written here, but in general I assume that their paper renders this page obsolete.

On 9 March 2003, Caldera, trading as SCO, sued IBM for giving away trade secrets. Once they claimed to be a Linux company. Now they have filed a complaint in which they write:

Prior to IBM\222s involvement, Linux was the software equivalent of a bicycle.  UNIX was the software equivalent of a luxury car.  To make Linux of necessary quality for use by enterprise customers, it must be re-designed so that Linux also becomes the software equivalent of a luxury car.  This re-design is not technologically feasible or even possible at the enterprise level without (1) a high degree of design coordination, (2) access to expensive and sophisticated design and testing equipment; (3) access to UNIX code, methods and concepts; (4) UNIX architectural experience; and (5) a very significant financial investment.

How, after writing that, can they convince their customers that they are a serious contender in the marketplace? It looks like corporate suicide to me.

Note also the \222 in the text above. This web page was done with a Microsoft tool which generates invalid HTML. HTML tidy finds 406 errors and warnings, mainly invalid characters: the character set used is specific to Microsoft and doesn't work under UNIX. The W3C validator refuses to try because of a missing doctype. And SCO claims to be a UNIX house. I think we're going to see them collapsing pretty soon.

The complaint in detail

In the following, the excerpt of the original complaints in indented italics, and my comments are in normal text. This is the reverse of how this page started out, but I think it's more readable this way. I have attempted to avoid "constructive quoting" to change the meaning of the original, though I have corrected the 406 errors in the original document and fixed the hundreds of illegal characters. The complaint starts with:

Plaintiff, Caldera Systems, Inc., a Delaware corporation doing business as The SCO Group (“SCO”), complains of Defendant International Business Machines Corporation (“IBM”) and alleges as follows:

Note the name of the company. We keep hearing about SCO, but at the time the complaint was filed, that was just their trading name. They were still really called Caldera, though they have since changed their name to SCO.

17. All commercial UNIX "flavors" in use today are based on the UNIX System V Technology ("System V Technology").

It's my understanding that HP's (formerly Compaq's) Tru64 was based on OSF/1, not on System V. I note that there's no mention of it anywhere in this document.

18.         SCO is the present owner of all software code and licensing rights to System V Technology.

Note the reference to UNIX System V here. Later they drop the System V. Anyway, as Novell has pointed out, this is not true. Novell has retained the majority of the rights to UNIX.

21.         In the computing industry, the term “desktop computers” is sometimes used to refer to the less powerful computers used by individuals and some businesses and the term “workstation” is sometimes used to refer to the more powerful computers used primarily by enterprises.

Sometimes. It's an artificial distinction, though, especially in the UNIX business. And Microsoft desktop operating systems require machines which are much more powerful than the average web server machine.

26.         Therefore, while other major UNIX vendors modified UNIX for their own respective non-Intel computing platforms, SCO developed and licensed SCO/UNIX for Intel-based processors for enterprise use.

I think that few of SCO's customers would consider SCO's products to be "enterprise" operating systems.

28.         Based on the early design constraint of Intel’s limited processing power, SCO found an appropriate enterprise market niche for the early versions of SCO UNIX—single-purpose applications such as point-of-sale control, inventory control and transactions processing, with the highest possible reliability.  Intel processors were fully capable of performing these relatively simple, repetitive tasks, and could do so at a lower cost and as reliably as the more powerful enterprise processing platforms sold by the other UNIX vendors, such as Sun and IBM.

Somehow this paragraph seems confusing. I understand "enterprise" machines to be high-end, and they're talking about cheap machines. But I don't have any problem with the facts in this statement.

37.         A “shared library” is a common set of computer code inside an operating system that performs a routine function for all the applications (software programs) designed to run on that particular operating system.  Thus, Microsoft Windows has its own set of shared libraries.  SCO OpenServer (UNIX designed for Intel chips) has its set of own shared libraries.  Sun Solaris (UNIX designed for SPARC chips) has its own set of shared libraries.

It's rather misleading to say that shared libraries are part of the operating system. Both UNIX and Microsoft use third-party shared libraries. I don't know if this is deliberately or accidentally misleading. Also, they specifically mention shared libraries. Is this because they don't know about static libraries, or they think they have other licensing conditions?

38.         The shared libraries of all operating systems are designed with “hooks”.

They are?

These “hooks” are computer code that trigger the operation of certain routine functions.  A software developer can shorten the development effort for any new software program and create a more efficient code base by writing programs that access the various “hooks” of the operating system, and thereby use a shared set of code built into the operating system to perform the repetitive, common functions that are involved in every program.

I can't make up my mind whether "hook" is supposed to mean a function or a callback. I think it's a function. But why do they use this silly name? Who told the lawyers about this? Did anybody involved in this part of the description know what they're talking about?

41.         Shared libraries are by their nature unique creations based on various decisions to write code in certain ways, which are in great part random decisions of the software developers who create the shared library code base.  There is no established way to create a specific shared library and the random choices in the location and access calls for “hooks” that are part of the creation of any shared library.  Therefore, the mathematical probability of a customer being able to recreate the SCO OpenServer Shared Libraries without unauthorized access to or use of the source code of the SCO OpenServer Shared Libraries is nil.

Again, it's difficult to criticize this statement because the terminology is so fuzzy and inaccurate. What they appear to be saying is:

  1. There are no standards for shared libraries.
  2. Code is written by programmers. Recreating the exact source code is impossible.
  3. Therefore it's impossible to write a functional equivalent of the library without access to the source code.

(1) is ridiculous. The most important shared library in any UNIX-like system is libc.so, the C library. There is a standard for this library, and both the function names (sorry, hooks) and the exact function they perform are well defined. (2) is correct. (3) is nonsense. People reimplement libraries all the time. GNU libc is a good and well-known example. All you need is the user documentation and a bit of programming skill.

SCO’s Development of UnixWare on Intel

44.         Upon SCO’s acquisition of the UNIX assets from Novell, SCO owned the rights to all UNIX software designed for Intel processors.

I'm pretty sure this is not correct. Apart from the general UNIX ownership issue, what about the descendents of other Intel-based UNIX ports such as Interactive (now Sun, I believe) and Consensys?

SCO retained its original UNIX product, SCO OpenServer, which remained dedicated to the relatively low-power computing tasks identified above.  SCO also had acquired UnixWare from Novell, which was designed for high-power computing tasks, and competed directly against the related UNIX products of Sun, IBM, SGI and others.

We've already seen that SCO does not own all rights to UNIX. Factually, UnixWare was initially targetted at the desktop, not high performance computing. As we see below, SCO tried to reposition it as a high-performance UNIX. I don't know to what extent it has since caught up with the others, but SCO's customer base doesn't seem to have shifted.

45.         Existing UnixWare customers include large companies, such as NASDAQ, Lucent Technologies, Daimler Chrysler, K-Mart, Goodyear, Comverse, and numerous others.  These customers all have highly sophisticated computing needs that now can be performed on an Intel processor chip set.

They obviously have a range of computing needs. I don't expect that there core IT infrastructure of any of these companies is based on SCO technology. This appears to be a deliberate attempt to mislead.

46.         From and after September 1995, SCO dedicated significant amounts of funding and a large number of UNIX software engineers, many of whom were original AT&T UNIX software engineers, to upgrading UnixWare for high-performance computing on Intel processors.

47.         By approximately 1998, SCO had completed the majority of this task.  That is to say, UnixWare had largely been modified, tested and “enterprise hardened” to use Intel-based processors in direct competition against IBM and Power PC chips, the Sun SPARC chip and all other high-performance computing UNIX platforms for all complex computing demands.

This appears to be an attempt to reposition UnixWare elsewhere. It also appears to have failed.

The term “enterprise hardened” means to assure that a software product is fully capable of performing under the rigorous demands of enterprise use.

Which are? Reliability? Scalability? Performance? Fault tolerance? That needs to be stated. This sounds like marketing buzzwords to me.

48.         SCO was ready to offer large enterprise customers a high-end UNIX computing platform based on inexpensive Intel processors.  Given the rapid growth of Intel’s performance capabilities and Intel’s popularity in the marketplace, SCO found itself in a highly desirable market position.  In addition, SCO still has its SCO OpenServer business for retail and inventory-targeted functions, with its 4,000 applications in support.

This suggests that they hadn't changed the kind of application that they're expecting their customers to use.

Project Monterey

50.         As SCO was poised and ready to expand its market and market share for UnixWare targeted to high-performance enterprise customers, IBM approached SCO to jointly develop a new 64-bit UNIX-based operating system for Intel-based processing platforms.  This joint development effort was widely known as Project Monterey. 

51.         Prior to this time, IBM had not developed any expertise to run UNIX on an Intel chip and instead was confined to its Power PC chip.

53.         Specifically, plaintiff and plaintiff’s predecessor provided IBM engineers with valuable information and trade secrets with respect to architecture, schematics, and design of UnixWare and the UNIX Software Code for Intel-based processors.

55.         On or about May 2001, IBM notified plaintiff that it refused to proceed with Project Monterey, and that IBM considered Project Monterey to be “dead.”  In fact, in violation of its obligations to SCO, IBM chose to use and appropriate for its own business the proprietary information obtained from SCO.

This is saying:

  1. IBM had UNIX expertise only on PowerPC.
  2. SCO helped IBM develop Intel expertise.

If IBM were to abuse this knowledge, it must therefore apply to Intel processors only. But IBM doesn't have any of their own UNIX or Linux software which runs on Intel.

I wonder what they mean by “schematics”. The only meaning I know is “circuit diagrams”. But that's hardware.

71.         UNIX gained this prominence in the computing marketplace because of twenty years of development and over one billion dollars invested by plaintiff and its predecessors to create a stable, reliable operating system to perform the mission critical work required by large enterprises.

Just about all commercial UNIX versions have diverged so far from UNIX System V that it's clear their individual vendors have put much more effort into getting it into shape. It's not as if SCO and its legal predecessors have done even the majority of the work, even in their own code base. A recent analysis of copyright notices suggests that there's more BSD code in System V.4 than there is AT&T code.

77.         Related to the development of the open source software development movement in the computing world, an organization was founded by former MIT professor Richard Stallman entitled “GNU.”

I'm sure that rms will be amused to have become a professor.

82.         Linux started as a hobby project of a 19-year old student.  Linux has evolved through bits and pieces of various contributions by numerous software developers using single processor computers.  Virtually none of these software developers and hobbyists had access to enterprise-scale equipment and testing facilities for Linux development.  Without access to such equipment, facilities, sophisticated methods, concepts and coordinated know-how, it would be difficult or impossible for the Linux development community to create a grade of Linux adequate for enterprise use.

This is an unsubstantiated claim. It also implies that one of the things needed for development of an "enterprise" use operating system would be multiprocessor hardware. This is consistent with other claims made in this document: about the only technical feature they mention is the ability of the kernel to scale to large numbers of processors, which is indeed a problem for any operating system.

Multiprocessor hardware has been available for years for only a little more money than single processor hardware. In addition, of course, a number of companies were only too willing to help out. One of the companies was SCO, who early on provided multiprocessor hardware for Linux developers. I consider it highly possible that SCO will remove this page; here's what it looks like.

83.         As long as the Linux development process remained uncoordinated and random, it posed little or no threat to SCO, or to other UNIX vendors, for at least two major reasons: (a) Linux quality was inadequate since it was not developed and tested in coordination for enterprise use and (b) enterprise customer acceptance was non-existent because Linux was viewed by enterprise customers as a “fringe” software product.

An obvious third reason for SCO is because they were actively marketing Linux. Indeed, they claim to have their own enterprise-grade Linux. As they write there,

UnitedLinux is an enterprise-grade Linux with real-world power. It is a careful integration of the best features of Linux from four of the best-known names in the Linux constellation: Conectiva S.A., The SCO Group, SuSE Inc., and TurboLinux, Inc. UnitedLinux is an industry-standard version of Linux that contains the finest business-demanded features while offering worldwide language support not found anywhere else.

Does “anywhere else” include IBM? It's interesting to note in the Q&A section that the dates specified suggest that this page was written before Q2 of 2002.

84.         Prior to IBM’s involvement, Linux was the software equivalent of a bicycle.  UNIX was the software equivalent of a luxury car.

That doesn't say much about SCO's own contributions, does it?

To make Linux of necessary quality for use by enterprise customers, it must be re-designed so that Linux also becomes the software equivalent of a luxury car.  This re-design is not technologically feasible or even possible at the enterprise level without (1) a high degree of design coordination, (2) access to expensive and sophisticated design and testing equipment; (3) access to UNIX code, methods and concepts; (4) UNIX architectural experience; and (5) a very significant financial investment.

I'd be interested to see what kind of design and test equipment you use for building a kernel. Maybe they produce the schematics referred to elsewhere in this document.

Anyway, it's easy to refute this statement. Linux isn't the only open source operating system. What about FreeBSD, NetBSD and OpenBSD? They have no large company behind them, but they're arguably of even higher quality than Linux. The Open Source development model does work, even if SCO doesn't want to believe it.

85.         For example, Linux is currently capable of coordinating the simultaneous performance of 4 computer processors.  UNIX, on the other hand, commonly links 16 processors and can successfully link up to 32 processors for simultaneous operation.  This difference in memory management performance is very significant to enterprise customers who need extremely high computing capabilities for complex tasks.  The ability to accomplish this task successfully has taken AT&T, Novell and SCO at least 20 years, with access to expensive equipment for design and testing, well-trained UNIX engineers and a wealth of experience in UNIX methods and concepts.

I wonder what they think they mean by "coordination" and "linking". Are they supposed to mean the same thing?

The claim is demonstrably untrue. At the last AUUG annual conference I heard a paper about building a Linux kernel on a 32 way system. It took 4.7 seconds. The CPU load information showed that 24 of them were doing useful user work, which I consider a very impressive figure. By contrast, SCO's flagship OpenUNIX 8.0 is licensed for only 8 CPUs. Sure, they say that it "can scale up from there", but if they don't have a licensing option for more, you can be pretty sure that this is vapourware.

In passing, it's interesting to note that one of the main advantages they claim for OpenUNIX is that it supports "the freedom and flexibility of Linux® systems."

88.         In the process of moving from product offerings to services offerings, IBM dramatically increased its staff of systems integrators to 120,000 strong under the marketing brand “IBM Global Services.”

Nonsense. IBM Global Services are not systems integrators. They also don't say what the alleged systems integrators were integrating. IBM also doesn't market Linux, so it's hardly likely to be Linux.

The truth is that IBM has a number of Linux developers who are working on improving Linux. They work for the Linux Technology Center, part of IBM's Server Division. I don't know how many people work there, but below it's quoted as being 250, Considering that IBM has about 350,000 employees world-wide, it's preposterous to assume that they could afford to put one third of the total work force into a free operating system.

91.         Among other actions, IBM misappropriated the confidential and proprietary information from SCO in Project Monterey.  IBM thereafter misused its access to the UNIX Software Code.  On or about August 17, 2000, IBM and Red Hat Inc. issued a joint press release through M2 Presswire announcing, inter alia, as follows:

“IBM today announced a global agreement that enables Red Hat, Inc. to bundle IBM’s Linux-based software. 

Yes, but that's IBM's PowerPC Linux port. As SCO observes above, that can't have anything to do with what SCO contributed to Project Monterey.

92.         Thereafter, on December 20, 2000, IBM Vice President Robert LeBlanc disclosed IBM’s improper use of confidential and proprietary information learned from Project Monterey to bolster Linux as part of IBM’s long term vision, stating:

“Project Monterey was actually started before Linux did.  When we started the push to Monterey, the notion was to have one common OS for several architectures.  The notion actually came through with Linux, which was open source and supported all hardware.  We continued with Monterey as an extension of AIX [IBM UNIX] to support high-end hardware.  AIX 5 has the best of Monterey.  Linux cannot fill that need today, but over time we believe it will.  To help out we’re making contributions to the open source movement like the journal file system.  We can’t tell our customers to wait for Linux to grow up. 

If this is running on AIX, it's clearly also running on PowerPC. Again, it can't have anything to do with what SCO contributed to Project Monterey. It's interesting to note that SCO doesn't have any objection to the presence of this code in AIX, which allows the conclusion that they don't think IBM is doing anything wrong with it on that platform.

We’re willing to open source any part of AIX that the Linux community considers valuable.  We have open-sourced the journal filesystem, print driver for the Omniprint.  AIX is 1.5 million lines of code.  If we dump that on the open source community then are people going to understand it?  You’re better off taking bits and pieces and the expertise that we bring along with it.  We have made a conscious decision to keep contributing.” 

In fact, this is not correct. The JFS which was released as Open Source is based on OS/2, not the AIX JFS, which itself was derived from BSD FFS and thus wouldn't have been AT&T code anyway.

93.         IBM, however, was not and is not in a position legally to “open source any part of AIX that the Linux community considers valuable.”  Rather, IBM is obligated not to open source AIX because it contains SCO’s confidential and proprietary UNIX operating system

Nonsense. The license agreements can't possibly obligate IBM to give their intellectual property to SCO. Sure, they would need an agreement with SCO before releasing any SCO code, but they can release their own code if they want.

About fifteen years ago Bill Jolitz started ridding the BSD source tree of AT&T code. It turned out to be the vast minority of the code. I'd expect the same to hold true of AIX in relation to System V, especially since I believe a lot of OSF/1 was imported as well. And of course System V contains a large quantity of BSD code.

and, more importantly, the code that is essential for running mission critical applications (e.g., wire transfers) for large businesses.

Of course it's not essential. Other systems are better for this sort of transaction. But what on earth does this have to do with the argument?

98.         Continuing with its “happy and comfortable” idea that Linux succeeds at the expense of UNIX, on or about January 23, 2003, IBM executive Steve Mills’ gave a keynote speech at LinuxWorld, a trade show, which was reported by Computer Reseller News, IBM’s Mills: Linux Will be on Par with UNIX in No Time, January 23, 2003, inter alia, as follows:

IBM will exploit its expertise in AIX to bring Linux up to par with UNIX, an IBM executive said Thursday.

During his keynote at LinuxWorld here, IBM Senior Vice President and group executive Steve Mills acknowledged that Linux lags behind UNIX in scalability, SMP support, fail-over capabilities and reliability--but not for long.

‘The pathway to get there is an eight-lane highway,’ Mills said, noting that IBM's deep experience with AIX and its 250-member open-source development team will be applied to make the Linux kernel as strong as that of UNIX. ‘The road to get there is well understood.’

I note that the complaint doesn't question the statement that the LTC has 250 employees. That's a whole lot less than the 120,000 they were talking about above.

99.         The only way that the pathway is an “eight-lane highway” for Linux to achieve the scalability, SMP support, fail-over capabilities and reliability of UNIX is by the improper extraction, use, and dissemination of the proprietary and confidential UNIX Software Code and libraries. 

Unsubstantiated nonsense. Nobody who has worked on kernel code could believe this. It's easier to rewrite code than to incorporate existing code written for a different system.

Indeed, UNIX was able to achieve its status as the premiere operating system only after decades of hard work, beginning with the finest computer scientists at AT&T Bell Laboratories, plaintiff’s predecessor in interest.

100.     Based on other published statements, IBM currently has over 7,000 employees involved in the transfer of UNIX knowledge into the Linux business of IBM, Red Hat and SuSE (the largest European Linux distributor).

Yet another number. Where did it come from?

105.     Plaintiff is the owner of unique know how, concepts, ideas, methodologies, standards, specifications, programming, techniques, UNIX Software Code, object code, architecture, design and schematics that allow UNIX to operate with unmatched extensibility, scalability, reliability and security (hereinafter defined as “SCO’s Trade Secrets”).  SCO’s Trade Secrets provide SCO with an advantage over its competitors.

As noted above, this is incorrect. I wonder if it's enough to get the suit thrown out.

The rest of the document is legalese. I can't comment on it.


Greg's home page Greg's diary Greg's photos Copyright

Valid XHTML 1.0!

$Id: complaint-rebuttal.php,v 1.14 2013/06/19 02:18:20 grog Exp $