table of contents
GETWD(3P) | POSIX Programmer's Manual | GETWD(3P) |
PROLOG¶
This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ (consult the corresponding Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux.
NAME¶
getwd - get the current working directory pathname (LEGACY)
SYNOPSIS¶
#include <unistd.h>
char *getwd(char *path_name);
DESCRIPTION¶
The getwd() function shall determine an absolute pathname of the current working directory of the calling process, and copy a string containing that pathname into the array pointed to by the path_name argument.
If the length of the pathname of the current working directory is greater than ({PATH_MAX}+1) including the null byte, getwd() shall fail and return a null pointer.
RETURN VALUE¶
Upon successful completion, a pointer to the string containing the absolute pathname of the current working directory shall be returned. Otherwise, getwd() shall return a null pointer and the contents of the array pointed to by path_name are undefined.
ERRORS¶
No errors are defined.
The following sections are informative.
EXAMPLES¶
None.
APPLICATION USAGE¶
For applications portability, the getcwd() function should be used to determine the current working directory instead of getwd().
RATIONALE¶
Since the user cannot specify the length of the buffer passed to getwd(), use of this function is discouraged. The length of a pathname described in {PATH_MAX} is file system-dependent and may vary from one mount point to another, or might even be unlimited. It is possible to overflow this buffer in such a way as to cause applications to fail, or possible system security violations.
It is recommended that the getcwd() function should be used to determine the current working directory.
FUTURE DIRECTIONS¶
This function may be withdrawn in a future version.
SEE ALSO¶
getcwd(), the Base Definitions volume of IEEE Std 1003.1-2001, <unistd.h>
COPYRIGHT¶
Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between this version and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html .
2003 | IEEE/The Open Group |