YAFIC.CONF(5)                  File Formats Manual                 YAFIC.CONF(5)

       yafic.conf -- yafic(1) configuration file

       yafic.conf is the configuration file used by yafic(1). It specifies how
       yafic(1) should examine the filesystem.

       Blank lines are ignored.

       You may use double quotes ``"'' to enclose strings with spaces. Escape
       double quotes by prefixing them with a ``\''.

       Comments begin with ``#''. Everything until the end of line is ignored.
       You may escape ``#'' characters by either quoting them or prefixing them
       with a ``\''.

       A line ending with ``\'' specifies that the line following it is to be
       interpreted as its continuation.

       Each line is of the form:

       entry-name flags

       Where entry-name is the name of a file or directory (relative to the
       root. See the -r option to yafic(1)) and flags are which file attributes
       to check.

       Normally, if entry-name is a directory, its contents will also be checked
       using flags.  This behavior can be changed by using prefixes.

       An entry defined with the form


       will be ignored.  entry-name and its contents will not be examined. An
       entry defined like this:

       =entry-name flags

       will mean that the contents of entry-name will not be looked at.  flags
       will apply to entry-name and entry-name only.  Finally, an entry defined
       like this:

       $entry-name flags

       will still have its contents checked. However, flags will only apply to
       entry-name.  Its contents will keep their previous flags. If no flags
       were previously defined, then the contents will inherit the flags from
       entry-name's parent. If there is no entry for entry-name's parent or the
       entry is an ignore entry, then the flags will be inherited from entry-
       name's grandparent, etc. This will continue up to the root until a non-
       ignored entry is found. If none is found, the contents will inherit the
       default flags.

       Directories that serve as mount points for other filesystems are always
       ignored and are never recursed into. To recurse into a mount point, an
       entry for it must be explicitly defined.

       Each entry can be checked for changes in certain file attributes.  These
       attributes are:

       p      Permissions/mode.

       i      inode number.

       n      Number of links.

       u      User ID.

       g      Group ID.

       s      Size.

       a      Access timestamp.

       m      Modification timestamp.

       c      Creation timestamp/inode modification timestamp.

       h      SHA-1 hash of contents.

       If flags is unspecified, it defaults to `pinugmch'.  Flags can be added
       or removed relative to the default by prefixing them with ``+'' or ``-''.
       For example:

              /some/file  +s-mh

       The resultant flags for /some/file would be `pinugsc'.

       For convenience, there are a few flag templates defined:

       R      Same as `pinugmch'.  (`Read-only')

       L      Same as `pinug'.  (`Log file')

       N      Same as `pinugsamch'.  (`Ignore nothing')

       E      Same as `'. (`Ignore everything')

       If a template is used, it must be the first listed. Flags may be added or
       removed from a template by prefixing them with ``+'' or ``-''
       respectively. For example:

              /another/file  L+h

       /another/file would have the flags `pinugh'.

       If you wish to know when files are added or removed from a directory, but
       you don't care about changes to the directory or its contents, you must
       use the ``E'' template rather than prefixing the directory with ``!''.

       Each entry is parsed in order. Entries defined later will override
       earlier ones. So, for example:

              /var/log  L

       means that /var and its contents will be ignored. However, /var/log and
       its contents will be checked using the ``L'' template.  Changing the
       order changes the meaning:

              /var/log  L

       In this case, /var and its contents are totally ignored. The /var/log
       entry is overridden by the subsequent !/var.

       Optionally, one or more of the following special entries can appear:

              %dirmask mask
              %filemask mask
              %linkmask mask
              %specialmask mask

       mask is parsed exactly like flags, described previously.

       When changes are detected in an entry, depending on the entry's type
       (directory, file, symbolic links, special), one of the four masks is
       checked. The change is reported only if the corresponding flag is set in
       the mask.

       By default, all masks have all flags ('pinugsamch') set.

       Note that when a mask for a particular type is set, only entries defined
       afterwards inherit that mask.

              Default yafic(1) configuration file.


                                December 12, 2003                  YAFIC.CONF(5)