The Open Group Base Specifications Issue 7
IEEE Std 1003.1-2008, 2016 Edition
Copyright © 2001-2016 The IEEE and The Open Group

NAME

ftw.h - file tree traversal

SYNOPSIS

[XSI] [Option Start] #include <ftw.h> [Option End]

DESCRIPTION

The <ftw.h> header shall define the FTW structure, which shall include at least the following members:

int  base
int  level

The <ftw.h> header shall define the following symbolic constants for use as values of the third argument to the application-supplied function that is passed as the second argument to ftw() and nftw():

FTW_F
Non-directory file.
FTW_D
Directory.
FTW_DNR
Directory without read permission.
FTW_DP
Directory with subdirectories visited.
FTW_NS
Unknown type; stat() failed.
FTW_SL
Symbolic link.
FTW_SLN
Symbolic link that names a nonexistent file.

The <ftw.h> header shall define the following symbolic constants for use as values of the fourth argument to nftw():

FTW_PHYS
Physical walk, does not follow symbolic links. Otherwise, nftw() follows links but does not walk down any path that crosses itself.
FTW_MOUNT
The walk does not cross a mount point.
FTW_DEPTH
All subdirectories are visited before the directory itself.
FTW_CHDIR
The walk changes to each directory before reading it.

The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.

[OB][Option Start]
int ftw(const char *, int (*)(const char *, const struct stat *,
    int), int);
[Option End]
int nftw(const char *, int (*)(const char *, const struct stat *,
    int, struct FTW *), int, int);

The <ftw.h> header shall define the stat structure and the symbolic names for st_mode and the file type test macros as described in <sys/stat.h>.

Inclusion of the <ftw.h> header may also make visible all symbols from <sys/stat.h>.


The following sections are informative.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

<sys/stat.h>

XSH ftw, nftw

CHANGE HISTORY

First released in Issue 1. Derived from Issue 1 of the SVID.

Issue 5

A description of FTW_DP is added.

Issue 7

The ftw() function is marked obsolescent.

This reference page is clarified with respect to macros and symbolic constants.

POSIX.1-2008, Technical Corrigendum 1, XBD/TC1-2008/0048 [403] is applied.

End of informative text.

 

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2016 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]