Print this page
remove support for non-ANSI compilation
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/head/ftw.h
+++ new/usr/src/head/ftw.h
1 1 /*
2 2 * CDDL HEADER START
3 3 *
4 4 * The contents of this file are subject to the terms of the
5 5 * Common Development and Distribution License (the "License").
6 6 * You may not use this file except in compliance with the License.
7 7 *
8 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 * or http://www.opensolaris.org/os/licensing.
10 10 * See the License for the specific language governing permissions
11 11 * and limitations under the License.
↓ open down ↓ |
11 lines elided |
↑ open up ↑ |
12 12 *
13 13 * When distributing Covered Code, include this CDDL HEADER in each
14 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 15 * If applicable, add the following below this CDDL HEADER, with the
16 16 * fields enclosed by brackets "[]" replaced with your own identifying
17 17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 18 *
19 19 * CDDL HEADER END
20 20 */
21 21 /*
22 + * Copyright 2014 Garrett D'Amore <garrett@damore.org>
23 + *
22 24 * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
23 25 * Use is subject to license terms.
24 26 */
25 27
26 28 /* Copyright (c) 1988 AT&T */
27 29 /* All Rights Reserved */
28 30
29 31
30 32 #ifndef _FTW_H
31 33 #define _FTW_H
32 34
33 -#pragma ident "%Z%%M% %I% %E% SMI"
34 -
35 35 #include <sys/feature_tests.h>
36 36
37 37 #include <sys/types.h>
38 38 #include <sys/stat.h>
39 39
40 40 #ifdef __cplusplus
41 41 extern "C" {
42 42 #endif
43 43
44 44 /*
45 45 * Codes for the third argument to the user-supplied function.
46 46 */
47 47
48 48 #define FTW_F 0 /* file */
49 49 #define FTW_D 1 /* directory */
50 50 #define FTW_DNR 2 /* directory without read permission */
51 51 #define FTW_NS 3 /* unknown type, stat failed */
52 52 #define FTW_SL 4 /* symbolic link */
53 53 #define FTW_DP 6 /* directory */
54 54 #define FTW_SLN 7 /* symbolic link that points to nonexistent file */
55 55 #define FTW_DL 8 /* private interface for find utility */
56 56
57 57 /*
58 58 * Codes for the fourth argument to nftw. You can specify the
59 59 * union of these flags.
60 60 */
61 61
62 62 #define FTW_PHYS 01 /* use lstat instead of stat */
63 63 #define FTW_MOUNT 02 /* do not cross a mount point */
64 64 #define FTW_CHDIR 04 /* chdir to each directory before reading */
65 65 #define FTW_DEPTH 010 /* call descendents before calling the parent */
66 66 #define FTW_ANYERR 020 /* return FTW_NS on any stat failure */
67 67 #define FTW_HOPTION 040 /* private interface for find utility */
68 68 #define FTW_NOLOOP 0100 /* private interface for find utility */
69 69
70 70 #if defined(__EXTENSIONS__) || !defined(_XOPEN_SOURCE) || defined(_XPG4_2)
71 71 struct FTW
72 72 {
73 73 #if defined(_XPG4_2)
74 74 int __quit;
75 75 #else
76 76 int quit;
77 77 #endif
78 78 int base;
79 79 int level;
80 80 };
81 81 #endif /* defined(__EXTENSIONS__) || !defined(_XOPEN_SOURCE) ... */
82 82
83 83 /*
84 84 * legal values for quit
85 85 */
86 86
87 87 #define FTW_SKD 1
88 88 #define FTW_FOLLOW 2
89 89 #define FTW_PRUNE 4
90 90
91 91 /* large file compilation environment setup */
92 92 #if !defined(_LP64) && _FILE_OFFSET_BITS == 64
93 93 #ifdef __PRAGMA_REDEFINE_EXTNAME
94 94 #pragma redefine_extname _xftw _xftw64
95 95 #pragma redefine_extname _ftw _ftw64
96 96 #if !defined(_XOPEN_SOURCE) || defined(_XPG5)
97 97 #pragma redefine_extname nftw nftw64
98 98 #endif
99 99 #else /* __PRAGMA_REDEFINE_EXTNAME */
100 100 #define _xftw _xftw64
101 101 #define _ftw _ftw64
102 102 #if !defined(_XOPEN_SOURCE) || defined(_XPG5)
103 103 #define nftw nftw64
104 104 #endif
105 105 #endif /* __PRAGMA_REDEFINE_EXTNAME */
106 106 #endif /* !_LP64 && _FILE_OFFSET_BITS == 64 */
107 107
108 108 /* In the LP64 compilation environment, all APIs are already large file */
109 109 #if defined(_LP64) && defined(_LARGEFILE64_SOURCE)
110 110 #ifdef __PRAGMA_REDEFINE_EXTNAME
111 111 #pragma redefine_extname _xftw64 _xftw
112 112 #pragma redefine_extname _ftw64 _ftw
113 113 #if !defined(_XOPEN_SOURCE) || defined(_XPG5)
114 114 #pragma redefine_extname nftw64 nftw
↓ open down ↓ |
70 lines elided |
↑ open up ↑ |
115 115 #endif
116 116 #else /* __PRAGMA_REDEFINE_EXTNAME */
117 117 #define _xftw64 _xftw
118 118 #define _ftw64 _ftw
119 119 #if !defined(_XOPEN_SOURCE) || defined(_XPG5)
120 120 #define nftw64 nftw
121 121 #endif
122 122 #endif /* __PRAGMA_REDEFINE_EXTNAME */
123 123 #endif /* _LP64 && _LARGEFILE64_SOURCE */
124 124
125 -#if defined(__STDC__)
126 -
127 125 extern int ftw(const char *,
128 126 int (*)(const char *, const struct stat *, int), int);
129 127 extern int _xftw(int, const char *,
130 128 int (*)(const char *, const struct stat *, int), int);
131 129 #if defined(__EXTENSIONS__) || !defined(_XOPEN_SOURCE) || defined(_XPG4_2)
132 130 extern int nftw(const char *,
133 131 int (*)(const char *, const struct stat *, int, struct FTW *),
134 132 int, int);
135 133 #endif /* defined(__EXTENSIONS__) || !defined(_XOPEN_SOURCE) ... */
136 134
137 135 /*
138 136 * transitional large file interface versions
139 137 */
140 138 #if defined(_LARGEFILE64_SOURCE) && !((_FILE_OFFSET_BITS == 64) && \
141 139 !defined(__PRAGMA_REDEFINE_EXTNAME))
142 140 extern int ftw64(const char *,
↓ open down ↓ |
6 lines elided |
↑ open up ↑ |
143 141 int (*)(const char *, const struct stat64 *, int), int);
144 142 extern int _xftw64(int, const char *,
145 143 int (*)(const char *, const struct stat64 *, int), int);
146 144 #if !defined(_XOPEN_SOURCE)
147 145 extern int nftw64(const char *,
148 146 int (*)(const char *, const struct stat64 *, int, struct FTW *),
149 147 int, int);
150 148 #endif /* !defined(_XOPEN_SOURCE) */
151 149 #endif /* _LARGEFILE64_SOURCE .. */
152 150
153 -#else /* __STDC__ */
154 -
155 -extern int ftw(), _xftw();
156 -
157 -#if defined(__EXTENSIONS__) || !defined(_XOPEN_SOURCE) || defined(_XPG4_2)
158 -extern int nftw();
159 -#endif /* defined(__EXTENSIONS__) || !defined(_XOPEN_SOURCE) ... */
160 -
161 -/* transitional large file interface versions */
162 -#if defined(_LARGEFILE64_SOURCE) && !((_FILE_OFFSET_BITS == 64) && \
163 - !defined(__PRAGMA_REDEFINE_EXTNAME))
164 -extern int ftw64();
165 -extern int _xftw64();
166 -#if !defined(_XOPEN_SOURCE)
167 -extern int nftw64();
168 -#endif /* !defined(_XOPEN_SOURCE) */
169 -#endif /* _LARGEFILE64_SOURCE .. */
170 -
171 -#endif /* __STDC__ */
172 -
173 151 #define _XFTWVER 2 /* version of file tree walk */
174 152
175 153 #define ftw(path, fn, depth) _xftw(_XFTWVER, (path), (fn), (depth))
176 154
177 155 #if defined(_LARGEFILE64_SOURCE) && !((_FILE_OFFSET_BITS == 64) && \
178 156 !defined(__PRAGMA_REDEFINE_EXTNAME))
179 157 #define ftw64(path, fn, depth) _xftw64(_XFTWVER, (path), (fn), (depth))
180 158 #endif
181 159
182 160 #ifdef __cplusplus
183 161 }
184 162 #endif
185 163
186 164 #endif /* _FTW_H */
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX