# HG changeset patch # User Jim Meyering # Date 1136889323 0 # Node ID dcbc41f9d21d4982c2ac3f2cfaac67d4632d086a # Parent 53ea27501d2151d6af8b64cef354567ca6220933 Remove entry for fts.c/openat.[ch] that crept in ahead of schedule. diff --git a/lib/ChangeLog b/lib/ChangeLog --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -45,36 +45,6 @@ * version-etc.c (COPYRIGHT_YEAR): Update to 2006. - 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. - * chdir-safer.h, chdir-safer.c: New files. * modechange.c (mode_compile): Reject an invalid mode string