]> git.saurik.com Git - apple/libc.git/blobdiff - include/fts.h
Libc-498.1.7.tar.gz
[apple/libc.git] / include / fts.h
index ccf4118d8e1fdcc5399656d8785a5b1965aee2ef..74ba8427d3fb5247a7a269297e6b96a21e790189 100644 (file)
 #ifndef        _FTS_H_
 #define        _FTS_H_
 
+#include <sys/_types.h>
+
+#ifndef _DEV_T
+typedef        __darwin_dev_t          dev_t;          /* device number */
+#define _DEV_T
+#endif
+
+#ifndef        _INO_T
+typedef        __darwin_ino_t  ino_t;          /* inode number */
+#define _INO_T
+#endif
+
+#ifndef _NLINK_T
+typedef        __uint16_t              nlink_t;        /* link count */
+#define        _NLINK_T
+#endif
+
 typedef struct {
        struct _ftsent *fts_cur;        /* current node */
        struct _ftsent *fts_child;      /* linked list of children */
@@ -77,7 +94,8 @@ typedef struct {
 #define        FTS_SEEDOT      0x020           /* return dot and dot-dot */
 #define        FTS_XDEV        0x040           /* don't cross devices */
 #define        FTS_WHITEOUT    0x080           /* return whiteout information */
-#define        FTS_OPTIONMASK  0x0ff           /* valid user option mask */
+#define        FTS_COMFOLLOWDIR 0x400          /* (non-std) follow command line symlinks for directories only */
+#define        FTS_OPTIONMASK  0x4ff           /* valid user option mask */
 
 #define        FTS_NAMEONLY    0x100           /* (private) child names only */
 #define        FTS_STOP        0x200           /* (private) unrecoverable error */
@@ -94,8 +112,8 @@ typedef struct _ftsent {
        char *fts_path;                 /* root path */
        int fts_errno;                  /* errno for this node */
        int fts_symfd;                  /* fd for symlink */
-       u_short fts_pathlen;            /* strlen(fts_path) */
-       u_short fts_namelen;            /* strlen(fts_name) */
+       unsigned short fts_pathlen;     /* strlen(fts_path) */
+       unsigned short fts_namelen;     /* strlen(fts_name) */
 
        ino_t fts_ino;                  /* inode */
        dev_t fts_dev;                  /* device */
@@ -119,18 +137,18 @@ typedef struct _ftsent {
 #define        FTS_SL          12              /* symbolic link */
 #define        FTS_SLNONE      13              /* symbolic link without target */
 #define        FTS_W           14              /* whiteout object */
-       u_short fts_info;               /* user flags for FTSENT structure */
+       unsigned short fts_info;        /* user flags for FTSENT structure */
 
 #define        FTS_DONTCHDIR    0x01           /* don't chdir .. to the parent */
 #define        FTS_SYMFOLLOW    0x02           /* followed a symlink to get here */
 #define        FTS_ISW          0x04           /* this is a whiteout object */
-       u_short fts_flags;              /* private flags for FTSENT structure */
+       unsigned short fts_flags;       /* private flags for FTSENT structure */
 
 #define        FTS_AGAIN        1              /* read node again */
 #define        FTS_FOLLOW       2              /* follow symbolic link */
 #define        FTS_NOINSTR      3              /* no instructions */
 #define        FTS_SKIP         4              /* discard node */
-       u_short fts_instr;              /* fts_set() instructions */
+       unsigned short fts_instr;       /* fts_set() instructions */
 
        struct stat *fts_statp;         /* stat(2) information */
        char fts_name[1];               /* file name */
@@ -139,12 +157,53 @@ typedef struct _ftsent {
 #include <sys/cdefs.h>
 
 __BEGIN_DECLS
-FTSENT *fts_children(FTS *, int);
-int     fts_close(FTS *);
+//Begin-Libc
+#ifndef LIBC_ALIAS_FTS_CHILDREN
+//End-Libc
+FTSENT *fts_children(FTS *, int) __DARWIN_INODE64(fts_children);
+//Begin-Libc
+#else /* LIBC_ALIAS_FTS_CHILDREN */
+FTSENT *fts_children(FTS *, int) LIBC_INODE64(fts_children);
+#endif /* !LIBC_ALIAS_FTS_CHILDREN */
+//End-Libc
+//Begin-Libc
+#ifndef LIBC_ALIAS_FTS_CLOSE
+//End-Libc
+int     fts_close(FTS *) __DARWIN_INODE64(fts_close);
+//Begin-Libc
+#else /* LIBC_ALIAS_FTS_CLOSE */
+int     fts_close(FTS *) LIBC_INODE64(fts_close);
+#endif /* !LIBC_ALIAS_FTS_CLOSE */
+//End-Libc
+//Begin-Libc
+#ifndef LIBC_ALIAS_FTS_OPEN
+//End-Libc
+FTS    *fts_open(char * const *, int,
+           int (*)(const FTSENT **, const FTSENT **)) __DARWIN_INODE64(fts_open);
+//Begin-Libc
+#else /* LIBC_ALIAS_FTS_OPEN */
 FTS    *fts_open(char * const *, int,
-           int (*)(const FTSENT **, const FTSENT **));
-FTSENT *fts_read(FTS *);
-int     fts_set(FTS *, FTSENT *, int);
+           int (*)(const FTSENT **, const FTSENT **)) LIBC_INODE64(fts_open);
+#endif /* !LIBC_ALIAS_FTS_OPEN */
+//End-Libc
+//Begin-Libc
+#ifndef LIBC_ALIAS_FTS_READ
+//End-Libc
+FTSENT *fts_read(FTS *) __DARWIN_INODE64(fts_read);
+//Begin-Libc
+#else /* LIBC_ALIAS_FTS_READ */
+FTSENT *fts_read(FTS *) LIBC_INODE64(fts_read);
+#endif /* !LIBC_ALIAS_FTS_READ */
+//End-Libc
+//Begin-Libc
+#ifndef LIBC_ALIAS_FTS_SET
+//End-Libc
+int     fts_set(FTS *, FTSENT *, int) __DARWIN_INODE64(fts_set);
+//Begin-Libc
+#else /* LIBC_ALIAS_FTS_SET */
+int     fts_set(FTS *, FTSENT *, int) LIBC_INODE64(fts_set);
+#endif /* !LIBC_ALIAS_FTS_SET */
+//End-Libc
 __END_DECLS
 
 #endif /* !_FTS_H_ */