Subject: Re: ACL stuff
To: None <current-users@NetBSD.ORG>
From: Christos Zoulas <christos@deshaw.com>
List: current-users
Date: 04/21/1995 16:41:08
In article <199504211340.XAA21710@vitruvius.arbld.unimelb.EDU.AU> darrenr@vitruvius.arbld.unimelb.edu.au (Darren Reed) writes:

[ stuff deleted ]
>Back to CDF's for a sec, find on HP-UX has a flag (-H (?)) as does ls
>(-H) to show the CDF's.  How does a CDF work ? (for those that don't
>know).  The CDF is actually a directory with a special flag set. Under
>that directory, you create files for each "context".  If the directory
>is "empty" or has no matching "context" then the directory doesn't show
>up in a normal "ls".  If there is a file matching the current "context"
>in the directory, that file becomes the directory.  So if I have a
>directory "foo" and make it a CDF, then create a file "foo/default" and
>do "ls -alg foo", I see the stats for "foo/default".  To reference "foo"
>as the directory, "foo+" would be used.  CDF's with no matching context
>are sometimes called "hidden directories" (hence the +/- H).  This can
>sometimes cause distress if you use them as such (and I have :-() because
>you can easily lose files when doing backups which ignore them.

Actually the special bit is the setuid bit on the directories. By running
chmod u+s dirname, you can turn it to a CDF...
What I am not sure about, is what constitutes a context. Is the machine
type a context? The hostname? The cluster name? In what priority are these
being resolved?

The CDF is a neat idea, but:

- I hate the foo+ notation; it reserves another special character.
- I hate the -H stuff. If you really want to see what is in a CDF,
  you can always chmod it back; then you don't need another system
  call or access method.
- I don't like the fact that HPUX felt like adding a command to make
  a CDF instead of documenting chmod +s.

Maybe it is going to be simple to add a simple form of CDF's to the
kernel just for the purpose of building multi-architecture CDROMs,
and disable that option in all other cases. 

christos