Ed, Bob Kridle or Asa Romberger would be good people to ask.   I've forgotten about the Fascist FS until you just mentioned it,   I seem to remember there was some work done on the Cory Hall machines to support using UNIX as a platform for CS classes and that FS was part of it.   I've completely forgotten what it all was other than the Pascal subsystem,   My memory is that not all of it migrated from the V6 based BSD system (aka 1BSD) to the later V7 based systems which the Vax (3/4BSD )and later (2.XBSD) work was done.

Kirk's SCCS files might have some of that in it, but I think he only captured from the VAX work onward - aka CSRG.


On Thu, Jan 9, 2014 at 12:01 PM, Jeremy C. Reed <reed@reedmedia.net> wrote:
I am also interested in this (and had researched it a little for my book
about history of Berkeley Unix).

A few years ago, Thompson had told me that while at Berkeley (on a
sabbatical), he did a modification at Berkeley to put in disk space
quotas to prevent runaways. (This "Berkeley" modification is also
mentioned in the pascal docs, see
http://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/doc/pascal/puman3.n )
I thought it was as a side-effect of this that users couldn't chown
files to others (since can't cause quota problems for others). But now I
see that already existed:

http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6/usr/man/man8/chown.8
from 1975 mentions "Only the super-user is allowed to change the owner
of a file, in order to simplify as yet unimplemented accounting
procedures."

But it appears that some Berkeley systems did have a concept of some
non-root users chowning files. Apparently there was a Berkeley Fascist
File System where only group masters were able to chown files owned by
members of a group. I also read there was a concept of "class users"
(uid < 0) who could not access others files regardless of open
permissions. For references see
http://www.dnull.com/bsd/oldnews/bsdnew20597.html
https://groups.google.com/forum/#!original/net.unix-wizards/RasSNg_DNHM/2Ty6wyObAFQJ
https://groups.google.com/forum/#!original/comp.unix.questions/I1nkZGl8Hl0/PYkaPZtvaeEJ
(Ed Gould from Berkeley also mentioned it to me.)

http://minnie.tuhs.org/cgi-bin/utree.pl?file=2BSD/upgrade/src/last.c
mentions "non-class users".
http://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/man6/dates.6 manual
mentions "class master accounts".
http://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/man6/whoison.6 appears
to define "class" and winfo database (which is not in 2BSD).

http://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/s6/chownall.c
has:
if (chgusr && !chggrp && source.uid == 0)
        panic("owner of \"%s\" is uid 0 in his group !?!", spth);
else if (!chgusr && chggrp && source.uid != 0)
        panic("owner of \"%s\" is not uid 0 of his group !?!", spth);
http://minnie.tuhs.org/cgi-bin/utree.pl?file=1BSD/man6/chownall.6
also mentions the "user number 0 in his group."

I am not sure what this concept of uid 0 "of a group" means. The way it
is all worded I don't think it is superuser uid 0. I think "group
master" is the same as "class master" and same as "uid 0 of a group".
Can anyone explain this?  (I can't find this concept in 2BSD nor 3BSD.)

Maybe this too much of a tangent, but seems to be about an old example
of users giving away files.
_______________________________________________
TUHS mailing list
TUHS@minnie.tuhs.org
https://minnie.tuhs.org/mailman/listinfo/tuhs