1 /* $OpenBSD: extern.h,v 1.22 2017/01/03 21:31:16 tedu Exp $ */ 2 /*- 3 * Copyright (c) 1991, 1993 4 * The Regents of the University of California. All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: 9 * 1. Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * 2. Redistributions in binary form must reproduce the above copyright 12 * notice, this list of conditions and the following disclaimer in the 13 * documentation and/or other materials provided with the distribution. 14 * 3. Neither the name of the University nor the names of its contributors 15 * may be used to endorse or promote products derived from this software 16 * without specific prior written permission. 17 * 18 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 19 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28 * SUCH DAMAGE. 29 * 30 * from: @(#)extern.h 8.1 (Berkeley) 6/6/93 31 */ 32 33 void brace_subst(char *, char **, char *, int); 34 void *emalloc(size_t); 35 void *ereallocarray(void *, size_t, size_t); 36 PLAN *find_create(char ***); 37 int find_execute(PLAN *, char **); 38 PLAN *find_formplan(char **); 39 int find_traverse(PLAN *, int (*)(PLAN *, void *), void *); 40 PLAN *not_squish(PLAN *); 41 OPTION *option(char *); 42 PLAN *or_squish(PLAN *); 43 PLAN *paren_squish(PLAN *); 44 int plan_cleanup(PLAN *, void *); 45 struct stat; 46 void printlong(char *, char *, struct stat *); 47 int queryuser(char **); 48 void show_path(int); 49 50 PLAN *c_amin(char *, char ***, int); 51 PLAN *c_anewer(char *, char ***, int); 52 PLAN *c_atime(char *, char ***, int); 53 PLAN *c_cmin(char *, char ***, int); 54 PLAN *c_cnewer(char *, char ***, int); 55 PLAN *c_ctime(char *, char ***, int); 56 PLAN *c_delete(char *, char ***, int); 57 PLAN *c_depth(char *, char ***, int); 58 PLAN *c_empty(char *, char ***, int); 59 PLAN *c_exec(char *, char ***, int); 60 PLAN *c_execdir(char *, char ***, int); 61 PLAN *c_flags(char *, char ***, int); 62 PLAN *c_follow(char *, char ***, int); 63 PLAN *c_fstype(char *, char ***, int); 64 PLAN *c_group(char *, char ***, int); 65 PLAN *c_iname(char *, char ***, int); 66 PLAN *c_inum(char *, char ***, int); 67 PLAN *c_links(char *, char ***, int); 68 PLAN *c_ls(char *, char ***, int); 69 PLAN *c_maxdepth(char *, char ***, int); 70 PLAN *c_mindepth(char *, char ***, int); 71 PLAN *c_mmin(char *, char ***, int); 72 PLAN *c_name(char *, char ***, int); 73 PLAN *c_newer(char *, char ***, int); 74 PLAN *c_nogroup(char *, char ***, int); 75 PLAN *c_nouser(char *, char ***, int); 76 PLAN *c_path(char *, char ***, int); 77 PLAN *c_perm(char *, char ***, int); 78 PLAN *c_print(char *, char ***, int); 79 PLAN *c_print0(char *, char ***, int); 80 PLAN *c_prune(char *, char ***, int); 81 PLAN *c_size(char *, char ***, int); 82 PLAN *c_type(char *, char ***, int); 83 PLAN *c_user(char *, char ***, int); 84 PLAN *c_xdev(char *, char ***, int); 85 PLAN *c_openparen(char *, char ***, int); 86 PLAN *c_closeparen(char *, char ***, int); 87 PLAN *c_mtime(char *, char ***, int); 88 PLAN *c_not(char *, char ***, int); 89 PLAN *c_or(char *, char ***, int); 90 91 extern int ftsoptions, isdelete, isdepth, isoutput, isxargs; 92 extern int mayexecve; 93