Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OSF1-V5.1-alpha)
Apropos / Subsearch:
optional field

chroot(2)							    chroot(2)


  chroot - Changes the effective root directory


  #include <&lt;unistd.h>&gt;

  int chroot (
	  const	char *path );


  Interfaces documented	on this	reference page conform to industry standards
  as follows:

  chroot():  XPG4, XPG4-UNIX

  Refer	to the standards(5) reference page for more information	about indus-
  try standards	and associated tags.


  path	    Points to the new effective	root directory.	 If the	path parame-
	    ter	refers to a symbolic link, the chroot()	function sets the
	    effective root directory to	the directory pointed to by the	sym-
	    bolic link.


  The chroot() function	causes the directory named by the path parameter to
  become the effective root directory.

  The effective	root directory is the starting point when searching for	a
  file's pathname that begins with a / (slash).	The current working directory
  is not affected by the chroot() function.

  The calling process must have	superuser privilege in order to	change the
  effective root directory.  The calling process must also have	search access
  to the new effective root directory.

  The .. (dot-dot) entry in the	effective root directory is interpreted	to
  mean the effective root directory itself.  Thus, .. (dot-dot)	cannot be
  used to access files outside the subtree rooted at the effective root


  Upon successful completion, a	value of 0 (zero) is returned.	If the
  chroot() function fails, a value of -1 is returned and errno is set to
  indicate the error.


  If the chroot() function fails, the effective	root directory remains
  unchanged and	errno may be set to one	of the following values:

  [EACCES]  Search permission is denied	for any	component of the pathname.

  [EFAULT]  The	path parameter points outside the process' allocated address

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

  [ELOOP]   More than MAXSYMLINKS symbolic links are encountered while
	    resolving path.

	    The	length of the path argument exceeds PATH_MAX or	a pathname
	    component is longer	than NAME_MAX.

  [ENOENT]  The	path parameter does not	exist or points	to an empty string.

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

  [EPERM]   The	process	does not have appropriate privilege.


  Functions: chdir(2)

  Commands: cd(1)

  Standards: standards(5)