1/*- 2 * SPDX-License-Identifier: BSD-3-Clause 3 * 4 * Copyright (c) 1991, 1993, 1994 5 * The Regents of the University of California. All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 3. Neither the name of the University nor the names of its contributors 16 * may be used to endorse or promote products derived from this software 17 * without specific prior written permission. 18 * 19 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 20 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 22 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 23 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29 * SUCH DAMAGE. 30 */ 31 32#include <sys/cdefs.h> 33 34void brace_subst(char *, char **, char *, size_t); 35PLAN *find_create(char ***); 36int find_execute(PLAN *, char **); 37PLAN *find_formplan(char **); 38PLAN *not_squish(PLAN *); 39PLAN *or_squish(PLAN *); 40PLAN *paren_squish(PLAN *); 41time_t get_date(char *); 42struct stat; 43void printlong(char *, char *, struct stat *); 44int queryuser(char **); 45OPTION *lookup_option(const char *); 46void finish_execplus(void); 47 48creat_f c_Xmin; 49creat_f c_Xtime; 50creat_f c_acl; 51creat_f c_and; 52creat_f c_delete; 53creat_f c_depth; 54creat_f c_empty; 55creat_f c_exec; 56creat_f c_flags; 57creat_f c_follow; 58creat_f c_fstype; 59creat_f c_group; 60creat_f c_ignore_readdir_race; 61creat_f c_inum; 62creat_f c_links; 63creat_f c_ls; 64creat_f c_mXXdepth; 65creat_f c_name; 66creat_f c_newer; 67creat_f c_nogroup; 68creat_f c_nouser; 69creat_f c_perm; 70creat_f c_print; 71creat_f c_regex; 72creat_f c_samefile; 73creat_f c_simple; 74creat_f c_size; 75creat_f c_sparse; 76creat_f c_type; 77creat_f c_user; 78creat_f c_xdev; 79 80exec_f f_Xmin; 81exec_f f_Xtime; 82exec_f f_acl; 83exec_f f_always_true; 84exec_f f_closeparen; 85exec_f f_delete; 86exec_f f_depth; 87exec_f f_empty; 88exec_f f_exec; 89exec_f f_executable; 90exec_f f_expr; 91exec_f f_false; 92exec_f f_flags; 93exec_f f_fstype; 94exec_f f_group; 95exec_f f_inum; 96exec_f f_links; 97exec_f f_ls; 98exec_f f_name; 99exec_f f_newer; 100exec_f f_nogroup; 101exec_f f_not; 102exec_f f_nouser; 103exec_f f_openparen; 104exec_f f_or; 105exec_f f_path; 106exec_f f_perm; 107exec_f f_print; 108exec_f f_print0; 109exec_f f_prune; 110exec_f f_quit; 111exec_f f_readable; 112exec_f f_regex; 113exec_f f_size; 114exec_f f_sparse; 115exec_f f_type; 116exec_f f_user; 117exec_f f_writable; 118 119extern int ftsoptions, ignore_readdir_race, isdepth, isoutput; 120extern int issort, isxargs; 121extern int mindepth, maxdepth; 122extern int regexp_flags; 123extern int exitstatus; 124extern time_t now; 125extern int dotfd; 126extern FTS *tree; 127extern volatile sig_atomic_t showinfo; 128