summaryrefslogtreecommitdiffstats
path: root/man2/chdir.2
diff options
context:
space:
mode:
Diffstat (limited to 'man2/chdir.2')
-rw-r--r--man2/chdir.2128
1 files changed, 128 insertions, 0 deletions
diff --git a/man2/chdir.2 b/man2/chdir.2
new file mode 100644
index 000000000..897153502
--- /dev/null
+++ b/man2/chdir.2
@@ -0,0 +1,128 @@
+.\" Hey Emacs! This file is -*- nroff -*- source.
+.\"
+.\" Copyright (c) 1992 Drew Eckhardt (drew@cs.colorado.edu), March 28, 1992
+.\"
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date. The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein. The author(s) may not
+.\" have taken the same level of care in the production of this manual,
+.\" which is licensed free of charge, as they might when working
+.\" professionally.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\"
+.\" Modified by Michael Haardt <michael@moria.de>
+.\" Modified 1993-07-21 by Rik Faith <faith@cs.unc.edu>
+.\" Modified 1995-04-15 by Michael Chastain <mec@shell.portal.com>:
+.\" Added 'fchdir'. Fixed bugs in error section.
+.\" Modified 1996-10-21 by Eric S. Raymond <esr@thyrsus.com>
+.\" Modified 1997-08-21 by Joseph S. Myers <jsm28@cam.ac.uk>
+.\" Modified 2004-06-23 by Michael Kerrisk <mtk16@ext.canterbury.ac.nz>
+.\"
+.TH CHDIR 2 2004-06-23 "Linux 2.6.7" "Linux Programmer's Manual"
+.SH NAME
+chdir, fchdir \- change working directory
+.SH SYNOPSIS
+.B #include <unistd.h>
+.sp
+.BI "int chdir(const char *" path );
+.br
+.BI "int fchdir(int " fd );
+.SH DESCRIPTION
+.B chdir
+changes the current directory to that specified in
+.IR path .
+.PP
+.B fchdir
+is identical to
+.BR chdir ;
+the only difference is that the directory is given as an
+open file descriptor.
+.SH "RETURN VALUE"
+On success, zero is returned. On error, \-1 is returned, and
+.I errno
+is set appropriately.
+.SH ERRORS
+Depending on the file system, other errors can be returned. The more
+general errors for
+.B chdir
+are listed below:
+.TP
+.B EACCES
+Search permission is denied for one of the directories in the path prefix of
+.IR path .
+(See also
+.BR path_resolution (2).)
+.TP
+.B EFAULT
+.I path
+points outside your accessible address space.
+.TP
+.B EIO
+An I/O error occurred.
+.TP
+.B ELOOP
+Too many symbolic links were encountered in resolving
+.IR path .
+.TP
+.B ENAMETOOLONG
+.I path
+is too long.
+.TP
+.B ENOENT
+The file does not exist.
+.TP
+.B ENOMEM
+Insufficient kernel memory was available.
+.TP
+.B ENOTDIR
+A component of
+.I path
+is not a directory.
+.PP
+The general errors for
+.B fchdir
+are listed below:
+.TP
+.B EACCES
+Search permission was denied on the directory open on
+.IR fd .
+.TP
+.B EBADF
+.I fd
+is not a valid file descriptor.
+.SH NOTES
+The prototype for
+.B fchdir
+is only available if
+.B _BSD_SOURCE
+is defined (either explicitly, or implicitly, by not defining
+_POSIX_SOURCE or compiling with the -ansi flag).
+.SH "CONFORMING TO"
+The
+.B chdir
+call is compatible with SVr4, SVID, POSIX, X/OPEN, 4.4BSD. SVr4 documents
+additional EINTR, ENOLINK, and EMULTIHOP error conditions but has
+no ENOMEM. POSIX.1 does not have ENOMEM or ELOOP error conditions.
+X/OPEN does not have EFAULT, ENOMEM or EIO error conditions.
+
+The
+.B fchdir
+call is compatible with SVr4, 4.4BSD and X/OPEN.
+SVr4 documents additional EIO, EINTR, and ENOLINK error conditions.
+X/OPEN documents additional EINTR and EIO error conditions.
+.SH "SEE ALSO"
+.BR chroot (2),
+.BR path_resolution (2),
+.BR getcwd (3)