NAME

     configfile - generic configuration file format


SYNOPSIS

     */etc/*.conf


DESCRIPTION

     The syntax of the generic configuration file  format  is  as
     follows:

          configfile:     empty
                  |       configline configfile
                  ;

          configline:     wordlist ';'
                  |       include string ';'
                  ;

          wordlist:       empty
                  |       word wordlist
                  |       string wordlist
                  |       '{' configfile '}' wordlist
                  ;

          empty:  ;

     A word is a sequence of  letters,  numbers,  and  characters
     from  the set !#$%&*+-./<=>?[\]^_|~.  A backslash (\) may be
     followed by a character in the set abefnrstv to form a  BEL,
     BS,  ESC, FF, NL, CR, SP, TAB, or VT character.  Followed by
     up to three octal  digits  a  character  of  that  value  is
     formed,  and likewise for an x followed by up to two hexade-
     cimal  digits.   Any  other  character  is  left  as-is.   A
     backslash  followed by whitespace is completely removed from
     the input.  (This includes comments.)

     A string is started by a single or double quote, a series of
     characters,  and  ended by the same type of quote it started
     with.  Any character or escape with \  may  be  found  in  a
     string.  Strings may not span lines.

     Tokens are separated by whitespace,  being  the  usual  whi-
     tespace  characters and comments.  A comment starts with the
     # character, and ends at a newline.

     The special word include tells that the  file  mentioned  in
     the  following  string  must  be  read  and included at that
     point.  The file is found  relative  to  the  directory  the
     current  configuration  file  is  found  in, unless its name
     starts with a /.  A file  that  doesn't  exist  is  seen  as
     empty.

     A generic configuration file can be read with the  functions
     described in configfile(3).


EXAMPLES

     Have a look at /etc/dhcp.conf.


SEE ALSO

     configfile(3).


NOTES

     Inspired by the configuration file of Paul Vixie's bind.


AUTHOR

     Kees J. Bot (kjb@cs.vu.nl)