.th FAM I 4/21/86
.sh NAME
fam\ - file access modifier
.sh SYNOPSIS
 fam
[-v] [[key  argument] ... ] filename
.sh DESCRIPTION
Fam allows file access modifications of files owned by the user.  The
argument -v puts fam into an interactive mode where the user will be
prompted for commands, if no other arguments other than the filename
are given, interactive mode is assumed.  Also, the -v flag must always
appear before any key arguments.  Key flags must always be followed by
an appropriate argument.  
.s1
The following are descriptions of the keys and their arguments.
.s1
.lp 13 8
-d      modify the discretionary access.  The argument following this
flag must be a three-digit octal number.  For example 744 sets owner:
read, write, execute, group: read, and world: read. Bits 0,1,2 
represent execute, write, and read respectively.
.s1
.lp 13 8
-g      change the group id of the file.  The argument following this
flag must be a legal group name.  The maximum length is 8 characters.
.s1
.lp 13 8
-o      change the owner of the file.  The argument following this flag
must be a legal user name.  The maximum length is 8 characters.
.s1
.lp 13 8
-s      change the security level of the file.  The argument following the
flag must be a legal security level name.  There are sixteen valid
security levels available.  These are limited to fifty characters in length
and are site dependent. (See also SME(VIII)). 
.s1
.lp 13 8
-i      change the integrity level of the file.  The argument following the
flag must be a legal integrity level name.  There are sixteen valid
integrity levels available.  These are limited to fifty characters in length
and are site dependent. (See also SME(VIII)). 
.s1
.lp 13 8
-c      delete a compartment from the compartment set.  The argument following
the flag must be a legal compartment name.  There are thirty-two valid
compartments.  These are limited to fifty characters in length and are
site dependent. (See also SME(VIII)).
.s1
.lp 13 8
+c      add a compartment to the compartment set.  The argument following
the the flag must be a legal compartment name.  There are thirty-two
valid compartments.  These are limited to fifty characters in length
and are site dependent.  (See also SME(VIII)).
.i0
.s1
The following interactive commands are available:
.s1
.lp 13 8
chmod   modify discretionary access
.lp 13 8
chown   change owner
.lp 13 8
chgrp   change group
.lp 13 8
addcom  add a security compartment
.lp 13 8
delcom  delete a security compartment
.lp 13 8
chsec   change the security level
.lp 13 8
chint   change the integrity level
.lp 13 8
help    display this list
.lp 13 8
display display the pending modification requests
.lp 13 8
quit    end interactive command mode
.lp 13 8
abort   abort file modifications
.i0
.s1
Fam will never allow the user to modify files he does not own or to
which he does not have write access.  Also the integrity level of a
file can never be raised above that of the user.  It should be noted
that when a user requests that a file be given a lower security level
(by either changing the security level to a lower one, or deleting a
compartment) the entire file will be displayed before the change is
allowed.
.sh "SEE ALSO"
cal(I),
Ksetpstat(II),
Ksetlevel(II),
compartment_set(IIa),
tii_struct(IIa)
.sh DIAGNOSTICS
.nf
"set priv failed"     program installed incorrectly, could
                      not set its privileges
"file access denied"  you do not have access to the file,
                      or it does not exist
.fi
various other messages when user names, or security level names are incorrect
.i0
.sh NOTES
.s1
Fam does not check to see if the filesystem maximum level is lower than
a security request being made.
 
.br
Fam should be auditing certain events.
