"Fossies" - the Fresh Open Source Software Archive

Member "usr/include/ftw.h" (19 Aug 2019, 2376 Bytes) of package /windows/misc/cygwin-20190819-x86.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 /*  $OpenBSD: ftw.h,v 1.1 2003/07/21 21:13:18 millert Exp $ */
    2 
    3 /*
    4  * Copyright (c) 2003 Todd C. Miller <Todd.Miller@courtesan.com>
    5  *
    6  * Permission to use, copy, modify, and distribute this software for any
    7  * purpose with or without fee is hereby granted, provided that the above
    8  * copyright notice and this permission notice appear in all copies.
    9  *
   10  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
   11  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
   12  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
   13  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
   14  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
   15  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
   16  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
   17  *
   18  * Sponsored in part by the Defense Advanced Research Projects
   19  * Agency (DARPA) and Air Force Research Laboratory, Air Force
   20  * Materiel Command, USAF, under agreement number F39502-99-1-0512.
   21  *
   22  * $FreeBSD: /repoman/r/ncvs/src/include/ftw.h,v 1.2 2004/08/24 13:00:54 tjr Exp $
   23  */
   24 
   25 #ifndef _FTW_H
   26 #define _FTW_H
   27 
   28 #include <sys/types.h>
   29 #include <sys/stat.h>
   30 #include <sys/cdefs.h>
   31 
   32 /*
   33  * Valid flags for the 3rd argument to the function that is passed as the
   34  * second argument to ftw(3) and nftw(3).  Say it three times fast!
   35  */
   36 #define FTW_F       0   /* File.  */
   37 #define FTW_D       1   /* Directory.  */
   38 #define FTW_DNR     2   /* Directory without read permission.  */
   39 #define FTW_DP      3   /* Directory with subdirectories visited.  */
   40 #define FTW_NS      4   /* Unknown type; stat() failed.  */
   41 #define FTW_SL      5   /* Symbolic link.  */
   42 #define FTW_SLN     6   /* Sym link that names a nonexistent file.  */
   43 
   44 /*
   45  * Flags for use as the 4th argument to nftw(3).  These may be ORed together.
   46  */
   47 #define FTW_PHYS    0x01    /* Physical walk, don't follow sym links.  */
   48 #define FTW_MOUNT   0x02    /* The walk does not cross a mount point.  */
   49 #define FTW_DEPTH   0x04    /* Subdirs visited before the dir itself. */
   50 #define FTW_CHDIR   0x08    /* Change to a directory before reading it. */
   51 
   52 struct FTW {
   53     int base;
   54     int level;
   55 };
   56 
   57 __BEGIN_DECLS
   58 int ftw(const char *, int (*)(const char *, const struct stat *, int), int);
   59 int nftw(const char *, int (*)(const char *, const struct stat *, int,
   60         struct FTW *), int, int);
   61 __END_DECLS
   62 
   63 #endif  /* !_FTW_H */