1 1.8 christos /* $NetBSD: compat_fts.c,v 1.8 2013/10/04 21:07:37 christos Exp $ */ 2 1.1 christos 3 1.1 christos /* 4 1.1 christos * Written by Jason R. Thorpe <thorpej (at) NetBSD.org>, October 21, 1997. 5 1.1 christos * Public domain. 6 1.1 christos */ 7 1.1 christos 8 1.1 christos #include "namespace.h" 9 1.1 christos #include <sys/cdefs.h> 10 1.1 christos #include <dirent.h> 11 1.1 christos 12 1.4 christos #define __LIBC12_SOURCE__ 13 1.1 christos #include <sys/stat.h> 14 1.3 christos #include <compat/sys/time.h> 15 1.1 christos #include <compat/sys/stat.h> 16 1.1 christos 17 1.4 christos #define __fts_stat_t struct stat12 18 1.4 christos #define __fts_nlink_t u_int16_t 19 1.4 christos #define __fts_ino_t u_int32_t 20 1.4 christos #define __fts_length_t unsigned short 21 1.4 christos #define __fts_number_t long 22 1.4 christos #define __fts_dev_t uint32_t 23 1.4 christos #define __fts_level_t short 24 1.1 christos 25 1.6 christos #ifndef ftsent_namelen 26 1.6 christos #define ftsent_namelen_truncate(a) \ 27 1.5 joerg ((a) > USHRT_MAX ? USHRT_MAX : (unsigned short)(a)) 28 1.6 christos #endif 29 1.6 christos #ifndef fts_pathlen_truncate 30 1.5 joerg #define ftsent_pathlen_truncate(a) \ 31 1.5 joerg ((a) > USHRT_MAX ? USHRT_MAX : (unsigned short)(a)) 32 1.6 christos #endif 33 1.5 joerg 34 1.1 christos #include <fts.h> 35 1.1 christos #include <compat/include/fts.h> 36 1.1 christos 37 1.1 christos #ifdef __weak_alias 38 1.1 christos __weak_alias(fts_children,_fts_children) 39 1.1 christos __weak_alias(fts_close,_fts_close) 40 1.1 christos __weak_alias(fts_open,_fts_open) 41 1.1 christos __weak_alias(fts_read,_fts_read) 42 1.1 christos __weak_alias(fts_set,_fts_set) 43 1.1 christos #endif /* __weak_alias */ 44 1.1 christos 45 1.1 christos __warn_references(fts_children, 46 1.1 christos "warning: reference to compatibility fts_children();" 47 1.1 christos " include <fts.h> for correct reference") 48 1.1 christos __warn_references(fts_close, 49 1.1 christos "warning: reference to compatibility fts_close();" 50 1.1 christos " include <fts.h> for correct reference") 51 1.1 christos __warn_references(fts_open, 52 1.1 christos "warning: reference to compatibility fts_open();" 53 1.1 christos " include <fts.h> for correct reference") 54 1.1 christos __warn_references(fts_read, 55 1.1 christos "warning: reference to compatibility fts_read();" 56 1.1 christos " include <fts.h> for correct reference") 57 1.1 christos __warn_references(fts_set, 58 1.1 christos "warning: reference to compatibility fts_set();" 59 1.1 christos " include <fts.h> for correct reference") 60 1.1 christos 61 1.2 christos #define __FTS_COMPAT_TAILINGSLASH 62 1.4 christos #define __FTS_COMPAT_LENGTH 63 1.4 christos #define __FTS_COMPAT_LEVEL 64 1.2 christos 65 1.8 christos #define stat __compat_stat 66 1.8 christos #define lstat __compat_lstat 67 1.8 christos #define fstat __compat_fstat 68 1.7 christos 69 1.1 christos #include "gen/fts.c" 70