1 /* $NetBSD: compat___fts30.c,v 1.8 2013/10/04 21:07:37 christos Exp $ */ 2 3 #include "namespace.h" 4 #include <sys/cdefs.h> 5 #include <dirent.h> 6 7 #define __LIBC12_SOURCE__ 8 9 __warn_references(__fts_children30, 10 "warning: reference to compatibility __fts_children30();" 11 " include <fts.h> for correct reference") 12 __warn_references(__fts_close30, 13 "warning: reference to compatibility __fts_close30();" 14 " include <fts.h> for correct reference") 15 __warn_references(__fts_open30, 16 "warning: reference to compatibility __fts_open30();" 17 " include <fts.h> for correct reference") 18 __warn_references(__fts_read30, 19 "warning: reference to compatibility __fts_read30();" 20 " include <fts.h> for correct reference") 21 __warn_references(__fts_set30, 22 "warning: reference to compatibility __fts_set30();" 23 " include <fts.h> for correct reference") 24 25 #include <sys/stat.h> 26 #include <compat/sys/time.h> 27 #include <compat/sys/stat.h> 28 29 #define __fts_stat_t struct stat30 30 #define __fts_length_t u_short 31 #define __fts_number_t long 32 #define __fts_dev_t uint32_t 33 #define __fts_level_t short 34 35 #define stat __compat___stat30 36 #define lstat __compat___lstat30 37 #define fstat __compat___fstat30 38 39 #ifndef ftsent_namelen_truncate 40 #define ftsent_namelen_truncate(a) \ 41 ((a) > USHRT_MAX ? USHRT_MAX : (unsigned short)(a)) 42 #endif 43 #ifndef ftsent_pathlen_truncate 44 #define ftsent_pathlen_truncate(a) \ 45 ((a) > USHRT_MAX ? USHRT_MAX : (unsigned short)(a)) 46 #endif 47 48 #undef fts_children 49 #define fts_children __fts_children30 50 #undef fts_close 51 #define fts_close __fts_close30 52 #undef fts_open 53 #define fts_open __fts_open30 54 #undef fts_read 55 #define fts_read __fts_read30 56 #undef fts_set 57 #define fts_set __fts_set30 58 59 #include <fts.h> 60 #include <compat/include/fts.h> 61 62 #define __FTS_COMPAT_LENGTH 63 #define __FTS_COMPAT_LEVEL 64 65 #include "gen/fts.c" 66