1996-08-27 02:22:31 +08:00
|
|
|
/* flags.h -- a list of all the flags that the shell knows about. You add
|
|
|
|
a flag to this program by adding the name here, and in flags.c. */
|
|
|
|
|
|
|
|
/* Copyright (C) 1993 Free Software Foundation, Inc.
|
|
|
|
|
|
|
|
This file is part of GNU Bash, the Bourne Again SHell.
|
|
|
|
|
|
|
|
Bash is free software; you can redistribute it and/or modify it under
|
|
|
|
the terms of the GNU General Public License as published by the Free
|
|
|
|
Software Foundation; either version 2, or (at your option) any later
|
|
|
|
version.
|
|
|
|
|
|
|
|
Bash is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
|
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
|
|
for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License along
|
|
|
|
with Bash; see the file COPYING. If not, write to the Free Software
|
2000-03-18 05:46:59 +08:00
|
|
|
Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
1996-08-27 02:22:31 +08:00
|
|
|
|
1996-12-24 01:02:34 +08:00
|
|
|
#if !defined (_FLAGS_H_)
|
|
|
|
#define _FLAGS_H_
|
1996-08-27 02:22:31 +08:00
|
|
|
|
|
|
|
#include "stdc.h"
|
|
|
|
|
|
|
|
/* Welcome to the world of Un*x, where everything is slightly backwards. */
|
|
|
|
#define FLAG_ON '-'
|
|
|
|
#define FLAG_OFF '+'
|
|
|
|
|
|
|
|
#define FLAG_ERROR -1
|
|
|
|
#define FLAG_UNKNOWN (int *)0
|
|
|
|
|
|
|
|
/* The thing that we build the array of flags out of. */
|
|
|
|
struct flags_alist {
|
|
|
|
char name;
|
|
|
|
int *value;
|
|
|
|
};
|
|
|
|
|
|
|
|
extern struct flags_alist shell_flags[];
|
2002-07-17 22:10:11 +08:00
|
|
|
extern char optflags[];
|
1996-08-27 02:22:31 +08:00
|
|
|
|
|
|
|
extern int
|
|
|
|
mark_modified_vars, exit_immediately_on_error, disallow_filename_globbing,
|
1996-12-24 01:02:34 +08:00
|
|
|
place_keywords_in_env, read_but_dont_execute,
|
1996-08-27 02:22:31 +08:00
|
|
|
just_one_command, unbound_vars_is_error, echo_input_at_read,
|
1996-12-24 01:02:34 +08:00
|
|
|
echo_command_at_execute, no_invisible_vars, noclobber,
|
|
|
|
hashing_enabled, forced_interactive, privileged_mode,
|
1996-08-27 02:22:31 +08:00
|
|
|
asynchronous_notification, interactive_comments, no_symbolic_links;
|
|
|
|
|
1996-12-24 01:02:34 +08:00
|
|
|
#if 0
|
|
|
|
extern int lexical_scoping;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined (BRACE_EXPANSION)
|
|
|
|
extern int brace_expansion;
|
|
|
|
#endif
|
|
|
|
|
1996-08-27 02:22:31 +08:00
|
|
|
#if defined (BANG_HISTORY)
|
|
|
|
extern int history_expansion;
|
|
|
|
#endif /* BANG_HISTORY */
|
|
|
|
|
|
|
|
#if defined (RESTRICTED_SHELL)
|
|
|
|
extern int restricted;
|
1999-02-20 01:11:39 +08:00
|
|
|
extern int restricted_shell;
|
1996-08-27 02:22:31 +08:00
|
|
|
#endif /* RESTRICTED_SHELL */
|
|
|
|
|
|
|
|
extern int *find_flag __P((int));
|
|
|
|
extern int change_flag __P((int, int));
|
|
|
|
extern char *which_set_flags __P((void));
|
1997-06-05 22:59:13 +08:00
|
|
|
extern void reset_shell_flags __P((void));
|
1996-08-27 02:22:31 +08:00
|
|
|
|
2002-07-17 22:10:11 +08:00
|
|
|
extern void initialize_flags __P((void));
|
|
|
|
|
1996-08-27 02:22:31 +08:00
|
|
|
/* A macro for efficiency. */
|
|
|
|
#define change_flag_char(flag, on_or_off) change_flag (flag, on_or_off)
|
|
|
|
|
1996-12-24 01:02:34 +08:00
|
|
|
#endif /* _FLAGS_H_ */
|