xref: /titanic_50/usr/src/lib/libast/common/llib-last (revision da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968)
1*da2e3ebdSchin/*
2*da2e3ebdSchin * CDDL HEADER START
3*da2e3ebdSchin *
4*da2e3ebdSchin * The contents of this file are subject to the terms of the
5*da2e3ebdSchin * Common Development and Distribution License (the "License").
6*da2e3ebdSchin * You may not use this file except in compliance with the License.
7*da2e3ebdSchin *
8*da2e3ebdSchin * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*da2e3ebdSchin * or http://www.opensolaris.org/os/licensing.
10*da2e3ebdSchin * See the License for the specific language governing permissions
11*da2e3ebdSchin * and limitations under the License.
12*da2e3ebdSchin *
13*da2e3ebdSchin * When distributing Covered Code, include this CDDL HEADER in each
14*da2e3ebdSchin * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*da2e3ebdSchin * If applicable, add the following below this CDDL HEADER, with the
16*da2e3ebdSchin * fields enclosed by brackets "[]" replaced with your own identifying
17*da2e3ebdSchin * information: Portions Copyright [yyyy] [name of copyright owner]
18*da2e3ebdSchin *
19*da2e3ebdSchin * CDDL HEADER END
20*da2e3ebdSchin */
21*da2e3ebdSchin/*
22*da2e3ebdSchin * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
23*da2e3ebdSchin * Use is subject to license terms.
24*da2e3ebdSchin *
25*da2e3ebdSchin * lib/libast/common/llib-last
26*da2e3ebdSchin *
27*da2e3ebdSchin */
28*da2e3ebdSchin
29*da2e3ebdSchin#pragma ident	"%Z%%M%	%I%	%E% SMI"
30*da2e3ebdSchin
31*da2e3ebdSchin/*LINTLIBRARY*/
32*da2e3ebdSchin/*PROTOLIB1*/
33*da2e3ebdSchin
34*da2e3ebdSchin#define _FTWALK_H 1
35*da2e3ebdSchin
36*da2e3ebdSchin#include <ast.h>
37*da2e3ebdSchin#include <align.h>
38*da2e3ebdSchin#include <ast_botch.h>
39*da2e3ebdSchin#include <ast_ccode.h>
40*da2e3ebdSchin#include <ast_common.h>
41*da2e3ebdSchin#include <ast_dir.h>
42*da2e3ebdSchin#include <ast_dirent.h>
43*da2e3ebdSchin#include <ast_float.h>
44*da2e3ebdSchin#include <ast_fs.h>
45*da2e3ebdSchin#include <ast_getopt.h>
46*da2e3ebdSchin#include <ast_iconv.h>
47*da2e3ebdSchin#include <ast_lib.h>
48*da2e3ebdSchin#include <ast_limits.h>
49*da2e3ebdSchin#include <ast_mmap.h>
50*da2e3ebdSchin#include <ast_mode.h>
51*da2e3ebdSchin#include <ast_nl_types.h>
52*da2e3ebdSchin#include <ast_param.h>
53*da2e3ebdSchin#include <ast_time.h>
54*da2e3ebdSchin#include <ast_tty.h>
55*da2e3ebdSchin#include <ast_types.h>
56*da2e3ebdSchin#include <ast_version.h>
57*da2e3ebdSchin#include <bytesex.h>
58*da2e3ebdSchin#include <ccode.h>
59*da2e3ebdSchin#include <cdt.h>
60*da2e3ebdSchin#include <debug.h>
61*da2e3ebdSchin#include <dirent.h>
62*da2e3ebdSchin#include <dt.h>
63*da2e3ebdSchin#include <endian.h>
64*da2e3ebdSchin#include <error.h>
65*da2e3ebdSchin#include <find.h>
66*da2e3ebdSchin#include <fnmatch.h>
67*da2e3ebdSchin#include <fnv.h>
68*da2e3ebdSchin#include <fs3d.h>
69*da2e3ebdSchin#include <fts.h>
70*da2e3ebdSchin#include <ftw.h>
71*da2e3ebdSchin#include <getopt.h>
72*da2e3ebdSchin#include <glob.h>
73*da2e3ebdSchin#include <hash.h>
74*da2e3ebdSchin#include <hashkey.h>
75*da2e3ebdSchin#include <hashpart.h>
76*da2e3ebdSchin#include <iconv.h>
77*da2e3ebdSchin#include <lc.h>
78*da2e3ebdSchin#include <limits.h>
79*da2e3ebdSchin#include <ls.h>
80*da2e3ebdSchin#include <magic.h>
81*da2e3ebdSchin#include <magicid.h>
82*da2e3ebdSchin#include <mc.h>
83*da2e3ebdSchin#include <mime.h>
84*da2e3ebdSchin#include <mnt.h>
85*da2e3ebdSchin#include <modecanon.h>
86*da2e3ebdSchin#include <namval.h>
87*da2e3ebdSchin#include <nl_types.h>
88*da2e3ebdSchin#include <option.h>
89*da2e3ebdSchin#include <preroot.h>
90*da2e3ebdSchin#include <proc.h>
91*da2e3ebdSchin#include <re_comp.h>
92*da2e3ebdSchin#include <recfmt.h>
93*da2e3ebdSchin#include <regex.h>
94*da2e3ebdSchin#include <regexp.h>
95*da2e3ebdSchin#include <sfdisc.h>
96*da2e3ebdSchin#include <sfio_s.h>
97*da2e3ebdSchin#include <sfio_t.h>
98*da2e3ebdSchin#include <sig.h>
99*da2e3ebdSchin#include <stack.h>
100*da2e3ebdSchin#include <stak.h>
101*da2e3ebdSchin#include <stk.h>
102*da2e3ebdSchin#include <swap.h>
103*da2e3ebdSchin#include <tar.h>
104*da2e3ebdSchin#include <times.h>
105*da2e3ebdSchin#include <tm.h>
106*da2e3ebdSchin#include <tmx.h>
107*da2e3ebdSchin#include <tok.h>
108*da2e3ebdSchin#include <tv.h>
109*da2e3ebdSchin#include <usage.h>
110*da2e3ebdSchin#include <vdb.h>
111*da2e3ebdSchin#include <vecargs.h>
112*da2e3ebdSchin#include <wait.h>
113*da2e3ebdSchin#include <wchar.h>
114*da2e3ebdSchin#include <wordexp.h>
115*da2e3ebdSchin
116*da2e3ebdSchin#if defined(_AST_STD_H) || defined(_POSIX_SOURCE) || defined(_XOPEN_SOURCE)
117*da2e3ebdSchin#define _AST_mode_t     mode_t
118*da2e3ebdSchin#else
119*da2e3ebdSchin#define _AST_mode_t     int
120*da2e3ebdSchin#endif
121*da2e3ebdSchin
122*da2e3ebdSchin/* automatically generated data start here */
123*da2e3ebdSchin/* tmpastinclude/ast.h */
124*da2e3ebdSchinextern char* astconf(const char*, const char*, const char*);
125*da2e3ebdSchinextern Ast_confdisc_f astconfdisc(Ast_confdisc_f);
126*da2e3ebdSchinextern void astconflist(Sfio_t*, const char*, int, const char*);
127*da2e3ebdSchinextern off_t astcopy(int, int, off_t);
128*da2e3ebdSchinextern int astlicense(char*, int, char*, char*, int, int, int);
129*da2e3ebdSchinextern int astquery(int, const char*, ...);
130*da2e3ebdSchinextern void astwinsize(int, int*, int*);
131*da2e3ebdSchinextern ssize_t base64encode(const void*, size_t, void**, void*, size_t, void**);
132*da2e3ebdSchinextern ssize_t base64decode(const void*, size_t, void**, void*, size_t, void**);
133*da2e3ebdSchinextern int chresc(const char*, char**);
134*da2e3ebdSchinextern int chrtoi(const char*);
135*da2e3ebdSchinextern int eaccess(const char*, int);
136*da2e3ebdSchin/*
137*da2e3ebdSchinextern char* fmtbase(long, int, int);
138*da2e3ebdSchinextern char* fmtbasell(_ast_intmax_t, int, int);
139*da2e3ebdSchinextern char* fmtbuf(size_t);
140*da2e3ebdSchinextern char* fmtclock(Sfulong_t);
141*da2e3ebdSchinextern char* fmtelapsed(unsigned long, int);
142*da2e3ebdSchinextern char* fmterror(int);
143*da2e3ebdSchinextern char* fmtesc(const char*);
144*da2e3ebdSchinextern char* fmtesq(const char*, const char*);
145*da2e3ebdSchinextern char* fmtident(const char*);
146*da2e3ebdSchinextern char* fmtip4(unsigned _ast_int4_t, int);
147*da2e3ebdSchinextern char* fmtfmt(const char*);
148*da2e3ebdSchinextern char* fmtgid(int);
149*da2e3ebdSchinextern char* fmtmatch(const char*);
150*da2e3ebdSchinextern char* fmtmode(int, int);
151*da2e3ebdSchinextern char* fmtnesq(const char*, const char*, size_t);
152*da2e3ebdSchinextern char* fmtnum(unsigned long, int);
153*da2e3ebdSchinextern char* fmtperm(int);
154*da2e3ebdSchinextern char* fmtquote(const char*, const char*, const char*, size_t, int);
155*da2e3ebdSchinextern char* fmtre(const char*);
156*da2e3ebdSchinextern char* fmtscale(Sfulong_t, int);
157*da2e3ebdSchinextern char* fmtsignal(int);
158*da2e3ebdSchinextern char* fmttime(const char*, time_t);
159*da2e3ebdSchinextern char* fmtuid(int);
160*da2e3ebdSchinextern char* fmtversion(unsigned long);
161*da2e3ebdSchin*/
162*da2e3ebdSchinextern void* _ast_memdup(const void*, size_t);
163*da2e3ebdSchinextern void _ast_memfatal(void);
164*da2e3ebdSchinextern unsigned int _ast_memhash(const void*, int);
165*da2e3ebdSchinextern unsigned long memsum(const void*, int, unsigned long);
166*da2e3ebdSchinextern char* _ast_pathaccess(char*, const char*, const char*, const char*, int);
167*da2e3ebdSchinextern char* _ast_pathbin(void);
168*da2e3ebdSchinextern char* _ast_pathcanon(char*, int);
169*da2e3ebdSchinextern char* _ast_pathcat(char*, const char*, int, const char*, const char*);
170*da2e3ebdSchinextern int _ast_pathcd(const char*, const char*);
171*da2e3ebdSchinextern int _ast_pathcheck(const char*, const char*, Pathcheck_t*);
172*da2e3ebdSchinextern int _ast_pathexists(char*, int);
173*da2e3ebdSchinextern char* _ast_pathfind(const char*, const char*, const char*, char*, size_t);
174*da2e3ebdSchinextern int _ast_pathgetlink(const char*, char*, int);
175*da2e3ebdSchinextern int _ast_pathinclude(const char*);
176*da2e3ebdSchinextern char* _ast_pathkey(char*, char*, const char*, const char*, const char*);
177*da2e3ebdSchinextern size_t _ast_pathnative(const char*, char*, size_t);
178*da2e3ebdSchinextern char* _ast_pathpath(char*, const char*, const char*, int);
179*da2e3ebdSchinextern size_t _ast_pathposix(const char*, char*, size_t);
180*da2e3ebdSchinextern char* _ast_pathprobe(char*, char*, const char*, const char*, const char*, int);
181*da2e3ebdSchinextern char* _ast_pathrepl(char*, const char*, const char*);
182*da2e3ebdSchinextern int _ast_pathsetlink(const char*, const char*);
183*da2e3ebdSchinextern char* _ast_pathshell(void);
184*da2e3ebdSchinextern char* _ast_pathtemp(char*, size_t, const char*, const char*, int*);
185*da2e3ebdSchinextern char* _ast_pathtmp(char*, const char*, const char*, int*);
186*da2e3ebdSchinextern char* _ast_setenviron(const char*);
187*da2e3ebdSchinextern int _ast_stracmp(const char*, const char*);
188*da2e3ebdSchinextern char* _ast_strcopy(char*, const char*);
189*da2e3ebdSchinextern unsigned long _ast_strelapsed(const char*, char**, int);
190*da2e3ebdSchinextern int _ast_stresc(char*);
191*da2e3ebdSchinextern long _ast_streval(const char*, char**, long(*)(const char*, char**));
192*da2e3ebdSchinextern long _ast_strexpr(const char*, char**, long(*)(const char*, char**, void*), void*);
193*da2e3ebdSchinextern int _ast_strgid(const char*);
194*da2e3ebdSchinextern int _ast_strgrpmatch(const char*, const char*, int*, int, int);
195*da2e3ebdSchinextern unsigned int strhash(const char*);
196*da2e3ebdSchinextern void* _ast_strlook(const void*, size_t, const char*);
197*da2e3ebdSchinextern int _ast_strmatch(const char*, const char*);
198*da2e3ebdSchinextern int _ast_strmode(const char*);
199*da2e3ebdSchinextern int _ast_strnacmp(const char*, const char*, size_t);
200*da2e3ebdSchinextern char* _ast_strncopy(char*, const char*, size_t);
201*da2e3ebdSchinextern double _ast_strntod(const char*, size_t, char**);
202*da2e3ebdSchinextern _ast_fltmax_t _ast_strntold(const char*, size_t, char**);
203*da2e3ebdSchinextern long _ast_strntol(const char*, size_t, char**, int);
204*da2e3ebdSchinextern _ast_intmax_t _ast_strntoll(const char*, size_t, char**, int);
205*da2e3ebdSchinextern unsigned long strntoul(const char*, size_t, char**, int);
206*da2e3ebdSchinextern unsigned _ast_intmax_t strntoull(const char*, size_t, char**, int);
207*da2e3ebdSchinextern int _ast_stropt(const char*, const void*, int, int(*)(void*, const void*, int, const char*), void*);
208*da2e3ebdSchinextern int _ast_strperm(const char*, char**, int);
209*da2e3ebdSchinextern void* _ast_strpsearch(const void*, size_t, size_t, const char*, char**);
210*da2e3ebdSchinextern void* _ast_strsearch(const void*, size_t, size_t, Strcmp_f, const char*, void*);
211*da2e3ebdSchinextern void _ast_strsort(char**, int, int(*)(const char*, const char*));
212*da2e3ebdSchinextern char* _ast_strsubmatch(const char*, const char*, int);
213*da2e3ebdSchinextern unsigned long _ast_strsum(const char*, unsigned long);
214*da2e3ebdSchinextern char* _ast_strtape(const char*, char**);
215*da2e3ebdSchinextern int _ast_strtoip4(const char*, char**, unsigned _ast_int4_t*, unsigned char*);
216*da2e3ebdSchinextern long _ast_strton(const char*, char**, char*, int);
217*da2e3ebdSchinextern _ast_intmax_t _ast_strtonll(const char*, char**, char*, int);
218*da2e3ebdSchinextern int _ast_struid(const char*);
219*da2e3ebdSchinextern int _ast_struniq(char**, int);
220*da2e3ebdSchinextern char** environ;
221*da2e3ebdSchin
222*da2e3ebdSchin/* tmpastinclude/align.h */
223*da2e3ebdSchin
224*da2e3ebdSchin/* tmpastinclude/ast_botch.h */
225*da2e3ebdSchin
226*da2e3ebdSchin/* tmpastinclude/ast_ccode.h */
227*da2e3ebdSchin
228*da2e3ebdSchin/* tmpastinclude/ast_common.h */
229*da2e3ebdSchin
230*da2e3ebdSchin/* tmpastinclude/ast_dir.h */
231*da2e3ebdSchin
232*da2e3ebdSchin/* tmpastinclude/ast_dirent.h */
233*da2e3ebdSchin
234*da2e3ebdSchin/* tmpastinclude/ast_float.h */
235*da2e3ebdSchin
236*da2e3ebdSchin/* tmpastinclude/ast_fs.h */
237*da2e3ebdSchinextern int fstatvfs(int, struct statvfs*);
238*da2e3ebdSchinextern int statvfs(const char*, struct statvfs*);
239*da2e3ebdSchinextern int statvfs64(const char*, struct statvfs64*);
240*da2e3ebdSchinextern int fstatvfs64(int, struct statvfs64*);
241*da2e3ebdSchin
242*da2e3ebdSchin/* tmpastinclude/ast_getopt.h */
243*da2e3ebdSchinextern int opterr;
244*da2e3ebdSchinextern int optind;
245*da2e3ebdSchinextern int optopt;
246*da2e3ebdSchinextern char* optarg;
247*da2e3ebdSchinextern int _ast_getopt(int, char* const*, const char*);
248*da2e3ebdSchinextern int _ast_getsubopt(char**, char* const*, char**);
249*da2e3ebdSchin
250*da2e3ebdSchin/* tmpastinclude/ast_hdr.h */
251*da2e3ebdSchin
252*da2e3ebdSchin/* tmpastinclude/ast_iconv.h */
253*da2e3ebdSchinextern _ast_iconv_t _ast_iconv_open(const char*, const char*);
254*da2e3ebdSchinextern size_t _ast_iconv(_ast_iconv_t, char**, size_t*, char**, size_t*);
255*da2e3ebdSchinextern int _ast_iconv_close(_ast_iconv_t);
256*da2e3ebdSchinextern _ast_iconv_list_t* _ast_iconv_list(_ast_iconv_list_t*);
257*da2e3ebdSchinextern int _ast_iconv_name(const char*, char*, size_t);
258*da2e3ebdSchinextern ssize_t _ast_iconv_move(_ast_iconv_t, Sfio_t*, Sfio_t*, size_t, size_t*);
259*da2e3ebdSchinextern ssize_t _ast_iconv_write(_ast_iconv_t, Sfio_t*, char**, size_t*, size_t*);
260*da2e3ebdSchinextern ssize_t _ast_iconv_move(_ast_iconv_t, FILE*, FILE*, size_t, size_t*);
261*da2e3ebdSchinextern ssize_t _ast_iconv_write(_ast_iconv_t, FILE*, char**, size_t*, size_t*);
262*da2e3ebdSchin
263*da2e3ebdSchin/* tmpastinclude/ast_lib.h */
264*da2e3ebdSchin
265*da2e3ebdSchin/* tmpastinclude/ast_limits.h */
266*da2e3ebdSchin
267*da2e3ebdSchin/* tmpastinclude/ast_mmap.h */
268*da2e3ebdSchin
269*da2e3ebdSchin/* tmpastinclude/ast_mode.h */
270*da2e3ebdSchin
271*da2e3ebdSchin/* tmpastinclude/ast_nl_types.h */
272*da2e3ebdSchinextern nl_catd catopen(const char*, int);
273*da2e3ebdSchinextern char* catgets(nl_catd, int, int, const char*);
274*da2e3ebdSchinextern int catclose(nl_catd);
275*da2e3ebdSchin
276*da2e3ebdSchin/* tmpastinclude/ast_param.h */
277*da2e3ebdSchin
278*da2e3ebdSchin/* tmpastinclude/ast_time.h */
279*da2e3ebdSchin
280*da2e3ebdSchin/* tmpastinclude/ast_tty.h */
281*da2e3ebdSchin
282*da2e3ebdSchin/* tmpastinclude/ast_types.h */
283*da2e3ebdSchin
284*da2e3ebdSchin/* tmpastinclude/ast_unistd.h */
285*da2e3ebdSchin
286*da2e3ebdSchin/* tmpastinclude/ast_version.h */
287*da2e3ebdSchin
288*da2e3ebdSchin/* tmpastinclude/ast_wait.h */
289*da2e3ebdSchin
290*da2e3ebdSchin/* tmpastinclude/bytesex.h */
291*da2e3ebdSchin
292*da2e3ebdSchin/* tmpastinclude/ccode.h */
293*da2e3ebdSchinextern unsigned char* _ccmap(int, int);
294*da2e3ebdSchinextern void* _ccmapcpy(unsigned char*, void*, const void*, size_t);
295*da2e3ebdSchinextern void* _ccmapstr(unsigned char*, void*, size_t);
296*da2e3ebdSchinextern int ccmapid(const char*);
297*da2e3ebdSchinextern char* ccmapname(int);
298*da2e3ebdSchinextern void* ccnative(void*, const void*, size_t);
299*da2e3ebdSchinextern Ccmap_t* ccmaplist(Ccmap_t*);
300*da2e3ebdSchin
301*da2e3ebdSchin/* tmpastinclude/cdt.h */
302*da2e3ebdSchinextern Dtmethod_t* Dtset;
303*da2e3ebdSchinextern Dtmethod_t* Dtbag;
304*da2e3ebdSchinextern Dtmethod_t* Dtoset;
305*da2e3ebdSchinextern Dtmethod_t* Dtobag;
306*da2e3ebdSchinextern Dtmethod_t* Dtlist;
307*da2e3ebdSchinextern Dtmethod_t* Dtstack;
308*da2e3ebdSchinextern Dtmethod_t* Dtqueue;
309*da2e3ebdSchinextern Dtmethod_t* Dtorder;
310*da2e3ebdSchinextern Dtmethod_t* Dttree;
311*da2e3ebdSchinextern Dtmethod_t* Dthash;
312*da2e3ebdSchinextern Dtmethod_t _Dttree;
313*da2e3ebdSchinextern Dtmethod_t _Dthash;
314*da2e3ebdSchinextern Dtmethod_t _Dtlist;
315*da2e3ebdSchinextern Dtmethod_t _Dtqueue;
316*da2e3ebdSchinextern Dtmethod_t _Dtstack;
317*da2e3ebdSchinextern Dt_t* dtopen(Dtdisc_t*, Dtmethod_t*);
318*da2e3ebdSchinextern int dtclose(Dt_t*);
319*da2e3ebdSchinextern Dt_t* dtview(Dt_t*, Dt_t*);
320*da2e3ebdSchinextern Dtdisc_t* dtdisc(Dt_t* dt, Dtdisc_t*, int);
321*da2e3ebdSchinextern Dtmethod_t* dtmethod(Dt_t*, Dtmethod_t*);
322*da2e3ebdSchinextern Dtlink_t* dtflatten(Dt_t*);
323*da2e3ebdSchinextern Dtlink_t* dtextract(Dt_t*);
324*da2e3ebdSchinextern int dtrestore(Dt_t*, Dtlink_t*);
325*da2e3ebdSchinextern int dttreeset(Dt_t*, int, int);
326*da2e3ebdSchinextern int dtwalk(Dt_t*, int(*)(Dt_t*,Void_t*,Void_t*), Void_t*);
327*da2e3ebdSchinextern Void_t* dtrenew(Dt_t*, Void_t*);
328*da2e3ebdSchinextern int dtsize(Dt_t*);
329*da2e3ebdSchinextern int dtstat(Dt_t*, Dtstat_t*, int);
330*da2e3ebdSchinextern unsigned int dtstrhash(unsigned int, Void_t*, int);
331*da2e3ebdSchinextern int memcmp(const Void_t*, const Void_t*, size_t);
332*da2e3ebdSchinextern int strcmp(const char*, const char*);
333*da2e3ebdSchin
334*da2e3ebdSchin/* tmpastinclude/debug.h */
335*da2e3ebdSchinextern void systrace(const char*);
336*da2e3ebdSchin
337*da2e3ebdSchin/* tmpastinclude/dirent.h */
338*da2e3ebdSchin
339*da2e3ebdSchin/* tmpastinclude/dt.h */
340*da2e3ebdSchinextern Dt_t* dtnew(Vmalloc_t*, Dtdisc_t*, Dtmethod_t*);
341*da2e3ebdSchin
342*da2e3ebdSchin/* tmpastinclude/endian.h */
343*da2e3ebdSchin
344*da2e3ebdSchin/* tmpastinclude/error.h */
345*da2e3ebdSchinextern int errno;
346*da2e3ebdSchinextern Error_info_t error_info;
347*da2e3ebdSchinextern void error(int, ...);
348*da2e3ebdSchinextern int errormsg(const char*, int, ...);
349*da2e3ebdSchinextern int errorf(void*, void*, int, ...);
350*da2e3ebdSchinextern void errorv(const char*, int, va_list);
351*da2e3ebdSchinextern char* errorx(const char*, const char*, const char*, const char*);
352*da2e3ebdSchinextern void liberror(const char*, int, ...);
353*da2e3ebdSchinextern int libevent(void*, void*, int, ...);
354*da2e3ebdSchin
355*da2e3ebdSchin/* tmpastinclude/find.h */
356*da2e3ebdSchinextern Find_t* findopen(const char*, const char*, const char*, Finddisc_t*);
357*da2e3ebdSchinextern char* findread(Find_t*);
358*da2e3ebdSchinextern int findwrite(Find_t*, const char*, size_t, const char*);
359*da2e3ebdSchinextern int findclose(Find_t*);
360*da2e3ebdSchin
361*da2e3ebdSchin/* tmpastinclude/fnmatch.h */
362*da2e3ebdSchinextern int _ast_fnmatch(const char*, const char*, int);
363*da2e3ebdSchin
364*da2e3ebdSchin/* tmpastinclude/fnv.h */
365*da2e3ebdSchin
366*da2e3ebdSchin/* tmpastinclude/fs3d.h */
367*da2e3ebdSchinextern int mount(const char*, char*, int, void*);
368*da2e3ebdSchinextern int fs3d(int);
369*da2e3ebdSchinextern char* pathnext(char*, char*, long*);
370*da2e3ebdSchin
371*da2e3ebdSchin/* tmpastinclude/fts.h */
372*da2e3ebdSchinextern FTSENT* _ast_fts_children(FTS*, int);
373*da2e3ebdSchinextern int _ast_fts_close(FTS*);
374*da2e3ebdSchinextern int _ast_fts_flags(void);
375*da2e3ebdSchinextern int _ast_fts_notify(int(*)(FTS*, FTSENT*, void*), void*);
376*da2e3ebdSchinextern FTS* _ast_fts_open(char* const*, int, int(*)(FTSENT* const*, FTSENT* const*));
377*da2e3ebdSchinextern FTSENT* _ast_fts_read(FTS*);
378*da2e3ebdSchinextern int _ast_fts_set(FTS*, FTSENT*, int);
379*da2e3ebdSchin
380*da2e3ebdSchin/* tmpastinclude/ftw.h */
381*da2e3ebdSchinextern int _ast_ftw(const char*, int(*)(const char*, const struct stat*, int), int);
382*da2e3ebdSchinextern int _ast_nftw(const char*, int(*)(const char*, const struct stat*, int, struct FTW*), int, int);
383*da2e3ebdSchin
384*da2e3ebdSchin/* tmpastinclude/getopt.h */
385*da2e3ebdSchinextern int getopt_long(int, char* const*, const char*, const struct option*, int*);
386*da2e3ebdSchinextern int getopt_long_only(int, char* const*, const char*, const struct option*, int*);
387*da2e3ebdSchin
388*da2e3ebdSchin/* tmpastinclude/glob.h */
389*da2e3ebdSchinextern int _ast_glob(const char*, int, int(*)(const char*,int), glob_t*);
390*da2e3ebdSchinextern void _ast_globfree(glob_t*);
391*da2e3ebdSchin
392*da2e3ebdSchin/* tmpastinclude/hash.h */
393*da2e3ebdSchinextern Hash_table_t* hashalloc(Hash_table_t*, ...);
394*da2e3ebdSchinextern void hashdone(Hash_position_t*);
395*da2e3ebdSchinextern void hashdump(Hash_table_t*, int);
396*da2e3ebdSchinextern Hash_table_t* hashfree(Hash_table_t*);
397*da2e3ebdSchinextern Hash_bucket_t* hashlast(Hash_table_t*);
398*da2e3ebdSchinextern char* hashlook(Hash_table_t*, const char*, long, const char*);
399*da2e3ebdSchinextern Hash_bucket_t* hashnext(Hash_position_t*);
400*da2e3ebdSchinextern Hash_position_t* hashscan(Hash_table_t*, int);
401*da2e3ebdSchinextern void hashsize(Hash_table_t*, int);
402*da2e3ebdSchinextern Hash_table_t* hashview(Hash_table_t*, Hash_table_t*);
403*da2e3ebdSchinextern int hashwalk(Hash_table_t*, int, int (*)(const char*, char*, void*), void*);
404*da2e3ebdSchin
405*da2e3ebdSchin/* tmpastinclude/hashkey.h */
406*da2e3ebdSchinextern long _ast_strkey(const char*);
407*da2e3ebdSchin
408*da2e3ebdSchin/* tmpastinclude/hashpart.h */
409*da2e3ebdSchin
410*da2e3ebdSchin/* tmpastinclude/iconv.h */
411*da2e3ebdSchin
412*da2e3ebdSchin/* tmpastinclude/lc.h */
413*da2e3ebdSchinextern size_t lccanon(Lc_t*, unsigned long flags, char*, size_t);
414*da2e3ebdSchinextern Lc_category_t* lccategories(void);
415*da2e3ebdSchinextern int lcindex(int, int);
416*da2e3ebdSchinextern Lc_info_t* lcinfo(int);
417*da2e3ebdSchinextern Lc_t* lcmake(const char*);
418*da2e3ebdSchinextern Lc_t* lcscan(Lc_t*);
419*da2e3ebdSchin
420*da2e3ebdSchin/* tmpastinclude/limits.h */
421*da2e3ebdSchin
422*da2e3ebdSchin/* tmpastinclude/ls.h */
423*da2e3ebdSchinextern int chmod(const char*, _AST_mode_t);
424*da2e3ebdSchinextern int fstat(int, struct stat*);
425*da2e3ebdSchinextern int lstat(const char*, struct stat*);
426*da2e3ebdSchinextern int mkdir(const char*, _AST_mode_t);
427*da2e3ebdSchinextern int mkfifo(const char*, _AST_mode_t);
428*da2e3ebdSchinextern int mknod(const char*, _AST_mode_t, dev_t);
429*da2e3ebdSchinextern int stat(const char*, struct stat*);
430*da2e3ebdSchinextern _AST_mode_t umask(_AST_mode_t);
431*da2e3ebdSchinextern off_t _iblocks(struct stat*);
432*da2e3ebdSchinextern char* fmtdev(struct stat*);
433*da2e3ebdSchinextern char* fmtfs(struct stat*);
434*da2e3ebdSchinextern char* fmtls(char*, const char*, struct stat*, const char*, const char*, int);
435*da2e3ebdSchinextern int _ast_pathstat(const char*, struct stat*);
436*da2e3ebdSchin
437*da2e3ebdSchin/* tmpastinclude/magic.h */
438*da2e3ebdSchinextern Magic_t* magicopen(Magicdisc_t*);
439*da2e3ebdSchinextern int magicload(Magic_t*, const char*, unsigned long);
440*da2e3ebdSchinextern int magiclist(Magic_t*, Sfio_t*);
441*da2e3ebdSchinextern char* magictype(Magic_t*, Sfio_t*, const char*, struct stat*);
442*da2e3ebdSchinextern int magicclose(Magic_t*);
443*da2e3ebdSchin
444*da2e3ebdSchin/* tmpastinclude/magicid.h */
445*da2e3ebdSchin
446*da2e3ebdSchin/* tmpastinclude/mc.h */
447*da2e3ebdSchinextern char* mcfind(char*, const char*, const char*, int, int);
448*da2e3ebdSchinextern Mc_t* mcopen(Sfio_t*);
449*da2e3ebdSchinextern char* mcget(Mc_t*, int, int, const char*);
450*da2e3ebdSchinextern int mcput(Mc_t*, int, int, const char*);
451*da2e3ebdSchinextern int mcdump(Mc_t*, Sfio_t*);
452*da2e3ebdSchinextern int mcindex(const char*, char**, int*, int*);
453*da2e3ebdSchinextern int mcclose(Mc_t*);
454*da2e3ebdSchin
455*da2e3ebdSchin/* tmpastinclude/mime.h */
456*da2e3ebdSchinextern Mime_t* mimeopen(Mimedisc_t*);
457*da2e3ebdSchinextern int mimeload(Mime_t*, const char*, unsigned long);
458*da2e3ebdSchinextern int mimelist(Mime_t*, Sfio_t*, const char*);
459*da2e3ebdSchinextern int mimeclose(Mime_t*);
460*da2e3ebdSchinextern int mimeset(Mime_t*, char*, unsigned long);
461*da2e3ebdSchinextern char* mimetype(Mime_t*, Sfio_t*, const char*, struct stat*);
462*da2e3ebdSchinextern char* mimeview(Mime_t*, const char*, const char*, const char*, const char*);
463*da2e3ebdSchinextern int mimehead(Mime_t*, void*, size_t, size_t, char*);
464*da2e3ebdSchinextern int mimecmp(const char*, const char*, char**);
465*da2e3ebdSchin
466*da2e3ebdSchin/* tmpastinclude/mnt.h */
467*da2e3ebdSchinextern void* mntopen(const char*, const char*);
468*da2e3ebdSchinextern Mnt_t* mntread(void*);
469*da2e3ebdSchinextern int mntwrite(void*, const Mnt_t*);
470*da2e3ebdSchinextern int mntclose(void*);
471*da2e3ebdSchin
472*da2e3ebdSchin/* tmpastinclude/modecanon.h */
473*da2e3ebdSchin
474*da2e3ebdSchin/* tmpastinclude/namval.h */
475*da2e3ebdSchin
476*da2e3ebdSchin/* tmpastinclude/nl_types.h */
477*da2e3ebdSchin
478*da2e3ebdSchin/* tmpastinclude/option.h */
479*da2e3ebdSchinextern Opt_t opt_info;
480*da2e3ebdSchinextern int _ast_optget(char**, const char*);
481*da2e3ebdSchinextern int _ast_optjoin(char**, ...);
482*da2e3ebdSchinextern char* _ast_opthelp(const char*, const char*);
483*da2e3ebdSchinextern char* _ast_optusage(const char*);
484*da2e3ebdSchinextern int _ast_optstr(const char*, const char*);
485*da2e3ebdSchinextern int _ast_optesc(Sfio_t*, const char*, int);
486*da2e3ebdSchin
487*da2e3ebdSchin/* tmpastinclude/preroot.h */
488*da2e3ebdSchin
489*da2e3ebdSchin/* tmpastinclude/proc.h */
490*da2e3ebdSchinextern int _ast_procclose(Proc_t*);
491*da2e3ebdSchinextern int _ast_procfree(Proc_t*);
492*da2e3ebdSchinextern Proc_t* _ast_procopen(const char*, char**, char**, long*, long);
493*da2e3ebdSchinextern int _ast_procrun(const char*, char**);
494*da2e3ebdSchin
495*da2e3ebdSchin/* tmpastinclude/re_comp.h */
496*da2e3ebdSchinextern char* _ast_re_comp(const char*);
497*da2e3ebdSchinextern int _ast_re_exec(const char*);
498*da2e3ebdSchin
499*da2e3ebdSchin/* tmpastinclude/recfmt.h */
500*da2e3ebdSchinextern char* fmtrec(Recfmt_t, int);
501*da2e3ebdSchinextern Recfmt_t recfmt(const void*, size_t, off_t);
502*da2e3ebdSchinextern Recfmt_t recstr(const char*, char**);
503*da2e3ebdSchinextern ssize_t reclen(Recfmt_t, const void*, size_t);
504*da2e3ebdSchin
505*da2e3ebdSchin/* tmpastinclude/regex.h */
506*da2e3ebdSchinextern int _ast_regcomp(regex_t*, const char*, regflags_t);
507*da2e3ebdSchinextern size_t _ast_regerror(int, const regex_t*, char*, size_t);
508*da2e3ebdSchinextern int _ast_regexec(const regex_t*, const char*, size_t, regmatch_t*, regflags_t);
509*da2e3ebdSchinextern void _ast_regfree(regex_t*);
510*da2e3ebdSchinextern regclass_t _ast_regclass(const char*, char**);
511*da2e3ebdSchinextern int _ast_regaddclass(const char*, regclass_t);
512*da2e3ebdSchinextern int _ast_regcollate(const char*, char**, char*, int);
513*da2e3ebdSchinextern int _ast_regcomb(regex_t*, regex_t*);
514*da2e3ebdSchinextern int _ast_regdup(regex_t*, regex_t*);
515*da2e3ebdSchinextern int _ast_regncomp(regex_t*, const char*, size_t, regflags_t);
516*da2e3ebdSchinextern int _ast_regnexec(const regex_t*, const char*, size_t, size_t, regmatch_t*, regflags_t);
517*da2e3ebdSchinextern void _ast_regfatal(regex_t*, int, int);
518*da2e3ebdSchinextern void _ast_regfatalpat(regex_t*, int, int, const char*);
519*da2e3ebdSchinextern int _ast_regrecord(const regex_t*);
520*da2e3ebdSchinextern int _ast_regrexec(const regex_t*, const char*, size_t, size_t, regmatch_t*, regflags_t, regflags_t, void*, regrecord_t);
521*da2e3ebdSchinextern regstat_t* _ast_regstat(const regex_t*);
522*da2e3ebdSchinextern regex_t* _ast_regcache(const char*, regflags_t, int*);
523*da2e3ebdSchinextern int _ast_regsubcomp(regex_t*, const char*, const regflags_t*, int, regflags_t);
524*da2e3ebdSchinextern int _ast_regsubexec(const regex_t*, const char*, size_t, regmatch_t*);
525*da2e3ebdSchinextern int _ast_regsubflags(regex_t*, const char*, char**, int, const regflags_t*, int*, regflags_t*);
526*da2e3ebdSchinextern void _ast_regsubfree(regex_t*);
527*da2e3ebdSchinextern void _ast_regalloc(void*, regresize_t, regflags_t);
528*da2e3ebdSchinextern int _ast_regsub(const regex_t*, struct _sfio_s*, const char*, const char*, size_t, regmatch_t*, regflags_t);
529*da2e3ebdSchin
530*da2e3ebdSchin/* tmpastinclude/regexp.h */
531*da2e3ebdSchinextern int _re_comp(regexp_t*, const char*, char*, unsigned int);
532*da2e3ebdSchinextern int _re_exec(regexp_t*, const char*, const char*, int);
533*da2e3ebdSchinextern char* _re_putc(int);
534*da2e3ebdSchinextern char* _re_read(regexp_t*, const char*, char*, const char*, int);
535*da2e3ebdSchin
536*da2e3ebdSchin/* tmpastinclude/sfdisc.h */
537*da2e3ebdSchinextern int sfkeyprintf(Sfio_t*, void*, const char*, Sf_key_lookup_t, Sf_key_convert_t);
538*da2e3ebdSchinextern int sfkeyprintf(Sfio_t*, void*, const char*, Sf_key_lookup_t, Sf_key_convert_t);
539*da2e3ebdSchinextern int sfdcdio(Sfio_t*, size_t);
540*da2e3ebdSchinextern int sfdcdos(Sfio_t*);
541*da2e3ebdSchinextern int sfdcfilter(Sfio_t*, const char*);
542*da2e3ebdSchinextern int sfdcmore(Sfio_t*, const char*, int, int);
543*da2e3ebdSchinextern int sfdcprefix(Sfio_t*, const char*);
544*da2e3ebdSchinextern int sfdcseekable(Sfio_t*);
545*da2e3ebdSchinextern int sfdcslow(Sfio_t*);
546*da2e3ebdSchinextern int sfdctee(Sfio_t*, Sfio_t*);
547*da2e3ebdSchinextern int sfdcunion(Sfio_t*, Sfio_t**, int);
548*da2e3ebdSchinextern Sfio_t* sfdcsubstream(Sfio_t*, Sfio_t*, Sfoff_t, Sfoff_t);
549*da2e3ebdSchin
550*da2e3ebdSchin/* tmpastinclude/sfio_s.h */
551*da2e3ebdSchin
552*da2e3ebdSchin/* tmpastinclude/sfio_t.h */
553*da2e3ebdSchin
554*da2e3ebdSchin/* tmpastinclude/sig.h */
555*da2e3ebdSchinextern int kill(pid_t, int);
556*da2e3ebdSchinextern int killpg(pid_t, int);
557*da2e3ebdSchinextern Sig_info_t sig_info;
558*da2e3ebdSchinextern int sigcritical(int);
559*da2e3ebdSchinextern int sigunblock(int);
560*da2e3ebdSchin
561*da2e3ebdSchin/* tmpastinclude/stack.h */
562*da2e3ebdSchinextern STACK stackalloc(int, void*);
563*da2e3ebdSchinextern void stackfree(STACK);
564*da2e3ebdSchinextern void stackclear(STACK);
565*da2e3ebdSchinextern void* stackget(STACK);
566*da2e3ebdSchinextern int stackpush(STACK, void*);
567*da2e3ebdSchinextern int stackpop(STACK);
568*da2e3ebdSchinextern void stacktell(STACK, int, STACKPOS*);
569*da2e3ebdSchin
570*da2e3ebdSchin/* tmpastinclude/stak.h */
571*da2e3ebdSchin
572*da2e3ebdSchin/* tmpastinclude/stk.h */
573*da2e3ebdSchinextern Sfio_t _Stk_data;
574*da2e3ebdSchinextern Stk_t* stkopen(int);
575*da2e3ebdSchinextern Stk_t* stkinstall(Stk_t*, char*(*)(int));
576*da2e3ebdSchinextern int stkclose(Stk_t*);
577*da2e3ebdSchinextern int stklink(Stk_t*);
578*da2e3ebdSchinextern char* stkalloc(Stk_t*, unsigned);
579*da2e3ebdSchinextern char* stkcopy(Stk_t*,const char*);
580*da2e3ebdSchinextern char* stkset(Stk_t*, char*, unsigned);
581*da2e3ebdSchinextern char* _stkseek(Stk_t*, unsigned);
582*da2e3ebdSchinextern char* stkfreeze(Stk_t*, unsigned);
583*da2e3ebdSchin
584*da2e3ebdSchin/* tmpastinclude/swap.h */
585*da2e3ebdSchinextern void*	swapmem (int, const void*, void*, size_t);
586*da2e3ebdSchinextern intmax_t swapget (int, const void*, int);
587*da2e3ebdSchinextern void*	swapput (int, void*, int, intmax_t);
588*da2e3ebdSchinextern int	swapop (const void*, const void*, int);
589*da2e3ebdSchin
590*da2e3ebdSchin/* tmpastinclude/tar.h */
591*da2e3ebdSchin
592*da2e3ebdSchin/* tmpastinclude/times.h */
593*da2e3ebdSchinextern int _ast_touch(const char*, time_t, time_t, int);
594*da2e3ebdSchin
595*da2e3ebdSchin/* tmpastinclude/tm.h */
596*da2e3ebdSchinextern Tm_data_t tm_data;
597*da2e3ebdSchinextern Tm_info_t tm_info;
598*da2e3ebdSchinextern time_t tmdate(const char*, char**, time_t*);
599*da2e3ebdSchinextern int tmequiv(Tm_t*);
600*da2e3ebdSchinextern Tm_t* tmfix(Tm_t*);
601*da2e3ebdSchinextern char* tmfmt(char*, size_t, const char*, time_t*);
602*da2e3ebdSchinextern char* tmform(char*, const char*, time_t*);
603*da2e3ebdSchinextern int tmgoff(const char*, char**, int);
604*da2e3ebdSchinextern void tminit(Tm_zone_t*);
605*da2e3ebdSchinextern time_t tmleap(time_t*);
606*da2e3ebdSchinextern int tmlex(const char*, char**, char**, int, char**, int);
607*da2e3ebdSchinextern char** tmlocale(void);
608*da2e3ebdSchinextern Tm_t* tmmake(time_t*);
609*da2e3ebdSchinextern char* tmpoff(char*, size_t, const char*, int, int);
610*da2e3ebdSchinextern time_t tmscan(const char*, char**, const char*, char**, time_t*, long);
611*da2e3ebdSchinextern int tmsleep(time_t, time_t);
612*da2e3ebdSchinextern time_t tmtime(Tm_t*, int);
613*da2e3ebdSchinextern Tm_zone_t* tmtype(const char*, char**);
614*da2e3ebdSchinextern int tmweek(Tm_t*, int, int, int);
615*da2e3ebdSchinextern int tmword(const char*, char**, const char*, char**, int);
616*da2e3ebdSchinextern Tm_zone_t* tmzone(const char*, char**, const char*, int*);
617*da2e3ebdSchin
618*da2e3ebdSchin/* tmpastinclude/tmx.h */
619*da2e3ebdSchinextern Time_t tmxdate(const char*, char**, Time_t);
620*da2e3ebdSchinextern char* tmxfmt(char*, size_t, const char*, Time_t);
621*da2e3ebdSchinextern Time_t tmxleap(Time_t);
622*da2e3ebdSchinextern Tm_t* tmxmake(Time_t);
623*da2e3ebdSchinextern Time_t tmxscan(const char*, char**, const char*, char**, Time_t, long);
624*da2e3ebdSchinextern int tmxsleep(Time_t);
625*da2e3ebdSchinextern Time_t tmxtime(Tm_t*, int);
626*da2e3ebdSchinextern Time_t tmxgettime(void);
627*da2e3ebdSchinextern int tmxsettime(Time_t);
628*da2e3ebdSchinextern int tmxtouch(const char*, Time_t, Time_t, Time_t, int);
629*da2e3ebdSchinextern char* fmttmx(const char*, Time_t);
630*da2e3ebdSchin
631*da2e3ebdSchin/* tmpastinclude/tok.h */
632*da2e3ebdSchinextern Sfio_t* tokline(const char*, int, int*);
633*da2e3ebdSchinextern int tokscan(char*, char**, const char*, ...);
634*da2e3ebdSchinextern char* tokopen(char*, int);
635*da2e3ebdSchinextern void tokclose(char*);
636*da2e3ebdSchinextern char* tokread(char*);
637*da2e3ebdSchin
638*da2e3ebdSchin/* tmpastinclude/tv.h */
639*da2e3ebdSchinextern int tvgettime(Tv_t*);
640*da2e3ebdSchinextern int tvsettime(const Tv_t*);
641*da2e3ebdSchinextern int tvcmp(const Tv_t*, const Tv_t*);
642*da2e3ebdSchinextern int tvtouch(const char*, const Tv_t*, const Tv_t*, const Tv_t*, int);
643*da2e3ebdSchinextern int tvsleep(const Tv_t*, Tv_t*);
644*da2e3ebdSchinextern char* fmttv(const char*, Tv_t*);
645*da2e3ebdSchin
646*da2e3ebdSchin/* tmpastinclude/usage.h */
647*da2e3ebdSchin
648*da2e3ebdSchin/* tmpastinclude/vdb.h */
649*da2e3ebdSchin
650*da2e3ebdSchin/* tmpastinclude/vecargs.h */
651*da2e3ebdSchinextern int vecargs(char**, int*, char***);
652*da2e3ebdSchinextern char** vecfile(const char*);
653*da2e3ebdSchinextern void vecfree(char**, int);
654*da2e3ebdSchinextern char** vecload(char*);
655*da2e3ebdSchinextern char** vecstring(const char*);
656*da2e3ebdSchin
657*da2e3ebdSchin/* tmpastinclude/wchar.h */
658*da2e3ebdSchin
659*da2e3ebdSchin/* tmpastinclude/wordexp.h */
660*da2e3ebdSchinextern int _ast_wordexp(const char*, wordexp_t*, int);
661*da2e3ebdSchinextern int _ast_wordfree(wordexp_t*);
662*da2e3ebdSchin/* end of automatically generated data */
663