summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2006-01-06 16:48:27 +0000
committerJim Meyering <jim@meyering.net>2006-01-06 16:48:27 +0000
commit00d069f7d942a84dce149b466ef05b40722c7a20 (patch)
treec0038964a1983c8a4c04d0a58a4535e25fc4ee89
parentea20facd900363ae9c2e5283da0917438bef86e2 (diff)
downloadcoreutils-00d069f7d942a84dce149b466ef05b40722c7a20.tar.xz
*** empty log message ***
-rw-r--r--lib/ChangeLog37
1 files changed, 37 insertions, 0 deletions
diff --git a/lib/ChangeLog b/lib/ChangeLog
index 8c4b5bcaf..f97ad13fb 100644
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -1,3 +1,40 @@
+2006-01-06 Jim Meyering <jim@meyering.net>
+
+ * version-etc.c (COPYRIGHT_YEAR): Update to 2006.
+
+2006-01-05 Jim Meyering <jim@meyering.net>
+
+ Rewrite fts.c not to change the current working directory,
+ by using openat, fstatat, fdopendir, etc..
+
+ * fts.c [! _LIBC]: Include "openat.h", "unistd--.h", and "fcntl--.h".
+ [_LIBC] (fchdir): Don't undef or define; no longer used.
+ (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
+ Now, this `function' always succeeds, and consumes its file descriptor
+ parameter -- so callers must not close such FDs. Update callers.
+ (diropen_fd, opendirat, cwd_advance_fd): New functions.
+ (diropen): Add parameter, SP. Adjust all callers.
+ Implement using diropen_fd, rather than open.
+ (fts_open): Initialize new member, fts_cwd_fd.
+ Remove fts_rft-setting code.
+ (fts_close): Close fts_cwd_fd, if necessary.
+ (__opendir2): Define in terms of opendir or opendirat,
+ depending on whether the FST_NOCHDIR flag is set.
+ (fts_build): Since fts_safe_changedir consumes its FD, and since
+ this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
+ and close the dup'd file descriptor upon failure.
+ (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
+ (fts_safe_changedir): Tweak semantics to reflect that this function
+ now calls cwd_advance_fd and hence consumes its FD argument.
+ * fts_.h [struct FTS] (fts_cwd_fd): New member.
+ (fts_rft): Remove now-unused member.
+
+ * openat.c (fchownat): New function.
+ * openat.h (fchmodat, fchownat): Declare.
+ (chmodat, lchmodat): Define convenience functions.
+ (chownat, lchownat): Likewise.
+ * fchmodat.c: New file.
+
2006-01-04 Paul Eggert <eggert@cs.ucla.edu>
* strftime.c (tzname): Don't declare if it is already #defined.