The kernel ABI files

Not to be confused with The Linux A.B.I. project, these are the files within the Linux kernel that define Linux's native ABI.

"Dear Linux User"/"Dear Unix Licensee" letter, 19 December 2003 (127-M)

Linux kernel 2.4.21

The files listed are from Linux 2.4.21 [download] [copying] which was released on 13 June 2003. The next release was 2.4.22 on 25 August 2003.

Certain copyrighted application binary interfaces ("ABI Code") have been copied verbatim from our copyrighted UNIX code base and contributed to Linux for distribution under the General Public License ("GPL") without proper authorization and without copyright attribution. While some application programming interfaces ("API Code") have been made available over the years through POSIX and other open standards, the UNIX ABI Code has only been made available under copyright restrictions. [...] Files in Linux version 2.4.21 and other versions that incorporate the copyrighted binary interfaces include:

include/asm-alpha/errno.h
include/asm-arm/errno.h
include/asm-cris/errno.h
include/asm-i386/errno.h
include/asm-ia64/errno.h
include/asm-m68k/errno.h
include/asm-mips/errno.h
include/asm-mips64/errno.h
include/asm-parisc/errno.h
include/asm-ppc/errno.h
include/asm-ppc64/errno.h
include/asm-s390/errno.h
include/asm-s390x/errno.h
include/asm-sh/errno.h
include/asm-sparc/errno.h
include/asm-sparc64/errno.h
include/asm-x86_64/errno.h
include/asm-alpha/signal.h
include/asm-arm/signal.h
include/asm-cris/signal.h
include/asm-i386/signal.h
include/asm-ia64/signal.h
include/asm-m68k/signal.h
include/asm-mips/signal.h
include/asm-mips64/signal.h
include/asm-parisc/signal.h
include/asm-ppc/signal.h
include/asm-ppc64/signal.h
include/asm-s390/signal.h
include/asm-s390x/signal.h
include/asm-sh/signal.h
include/asm-sparc/signal.h
include/asm-sparc64/signal.h
include/asm-x86_64/signal.h
include/linux/stat.h
include/linux/ctype.h
lib/ctype.c
include/asm-alpha/ioctl.h
include/asm-alpha/ioctls.h
include/asm-arm/ioctl.h
include/asm-cris/ioctl.h
include/asm-i386/ioctl.h
include/asm-ia64/ioctl.h
include/asm-m68k/ioctl.h
include/asm-mips/ioctl.h
include/asm-mips64/ioctl.h
include/asm-mips64/ioctls.h
include/asm-parisc/ioctl.h
include/asm-parisc/ioctls.h
include/asm-ppc/ioctl.h
include/asm-ppc/ioctls.h
include/asm-ppc64/ioctl.h
include/asm-ppc64/ioctls.h
include/asm-s390/ioctl.h
include/asm-s390x/ioctl.h
include/asm-sh/ioctl.h
include/asm-sh/ioctls.h
include/asm-sparc/ioctl.h
include/asm-sparc/ioctls.h
include/asm-sparc64/ioctl.h
include/asm-sparc64/ioctls.h
include/asm-x86_64/ioctl.h
include/linux/ipc.h
include/linux/acct.h
include/asm-sparc/a.out.h
include/linux/a.out.h
arch/mips/boot/ecoff.h
include/asm-sparc/bsderrno.h
include/asm-sparc/solerrno.h
include/asm-sparc64/bsderrno.h
include/asm-sparc64/solerrno.h

Total 71 files

Revised Supplemental Response 15 January 2004 (103-1)

Pages 59-61: Linux kernel 2.4.21

By the time of this document, dated 15 January 2004 - just two weeks after the "Dear" letters - the list had shrunk from 71 files to 63 files. As previously, the files listed are from Linux 2.4.21 [download] [copying] which was released on 13 June 2003. The next release was 2.4.22 on 25 August 2003.

include/asm-alpha/ errno.h ioctl.h ioctls.h signal.h
include/asm-arm/ errno.h ioctl.h   signal.h
include/asm-cris/ errno.h ioctl.h   signal.h
include/asm-i386/ errno.h ioctl.h   signal.h
include/asm-ia64/ errno.h ioctl.h   signal.h
include/asm-m68k/ errno.h ioctl.h   signal.h
include/asm-mips/ errno.h ioctl.h   signal.h
include/asm-mips64/ errno.h ioctl.h ioctls.h signal.h
include/asm-parisc/ errno.h ioctl.h   signal.h
include/asm-ppc/ errno.h ioctl.h ioctls.h signal.h
include/asm-s390/ errno.h ioctl.h   signal.h
include/asm-s390x/ errno.h ioctl.h   signal.h
include/asm-sh/ errno.h ioctl.h ioctls.h signal.h
include/asm-sparc/ errno.h ioctl.h ioctls.h signal.h
include/asm-sparc64/ errno.h ioctl.h ioctls.h signal.h
include/asm-x86_64 errno.h ioctl.h   signal.h
include/linux/ acct.h ctype.h ipc.h stat.h
lib/ ctype.c      

Total 63 files

Files in the previous list but now omitted are as follows:

include/asm-parisc/ioctls.h
include/asm-sparc/a.out.h
include/linux/a.out.h
arch/mips/boot/ecoff.h
include/asm-sparc/bsderrno.h
include/asm-sparc/solerrno.h
include/asm-sparc64/bsderrno.h
include/asm-sparc64/solerrno.h

Final Disclosure 22 December 2005

Items 183-184 (ongoing): Line-for-line code copied from System V into the Linux kernel [SCO 724 Appx A p.2] Misappropriation in the form of changed or revised code [SCO 724 Appx A p.3]. SCO's proprietary System V code was simply copied and pasted into the Linux kernel or associated libraries that were then included in a Red Hat distribution [SCO 724 Appx A p.3]. A material part of the code identified in this letter [127-M, see above] was part of the December 2005 Submission [SCO 724 Appx A p.4]

Items 201-203 (ongoing): The code identified in this letter [127-M, see above] was part of the October 2005 Submission [SCO 724 Appx A p.4]