Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ mkdir(2) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chmod(2)

mknod(2)

umask(2)

stat(5)



mkdir(2)                                                 mkdir(2)



NAME
     mkdir - make a directory

SYNOPSIS
     #include <sys/types.h>
     #include <sys/stat.h>

     int mkdir(const char *path, modet mode);

DESCRIPTION
     mkdir creates a new directory named by the path name pointed
     to  by  path.   The mode of the new directory is initialized
     from mode [see chmod(2) for values of mode].  The protection
     part  of the mode argument is modified by the process's file
     creation mask [see umask(2)].

     The directory's owner ID is set to the  process's  effective
     user  ID.   The directory's group ID is set to the process's
     effective group ID, or if the SISGID  bit  is  set  in  the
     parent  directory,  then  the  group  ID of the directory is
     inherited from the parent.   The  SISGID  bit  of  the  new
     directory is inherited from the parent directory.

     If path is a symbolic link, it is not followed.

     The newly created directory is empty with the  exception  of
     entries for itself (.)  and its parent directory (..).

     Upon successful  completion,  mkdir  marks  for  update  the
     statime,  stctime  and  stmtime  fields of the directory.
     Also, the stctime and stmtime fields of the directory that
     contains the new entry are marked for update.

     mkdir fails and creates no directory if one or more  of  the
     following are true:

     EACCES              Either a component of  the  path  prefix
                         denies  search  permission or write per-
                         mission is denied on the  parent  direc-
                         tory of the directory to be created.

     EEXIST              The named file already exists.

     EFAULT              path  points   outside   the   allocated
                         address space of the process.

     EIO                 An I/O error has occurred while  access-
                         ing the file system.

     ELOOP               Too many symbolic links were encountered
                         in translating path.




                                                                1





mkdir(2)                                                 mkdir(2)



     EMLINK              The  maximum  number  of  links  to  the
                         parent directory would be exceeded.

     EMULTIHOP           Components of path  require  hopping  to
                         multiple  remote  machines  and the file
                         system type does not allow it.

     ENAMETOOLONG        The length of the path argument  exceeds
                         {PATHMAX}, or the length of a path com-
                         ponent    exceeds    {NAMEMAX}    while
                         POSIXNOTRUNC is in effect.

     ENOENT              A component of the path prefix does  not
                         exist or is a null pathname.

     ENOLINK             path points to a remote machine and  the
                         link   to  that  machine  is  no  longer
                         active.

     ENOSPC              No free space is available on the device
                         containing the directory.

     ENOTDIR             A component of the path prefix is not  a
                         directory.

     EROFS               The path prefix resides on  a  read-only
                         file system.

DIAGNOSTICS
     Upon successful completion, a value of 0 is returned.   Oth-
     erwise, a value of -1 is returned, and errno is set to indi-
     cate the error.

SEE ALSO
     chmod(2), mknod(2), umask(2), stat(5).




















                                                                2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026