diff options
-rw-r--r-- | include/fts.h | 5 | ||||
-rw-r--r-- | lib/libc/gen/fts.3 | 8 | ||||
-rw-r--r-- | lib/libc/gen/fts.c | 30 |
3 files changed, 11 insertions, 32 deletions
diff --git a/include/fts.h b/include/fts.h index 9fbc028d75b..41f1ffc9ed0 100644 --- a/include/fts.h +++ b/include/fts.h @@ -1,4 +1,4 @@ -/* $OpenBSD: fts.h,v 1.3 1997/09/21 10:45:34 niklas Exp $ */ +/* $OpenBSD: fts.h,v 1.4 1999/10/03 19:22:22 millert Exp $ */ /* $NetBSD: fts.h,v 1.5 1994/12/28 01:41:50 mycroft Exp $ */ /* @@ -58,8 +58,7 @@ typedef struct { #define FTS_SEEDOT 0x0020 /* return dot and dot-dot */ #define FTS_XDEV 0x0040 /* don't cross devices */ #define FTS_WHITEOUT 0x0080 /* return whiteout information */ -#define FTS_CHDIRROOT 0x0100 /* chdir to root of tree not orig cwd */ -#define FTS_OPTIONMASK 0x0fff /* valid user option mask */ +#define FTS_OPTIONMASK 0x00ff /* valid user option mask */ #define FTS_NAMEONLY 0x1000 /* (private) child names only */ #define FTS_STOP 0x2000 /* (private) unrecoverable error */ diff --git a/lib/libc/gen/fts.3 b/lib/libc/gen/fts.3 index 0fc6263fe23..61df9e1ab2f 100644 --- a/lib/libc/gen/fts.3 +++ b/lib/libc/gen/fts.3 @@ -1,4 +1,4 @@ -.\" $OpenBSD: fts.3,v 1.14 1999/08/27 19:00:48 millert Exp $ +.\" $OpenBSD: fts.3,v 1.15 1999/10/03 19:22:22 millert Exp $ .\" .\" Copyright (c) 1989, 1991, 1993, 1994 .\" The Regents of the University of California. All rights reserved. @@ -454,12 +454,6 @@ This option prevents .Nm from descending into directories that have a different device number than the file from which the descent began. -.It Dv FTS_CHDIRROOT -This option causes -.Fn fts_read -to change the current directory to the root of the hierarchy when -starting a new one. The default is to change to the original -starting directory. .El .Pp The diff --git a/lib/libc/gen/fts.c b/lib/libc/gen/fts.c index a2983891f20..26d67fff3f9 100644 --- a/lib/libc/gen/fts.c +++ b/lib/libc/gen/fts.c @@ -1,4 +1,4 @@ -/* $OpenBSD: fts.c,v 1.21 1999/10/03 19:17:31 millert Exp $ */ +/* $OpenBSD: fts.c,v 1.22 1999/10/03 19:22:22 millert Exp $ */ /*- * Copyright (c) 1990, 1993, 1994 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)fts.c 8.6 (Berkeley) 8/14/94"; #else -static char rcsid[] = "$OpenBSD: fts.c,v 1.21 1999/10/03 19:17:31 millert Exp $"; +static char rcsid[] = "$OpenBSD: fts.c,v 1.22 1999/10/03 19:22:22 millert Exp $"; #endif #endif /* LIBC_SCCS and not lint */ @@ -373,16 +373,9 @@ next: tmp = p; * the root of the tree), and load the paths for the next root. */ if (p->fts_level == FTS_ROOTLEVEL) { - if ((sp->fts_options & FTS_CHDIRROOT)) { - if (chdir(p->fts_accpath)) { - SET(FTS_STOP); - return (NULL); - } - } else { - if (FCHDIR(sp, sp->fts_rfd)) { - SET(FTS_STOP); - return (NULL); - } + if (FCHDIR(sp, sp->fts_rfd)) { + SET(FTS_STOP); + return (NULL); } fts_load(sp, p); return (sp->fts_cur = p); @@ -437,16 +430,9 @@ name: t = sp->fts_path + NAPPEND(p->fts_parent); * one directory. */ if (p->fts_level == FTS_ROOTLEVEL) { - if ((sp->fts_options & FTS_CHDIRROOT)) { - if (chdir(p->fts_accpath)) { - SET(FTS_STOP); - return (NULL); - } - } else { - if (FCHDIR(sp, sp->fts_rfd)) { - SET(FTS_STOP); - return (NULL); - } + if (FCHDIR(sp, sp->fts_rfd)) { + SET(FTS_STOP); + return (NULL); } } else if (p->fts_flags & FTS_SYMFOLLOW) { if (FCHDIR(sp, p->fts_symfd)) { |