1 
  2 
  3 06/20/87 set_acl, sa
  4 
  5 
  6 Syntax as a command:  sa path mode1 {User_id1...modeN User_idN}
  7 {-control_args}
  8 
  9 
 10 Function:  manipulates the access control lists (ACLs) of nonlink
 11 entries in a directory (see the Programmer's Reference Manual for a
 12 discussion of ACLs).
 13 
 14 
 15 Arguments:
 16 path
 17    If it is -working_directory (-wd), the user's working directory is
 18    assumed.  You can use the star convention, which applies to types of
 19    entries, depending on the type of mode specified in modeN.
 20 modeN
 21    is a valid access mode.  For segments it can consist of any or all
 22    the letters rew; for multisegment files, it can consist of the
 23    letters rw.  Note that the letter e is not available to multisegment
 24    files.  For directories, of any or all the letters sma except that
 25    if you give m, you must supply s also.  Use null (n, "") to specify
 26    null access.  To obtain a list of modes for extended types, see the
 27    describe_entry_type command.
 28 
 29 
 30 User_idN
 31    is an access control name of the form Person_id.Project_id.tag.  All
 32    ACL entries with matching names receive modeN.  (For a description
 33    of the matching strategy, see "Examples" below.)  If no match is
 34    found and you give the three components, an entry is added to the
 35    ACL.  If you omit the last User_id, your Person_id and Project_id
 36    are assumed.
 37 
 38 
 39 Control arguments:
 40 -brief, -bf
 41    suppresses error messages of the form "No match for User_id on ACL
 42    of <path>", where User_id omits components.
 43 -chase
 44    chases links matching a star name.  Links are always chased when
 45    path is not a star name.
 46 -no_chase
 47    does not chase links when using the star convention.  (Default)
 48 -no_sysdaemon, -nsd
 49    does not add "rw *.SysDaemon.*" when using -replace.
 50 
 51 
 52 -replace, -rp
 53    deletes all ACL terms--with the exception of the default
 54    *.SysDaemon.* term unless you supplied -no_sysdaemon--before adding
 55    the terms specified on the command line.  (Default:  to add to and
 56    modify the existing ACL)
 57 -sysdaemon, -sd
 58    adds, with -replace, a "rw *.SysDaemon.*" ACL term before adding the
 59    terms specified on the command line.  (Default)
 60 
 61 
 62 Select either of the following control arguments to avoid the ambiguity
 63 that occurs only when modeN is null and you use the star convention in
 64 path:
 65 
 66 -directory, -dr
 67    affects directories only.
 68 -interpret_as_extended_entry, -inaee
 69    interpret the selected entry as an extended entry type.
 70 -interpret_as_standard_entry, -inase
 71    interpret the selected entry as a standard entry type.
 72 -segment, -sm
 73    affects segments and multisegment files only.  (Default)
 74 -select_entry_type STR, -slet STR
 75    affects only entries of the entry type selected by STR, which is a
 76    comma-delimited list of file system entry types.  Use the
 77    list_entry_types command to obtain a list of valid entry type
 78    values.
 79 
 80 
 81 Access required:  You require modify permission on the containing
 82 directory.
 83 
 84 
 85 Notes:  The arguments are processed from left to right; therefore the
 86 effect of a particular pair of arguments can be changed by a later
 87 pair.  When you use the star convention to specify the last component
 88 of an entryname, extended entries are excluded from any matches.
 89 
 90 
 91 The strategy for matching an access control name argument is defined by
 92 three rules:
 93 
 94 
 95    1) A literal component, including "*", matches only a component of
 96       the same name.
 97 
 98 
 99    2) A missing component not delimited by a period is treated the same
100       as a literal "*" (e.g., "*.Multics" is treated as "*.Multics.*").
101       Missing components on the left must be delimited by periods.
102 
103 
104    3) A missing component delimited by a period matches any component.
105 
106 
107