1/* vi: set sw=4 ts=4: */ 2/* 3 * Adapted from ash applet code 4 * 5 * This code is derived from software contributed to Berkeley by 6 * Kenneth Almquist. 7 * 8 * Copyright (c) 1989, 1991, 1993, 1994 9 * The Regents of the University of California. All rights reserved. 10 * 11 * Copyright (c) 1997-2005 Herbert Xu <herbert@gondor.apana.org.au> 12 * was re-ported from NetBSD and debianized. 13 * 14 * Copyright (c) 2010 Denys Vlasenko 15 * Split from ash.c 16 * 17 * Licensed under the GPL v2 or later, see the file LICENSE in this tarball. 18 */ 19#ifndef SHELL_COMMON_H 20#define SHELL_COMMON_H 1 21 22PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN 23 24extern const char defifsvar[]; /* "IFS= \t\n" */ 25#define defifs (defifsvar + 4) 26 27int FAST_FUNC is_well_formed_var_name(const char *s, char terminator); 28 29/* Builtins */ 30 31enum { 32 BUILTIN_READ_SILENT = 1 << 0, 33 BUILTIN_READ_RAW = 1 << 1, 34}; 35const char* FAST_FUNC 36shell_builtin_read(void FAST_FUNC (*setvar)(const char *name, const char *val), 37 char **argv, 38 const char *ifs, 39 int read_flags, 40 const char *opt_n, 41 const char *opt_p, 42 const char *opt_t, 43 const char *opt_u 44); 45 46int FAST_FUNC 47shell_builtin_ulimit(char **argv); 48 49POP_SAVED_FUNCTION_VISIBILITY 50 51#endif 52