Loading...
include/fts.h Libc-320 Libc-583
--- Libc/Libc-320/include/fts.h
+++ Libc/Libc-583/include/fts.h
@@ -1,9 +1,7 @@
 /*
- * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2000, 2003-2006, 2008 Apple Inc. All rights reserved.
  *
  * @APPLE_LICENSE_HEADER_START@
- * 
- * Copyright (c) 1999-2003 Apple Computer, Inc.  All Rights Reserved.
  * 
  * This file contains Original Code and/or Modifications of Original Code
  * as defined in and that are subject to the Apple Public Source License
@@ -60,6 +58,23 @@
 #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 */
@@ -69,7 +84,14 @@
 	int fts_rfd;			/* fd for root */
 	int fts_pathlen;		/* sizeof(path) */
 	int fts_nitems;			/* elements in the sort array */
-	int (*fts_compar)();		/* compare function */
+#ifdef __BLOCKS__
+	union {
+#endif /* __BLOCKS__ */
+	    int (*fts_compar)();	/* compare function */
+#ifdef __BLOCKS__
+	    int (^fts_compar_b)();	/* compare block */
+	};
+#endif /* __BLOCKS__ */
 
 #define	FTS_COMFOLLOW	0x001		/* follow command line symlinks */
 #define	FTS_LOGICAL	0x002		/* logical walk */
@@ -79,10 +101,14 @@
 #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 */
+#ifdef __BLOCKS__
+#define	FTS_BLOCK_COMPAR 0x80000000	/* fts_compar is a block */
+#endif /* __BLOCKS__ */
 	int fts_options;		/* fts_open options, global flags */
 } FTS;
 
@@ -96,8 +122,8 @@
 	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 */
@@ -121,18 +147,18 @@
 #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 */
@@ -141,12 +167,66 @@
 #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 **));
-FTSENT	*fts_read(FTS *);
-int	 fts_set(FTS *, FTSENT *, 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 **)) LIBC_INODE64(fts_open);
+#endif /* !LIBC_ALIAS_FTS_OPEN */
+//End-Libc
+#ifdef __BLOCKS__
+//Begin-Libc
+#ifndef LIBC_ALIAS_FTS_OPEN_B
+//End-Libc
+FTS	*fts_open_b(char * const *, int,
+	    int (^)(const FTSENT **, const FTSENT **)) __DARWIN_INODE64(fts_open_b);
+//Begin-Libc
+#else /* LIBC_ALIAS_FTS_OPEN */
+FTS	*fts_open_b(char * const *, int,
+	    int (^)(const FTSENT **, const FTSENT **)) LIBC_INODE64(fts_open_b);
+#endif /* !LIBC_ALIAS_FTS_OPEN */
+//End-Libc
+#endif /* __BLOCKS__ */
+//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_ */