    CREAT(II)                     8/5/73                    CREAT(II)

    NAME
         creat  -  create a new file

    SYNOPSIS
         (creat = 8.)
         sys creat; name; mode
         (file descriptor in r0)

         creat(name, mode)
         char *name;

    DESCRIPTION
         Creat  creates a new file or prepares to rewrite an existing
         file called name, given as the address of a  null-terminated
         string.   If  the file did not exist, it is given mode mode.
         See chmod(II) for the construction of the mode argument.

         If the file did exist, its mode and owner  remain  unchanged
         but it is truncated to 0 length.

         The file is also opened for writing, and its file descriptor
         is returned (in r0).

         The mode given is arbitrary;  it  need  not  allow  writing.
         This  feature  is used by programs which deal with temporary
         files of fixed names.  The creation is done with a mode that
         forbids  writing.   Then if a second instance of the program
         attempts a creat, an error is returned and the program knows
         that the name is unusable for the moment.

    SEE ALSO
         write(II), close(II), stat(II)

    DIAGNOSTICS
         The  error  bit (c-bit) may be set if: a needed directory is
         not searchable; the file does not exist and the directory in
         which it is to be created is not writable; the file does ex-
         ist and is unwritable; the file is a  directory;  there  are
         already too many files open.

         From C, a -1 return indicates an error.

                                  - 1 -