aboutsummaryrefslogtreecommitdiffstats
path: root/lib/getcwd.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2006-08-21Remove from CVS, since the bootstrap script generates them automatically.Paul Eggert1-420/+0
2006-07-11Sync from gnulib.Paul Eggert1-7/+1
2006-07-09Update from gnulib.Paul Eggert1-13/+3
2006-03-19Work even in a chroot where d_ino values for entries in "/"Jim Meyering1-48/+71
don't match the stat.st_ino values for the same names. (__getcwd): When no d_ino value matches the target inode number, iterate through all entries again, using lstat instead. Reported by Kenshi Muto in http://bugs.debian.org/355810.
2006-03-19(__getcwd): Clarify a comment.Jim Meyering1-3/+3
Use memcpy in place of a call to strcpy.
2006-02-21(AT_FDCWD): Work around a bug in Solaris 9 and 10, wherePaul Eggert1-1/+9
AT_FDCWD exceeds INT_MAX.
2005-10-30(__getcwd): Don't assume that system calls after readdirPaul Eggert1-40/+41
leave errno alone. Problem reported by Dmitry V. Levin.
2005-09-27Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef HAVE_CONFIG_H.Jim Meyering1-1/+1
2005-09-22Sync from gnulib.Paul Eggert1-1/+1
2005-07-02Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.Jim Meyering1-4/+1
2005-07-01Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,Jim Meyering1-3/+1
and don't include <sys/file.h>).
2005-06-02Don't use "path" or "filename" to mean "file name"Paul Eggert1-30/+30
in comments or local variable names.
2005-05-14Update FSF postal mail address.Jim Meyering1-1/+1
2004-12-01(is_ENAMETOOLONG): New macro.Paul Eggert1-8/+34
(__getcwd.c): Don't restore errno; glibc doesn't. [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd first, falling back to our code only if its results look suspicious. Ensure that the resulting buffer is only as large as necessary.
2004-11-26filesystems -> file systemsPaul Eggert1-1/+1
2004-11-25Replace by a copy of glibc/sysdeps/posix/getcwd.c, butPaul Eggert1-37/+351
with the following changes. (__set_errno): Parenthesize properly. Include <stdbool.h>. (MIN, MAX, MATCHING_INO): New macros. (__getcwd): Define with prototype, not K&R form. Use heuristics to allocate default buffer on stack if possible. If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2) behavior, and to avoid the PATH_MAX limit when computing ../../../../... Use MATCHING_INO to compare inode number to file. Check for arithmetic overflow in size calculations. Fix bug in reallocation of dot array that caused getcwd to fail on directories nested deeper than 75. Be more careful about saving errno on error. Do not use realloc; use only free+malloc, as this is a bit more flexible and avoids a needless copy operation. Do not inspect st_dev and st_ino for symbolic links; POSIX doesn't specify the latter. Check for closedir errors. Avoid needless casts. Use "#ifdef weak_alias" around weak_alias, to be like other glibc code. The following changes to getcwd.c have effect only when used in gnulib; they have no effect inside glibc proper. (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove, as alloca isn't used. (alloca, __alloca): Likewise. [!_LIBC]: Include "getcwd.h", "mempcpy.h". Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h> unconditionally, as gnulib assumes C89 or better. Do not include <sys/param.h>. (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or better. (NULL) [!defined NULL]: Remove; we assume C89 or better. Include <dirent.h> in a way that is compatible with modern Autoconf. (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN): New macros, if not already defined. Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__. Use "_LIBC", not "defined _LIBC", for consistency. (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has a mempcpy module. (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros. (GETCWD_RETURN_TYPE): Remove. All uses replaced by char *.
2004-08-02Update copyright.Paul Eggert1-1/+1
2004-08-02(errno): Remove decl; we now assume C89 or better.Paul Eggert1-5/+0
2003-03-07#undef getcwd only after *all* included header files.Jim Meyering1-4/+8
Declare getcwd unconditionally.
2003-03-06#undef getcwd before including system headers.Jim Meyering1-8/+4
This avoid a build failure on IRIX 6.5. Reported by Nelson Beebe.
2003-03-06[!HAVE_DECL_GETCWD]: Declare getcwd.Jim Meyering1-0/+4
2003-03-05commentsJim Meyering1-4/+7
2003-03-04*** empty log message ***Jim Meyering1-0/+67