Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > M

mkdir(2)

HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

mkdir — make a directory file

SYNOPSIS

#include <sys/stat.h>

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

DESCRIPTION

The mkdir() system call creates a new directory file named by path. The file permission bits of the new directory are initialized from mode, and are modified by the process's file mode creation mask. For each bit set in the process's file mode creation mask, the corresponding bit in the new directory's mode is cleared (see umask(2)).

The directory's owner ID is set to the process's effective-user-ID. If the set-group-ID bit of the parent directory is set, the directory's group ID is set to the group ID of the parent directory. Otherwise, the directory's group ID is set to the process's effective-group-ID. The set-group-ID bit of the new directory is set to the same value as the set-group-ID bit of the parent directory.

Symbolic constants defining the access permission bits are found in the <sys/stat.h> header and are used to construct the argument mode. The value of the argument mode is the bitwise inclusive OR of the values of the desired permissions.

S_IRUSR

Read by owner.

S_IWUSR

Write by owner.

S_IXUSR

Execute (search) by owner.

S_IRGRP

Read by group.

S_IWGRP

Write by group.

S_IXGRP

Execute (search) by group.

S_IROTH

Read by others (that is, anybody else).

S_IWOTH

Write by others.

S_IXOTH

Execute (search) by others.

Access Control Lists - HFS File Systems Only

On HFS file systems implementing access control lists, the directory is created with three base ACL entries, corresponding to the file access permission bits (see acl(5)).

Access Control Lists - JFS File Systems Only

On JFS file systems that support access control lists, optional ACL entries are created corresponding to the parent directory's default ACL entries. Also, the parent directory's default ACL entries are copied as the new directory's default ACL entries (see aclv(5)).

RETURN VALUE

mkdir() returns one of the following values:

0

Successful completion.

-1

Failure. An error code is stored in errno.

ERRORS

If mkdir() fails, no directory is created and errno is set to one of the following values:

EACCES

A component of the path prefix denies search permission.

EACCES

The parent directory of the new directory denies write permission.

EDQUOT

User's or group's disk quota block or inode limit has been reached for this file system.

EEXIST

The named file already exists.

EFAULT

path points outside the process's allocated address space. The reliable detection of this error is implementation dependent.

EIO

An I/O error occurred while writing to the file system.

ELOOP

Too many symbolic links are encountered in translating the path name.

EMLINK

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

ENAMETOOLONG

The length of the specified path name exceeds PATH_MAX bytes, or the length of a component of the path name exceeds NAME_MAX bytes while _POSIX_NO_TRUNC is in effect.

ENOENT

A component of the path prefix does not exist.

ENOSPC

Not enough space on the file system.

ENOTDIR

A component of the path prefix is not a directory.

EROFS

The named file resides on a read-only file system.

AUTHOR

mkdir() was developed by the University of California, Berkeley.

STANDARDS CONFORMANCE

mkdir(): AES, SVID2, SVID3, XPG3, XPG4, FIPS 151-2, POSIX.1

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.