Saturday, January 20, 2018

The missing bits

Way way
Back back in the day, BSD was poised to take over the world.

But unexpectedly they smacked the bear on the nose and wound up in a year's long lawsuit which put the future of BSD in peril. 

In the end, everything was resolved with USL asking the CSRG (those responsible for BSD) to create a redacted release. This release was missing a few files and could not be compiled into a working release.

The open source projects (NetBSD, FreeBSD) scrambled to replace the missing parts and eventually released legally clean and unencumbered versions of their BSD-based operating systems.

Several years later, "historic unix" was released openly by Caldera (before they became the SCO group?), which put the formerly contested files out into the open.

A couple of years later, in 2004, a list of the contested files was released by Groklaw.

Here is the list, as far as I'm able to piece together:

Six Missing Header Files:

sys/sys/buf.h
sys/sys/proc.h
sys/sys/shm.h
sys/sys/tt y.h
sys/ufs/dinode.h
sys/ufs/inode.h

Restricted Files” (26 files):

sys/kern/init_main.c
sys/kern/kern_clock.c
sys/kern/kern_exec.c
sys/kern/kern_exit.c
sys/kern/kern_physio.c
sys/kern/kern_sig.c
sys/kern/kern_synch.c
sys/kern/subr_rmap.c
sys/kern/sys_generic.c
sys/kern/sys_process.c
sys/kern/sysv_shm.c
sys/kern/tty.c
sys/kern/tty_subr.c
sys/kern/vfs_bio.c
sys/kern/vfs_syscalls.c
sys/sys/buf.h
sys/sys/proc.h
sys/sys/shm.h
sys/sys/tty.h
sys/ufs/dinode.h
sys/ufs/inode.h
sys/ufs/ufs_bmap.c
sys/ufs/ufs_disksubr.c
sys/ufs/ufs_inode.c
sys/ufs/ufs_vnops.c
usr.bin/cpio/cpio.c
 

automating zfs mounts -a quick and very dirty script

 #!/bin/sh for x in obj xsrc src pkgsrc pkgsrc/distfiles pkgsrc/packages pkg         do zfs create ext/$x zfs set mountpoint=/usr/$x ext/$x ...