xref: /netbsd-src/lib/libc/compat/gen/compat___fts30.c (revision fda5f877e5074e9afbf7381626cd3cf7f50a1165)
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