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