=================================================================== RCS file: /cvs/mandoc/compat_fts.h,v retrieving revision 1.1 retrieving revision 1.5 diff -u -p -r1.1 -r1.5 --- mandoc/compat_fts.h 2014/08/11 01:39:00 1.1 +++ mandoc/compat_fts.h 2020/06/14 22:49:36 1.5 @@ -1,4 +1,4 @@ -/* $OpenBSD: compat_fts.h,v 1.1 2014/08/11 01:39:00 schwarze Exp $ */ +/* $OpenBSD: compat_fts.h,v 1.5 2020/06/14 22:49:36 schwarze Exp $ */ /* $NetBSD: fts.h,v 1.7 2012/03/01 16:18:51 hans Exp $ */ /* @@ -38,15 +38,18 @@ typedef struct { struct _ftsent *fts_cur; /* current node */ struct _ftsent *fts_child; /* linked list of children */ + struct _ftsent **fts_array; /* sort array */ dev_t fts_dev; /* starting device # */ char *fts_path; /* path for this descent */ - int fts_rfd; /* fd for root */ size_t fts_pathlen; /* sizeof(path) */ + int fts_nitems; /* elements in the sort array */ + int (*fts_compar)(const struct _ftsent **, const struct _ftsent **); + /* compare function */ #define FTS_NOCHDIR 0x0004 /* don't change directories */ #define FTS_PHYSICAL 0x0010 /* physical walk */ #define FTS_XDEV 0x0040 /* don't cross devices */ -#define FTS_OPTIONMASK 0x00ff /* valid user option mask */ +#define FTS_OPTIONMASK 0x0054 /* valid user option mask */ #define FTS_STOP 0x2000 /* (private) unrecoverable error */ int fts_options; /* fts_open options, global flags */ @@ -85,9 +88,6 @@ typedef struct _ftsent { #define FTS_SL 12 /* symbolic link */ unsigned short fts_info; /* user flags for FTSENT structure */ -#define FTS_DONTCHDIR 0x01 /* don't chdir .. to the parent */ - unsigned short fts_flags; /* private flags for FTSENT structure */ - #define FTS_NOINSTR 3 /* no instructions */ #define FTS_SKIP 4 /* discard node */ unsigned short fts_instr; /* fts_set() instructions */ @@ -96,11 +96,11 @@ typedef struct _ftsent { char fts_name[1]; /* file name */ } FTSENT; -__BEGIN_DECLS + int fts_close(FTS *); -FTS *fts_open(char * const *, int, void *); +FTS *fts_open(char * const *, int, + int (*)(const FTSENT **, const FTSENT **)); FTSENT *fts_read(FTS *); int fts_set(FTS *, FTSENT *, int); -__END_DECLS #endif /* !_FTS_H_ */