xref: /minix/minix/man/man2/chroot.2 (revision 7f5f010b)
Copyright (c) 1983 Regents of the University of California.
All rights reserved. The Berkeley software License Agreement
specifies the terms and conditions for redistribution.

@(#)chroot.2 6.3 (Berkeley) 8/26/85

CHROOT 2 "August 26, 1985"
C 5
NAME
chroot - change root directory
SYNOPSIS
#include <unistd.h>

int chroot(const char *dirname)
DESCRIPTION
Dirname is the address of the pathname of a directory, terminated by a null byte. Chroot causes this directory to become the root directory, the starting point for path names beginning with ``/''.

In order for a directory to become the root directory a process must have execute (search) access to the directory.

This call is restricted to the super-user.

"RETURN VALUE
Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and errno is set to indicate an error.
ERRORS
Chroot will fail and the root directory will be unchanged if one or more of the following are true:

15 [ENOTDIR] A component of the path name is not a directory.

15 [ENAMETOOLONG] The path name exceeds PATH_MAX characters.

15 [ENOENT] The named directory does not exist.

15 [EACCES] Search permission is denied for any component of the path name.

15 [ELOOP] Too many symbolic links were encountered in translating the pathname. (Minix-vmd)

15 [EFAULT] Path points outside the process's allocated address space.

15 [EIO] An I/O error occurred while reading from or writing to the file system.

"SEE ALSO"
chdir (2).