|  | /* | 
|  | * This file was generated by the mkinit program. | 
|  | */ | 
|  |  | 
|  | #include "shell.h" | 
|  | #include "mystring.h" | 
|  | #include "init.h" | 
|  | #include "eval.h" | 
|  | #include <stdio.h> | 
|  | #include "input.h" | 
|  | #include "error.h" | 
|  | #include <stdlib.h> | 
|  | #include "options.h" | 
|  | #include "redir.h" | 
|  | #include <signal.h> | 
|  | #include "trap.h" | 
|  | #include "output.h" | 
|  | #include "memalloc.h" | 
|  | #include "var.h" | 
|  |  | 
|  |  | 
|  |  | 
|  | #undef  ATABSIZE | 
|  | #define ATABSIZE 39 | 
|  | #undef  YYBISON | 
|  | #define YYBISON 1 | 
|  | #undef  YYSKELETON_NAME | 
|  | #define YYSKELETON_NAME "yacc.c" | 
|  | #undef  YYPURE | 
|  | #define YYPURE 0 | 
|  | #undef  YYLSP_NEEDED | 
|  | #define YYLSP_NEEDED 0 | 
|  | #undef  ARITH_NUM | 
|  | #define ARITH_NUM 258 | 
|  | #undef  ARITH_LPAREN | 
|  | #define ARITH_LPAREN 259 | 
|  | #undef  ARITH_RPAREN | 
|  | #define ARITH_RPAREN 260 | 
|  | #undef  ARITH_OR | 
|  | #define ARITH_OR 261 | 
|  | #undef  ARITH_AND | 
|  | #define ARITH_AND 262 | 
|  | #undef  ARITH_BOR | 
|  | #define ARITH_BOR 263 | 
|  | #undef  ARITH_BXOR | 
|  | #define ARITH_BXOR 264 | 
|  | #undef  ARITH_BAND | 
|  | #define ARITH_BAND 265 | 
|  | #undef  ARITH_NE | 
|  | #define ARITH_NE 266 | 
|  | #undef  ARITH_EQ | 
|  | #define ARITH_EQ 267 | 
|  | #undef  ARITH_LE | 
|  | #define ARITH_LE 268 | 
|  | #undef  ARITH_GE | 
|  | #define ARITH_GE 269 | 
|  | #undef  ARITH_GT | 
|  | #define ARITH_GT 270 | 
|  | #undef  ARITH_LT | 
|  | #define ARITH_LT 271 | 
|  | #undef  ARITH_RSHIFT | 
|  | #define ARITH_RSHIFT 272 | 
|  | #undef  ARITH_LSHIFT | 
|  | #define ARITH_LSHIFT 273 | 
|  | #undef  ARITH_SUB | 
|  | #define ARITH_SUB 274 | 
|  | #undef  ARITH_ADD | 
|  | #define ARITH_ADD 275 | 
|  | #undef  ARITH_REM | 
|  | #define ARITH_REM 276 | 
|  | #undef  ARITH_DIV | 
|  | #define ARITH_DIV 277 | 
|  | #undef  ARITH_MUL | 
|  | #define ARITH_MUL 278 | 
|  | #undef  ARITH_BNOT | 
|  | #define ARITH_BNOT 279 | 
|  | #undef  ARITH_NOT | 
|  | #define ARITH_NOT 280 | 
|  | #undef  ARITH_UNARYPLUS | 
|  | #define ARITH_UNARYPLUS 281 | 
|  | #undef  ARITH_UNARYMINUS | 
|  | #define ARITH_UNARYMINUS 282 | 
|  | #undef  YYFINAL | 
|  | #define YYFINAL  14 | 
|  | #undef  YYLAST | 
|  | #define YYLAST   170 | 
|  | #undef  YYNTOKENS | 
|  | #define YYNTOKENS  28 | 
|  | #undef  YYNNTS | 
|  | #define YYNNTS  3 | 
|  | #undef  YYNRULES | 
|  | #define YYNRULES  26 | 
|  | #undef  YYNSTATES | 
|  | #define YYNSTATES  52 | 
|  | #undef  YYUNDEFTOK | 
|  | #define YYUNDEFTOK  2 | 
|  | #undef  YYMAXUTOK | 
|  | #define YYMAXUTOK   282 | 
|  | #undef  YYPACT_NINF | 
|  | #define YYPACT_NINF -13 | 
|  | #undef  YYTABLE_NINF | 
|  | #define YYTABLE_NINF -1 | 
|  | #undef  yyerrok | 
|  | #define yyerrok		(yyerrstatus = 0) | 
|  | #undef  yyclearin | 
|  | #define yyclearin	(yychar = YYEMPTY) | 
|  | #undef  YYEMPTY | 
|  | #define YYEMPTY		(-2) | 
|  | #undef  YYEOF | 
|  | #define YYEOF		0 | 
|  | #undef  YYACCEPT | 
|  | #define YYACCEPT	goto yyacceptlab | 
|  | #undef  YYABORT | 
|  | #define YYABORT		goto yyabortlab | 
|  | #undef  YYERROR | 
|  | #define YYERROR		goto yyerrorlab | 
|  | #undef  YYFAIL | 
|  | #define YYFAIL		goto yyerrlab | 
|  | #undef  YYTERROR | 
|  | #define YYTERROR	1 | 
|  | #undef  YYERRCODE | 
|  | #define YYERRCODE	256 | 
|  | #undef  YYPOPSTACK | 
|  | #define YYPOPSTACK   (yyvsp--, yyssp--) | 
|  | #undef  YY_INT_ALIGNED | 
|  | #define  YY_INT_ALIGNED short int | 
|  | #undef  FLEX_SCANNER | 
|  | #define FLEX_SCANNER | 
|  | #undef  YY_FLEX_MAJOR_VERSION | 
|  | #define YY_FLEX_MAJOR_VERSION 2 | 
|  | #undef  YY_FLEX_MINOR_VERSION | 
|  | #define YY_FLEX_MINOR_VERSION 5 | 
|  | #undef  YY_FLEX_SUBMINOR_VERSION | 
|  | #define YY_FLEX_SUBMINOR_VERSION 31 | 
|  | #undef  FLEX_BETA | 
|  | #define FLEX_BETA | 
|  | #undef  FLEXINT_H | 
|  | #define FLEXINT_H | 
|  | #undef  INT8_MIN | 
|  | #define INT8_MIN               (-128) | 
|  | #undef  INT16_MIN | 
|  | #define INT16_MIN              (-32767-1) | 
|  | #undef  INT32_MIN | 
|  | #define INT32_MIN              (-2147483647-1) | 
|  | #undef  INT8_MAX | 
|  | #define INT8_MAX               (127) | 
|  | #undef  INT16_MAX | 
|  | #define INT16_MAX              (32767) | 
|  | #undef  INT32_MAX | 
|  | #define INT32_MAX              (2147483647) | 
|  | #undef  UINT8_MAX | 
|  | #define UINT8_MAX              (255U) | 
|  | #undef  UINT16_MAX | 
|  | #define UINT16_MAX             (65535U) | 
|  | #undef  UINT32_MAX | 
|  | #define UINT32_MAX             (4294967295U) | 
|  | #undef  YY_USE_CONST | 
|  | #define YY_USE_CONST | 
|  | #undef  YY_USE_CONST | 
|  | #define YY_USE_CONST | 
|  | #undef  yyconst | 
|  | #define yyconst const | 
|  | #undef  yyconst | 
|  | #define yyconst | 
|  | #undef  YY_NULL | 
|  | #define YY_NULL 0 | 
|  | #undef  BEGIN | 
|  | #define BEGIN (yy_start) = 1 + 2 * | 
|  | #undef  YY_START | 
|  | #define YY_START (((yy_start) - 1) / 2) | 
|  | #undef  YYSTATE | 
|  | #define YYSTATE YY_START | 
|  | #undef  YY_NEW_FILE | 
|  | #define YY_NEW_FILE yyrestart(yyin  ) | 
|  | #undef  YY_END_OF_BUFFER_CHAR | 
|  | #define YY_END_OF_BUFFER_CHAR 0 | 
|  | #undef  YY_BUF_SIZE | 
|  | #define YY_BUF_SIZE 16384 | 
|  | #undef  YY_TYPEDEF_YY_BUFFER_STATE | 
|  | #define YY_TYPEDEF_YY_BUFFER_STATE | 
|  | #undef  EOB_ACT_CONTINUE_SCAN | 
|  | #define EOB_ACT_CONTINUE_SCAN 0 | 
|  | #undef  EOB_ACT_END_OF_FILE | 
|  | #define EOB_ACT_END_OF_FILE 1 | 
|  | #undef  EOB_ACT_LAST_MATCH | 
|  | #define EOB_ACT_LAST_MATCH 2 | 
|  | #undef  YY_TYPEDEF_YY_SIZE_T | 
|  | #define YY_TYPEDEF_YY_SIZE_T | 
|  | #undef  YY_STRUCT_YY_BUFFER_STATE | 
|  | #define YY_STRUCT_YY_BUFFER_STATE | 
|  | #undef  YY_BUFFER_NEW | 
|  | #define YY_BUFFER_NEW 0 | 
|  | #undef  YY_BUFFER_NORMAL | 
|  | #define YY_BUFFER_NORMAL 1 | 
|  | #undef  YY_BUFFER_EOF_PENDING | 
|  | #define YY_BUFFER_EOF_PENDING 2 | 
|  | #undef  YY_CURRENT_BUFFER | 
|  | #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ | 
|  | #undef  YY_CURRENT_BUFFER_LVALUE | 
|  | #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] | 
|  | #undef  YY_FLUSH_BUFFER | 
|  | #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) | 
|  | #undef  yy_new_buffer | 
|  | #define yy_new_buffer yy_create_buffer | 
|  | #undef  YY_SKIP_YYWRAP | 
|  | #define YY_SKIP_YYWRAP | 
|  | #undef  yytext_ptr | 
|  | #define yytext_ptr yytext | 
|  | #undef  YY_DO_BEFORE_ACTION | 
|  | #define YY_DO_BEFORE_ACTION \ | 
|  | #undef  YY_NUM_RULES | 
|  | #define YY_NUM_RULES 29 | 
|  | #undef  YY_END_OF_BUFFER | 
|  | #define YY_END_OF_BUFFER 30 | 
|  | #undef  REJECT | 
|  | #define REJECT reject_used_but_not_detected | 
|  | #undef  YY_MORE_ADJ | 
|  | #define YY_MORE_ADJ 0 | 
|  | #undef  YY_RESTORE_YY_MORE_OFFSET | 
|  | #define YY_RESTORE_YY_MORE_OFFSET | 
|  | #undef  YY_NO_UNPUT | 
|  | #define YY_NO_UNPUT | 
|  | #undef  INITIAL | 
|  | #define INITIAL 0 | 
|  | #undef  YY_EXTRA_TYPE | 
|  | #define YY_EXTRA_TYPE void * | 
|  | #undef  YY_READ_BUF_SIZE | 
|  | #define YY_READ_BUF_SIZE 8192 | 
|  | #undef  ECHO | 
|  | #define ECHO (void) fwrite( yytext, yyleng, 1, yyout ) | 
|  | #undef  YY_START_STACK_INCR | 
|  | #define YY_START_STACK_INCR 25 | 
|  | #undef  YY_DECL_IS_OURS | 
|  | #define YY_DECL_IS_OURS 1 | 
|  | #undef  YY_DECL | 
|  | #define YY_DECL int yylex (void) | 
|  | #undef  YY_USER_ACTION | 
|  | #define YY_USER_ACTION | 
|  | #undef  YY_BREAK | 
|  | #define YY_BREAK break; | 
|  | #undef  YY_RULE_SETUP | 
|  | #define YY_RULE_SETUP \ | 
|  | #undef  YY_EXIT_FAILURE | 
|  | #define YY_EXIT_FAILURE 2 | 
|  | #undef  YYTABLES_NAME | 
|  | #define YYTABLES_NAME "yytables" | 
|  | #undef  MAXPWD | 
|  | #define MAXPWD 256 | 
|  | #undef  signal | 
|  | #define signal bsd_signal | 
|  | #undef  ALL | 
|  | #define ALL (E_OPEN|E_CREAT|E_EXEC) | 
|  | #undef  EV_EXIT | 
|  | #define EV_EXIT 01		/* exit after evaluating tree */ | 
|  | #undef  EV_TESTED | 
|  | #define EV_TESTED 02		/* exit status is checked; ignore -e flag */ | 
|  | #undef  EV_BACKCMD | 
|  | #define EV_BACKCMD 04		/* command executing within back quotes */ | 
|  | #undef  CMDTABLESIZE | 
|  | #define CMDTABLESIZE 31		/* should be prime */ | 
|  | #undef  ARB | 
|  | #define ARB 1			/* actual size determined at run time */ | 
|  | #undef  NEWARGS | 
|  | #define NEWARGS 5 | 
|  | #undef  EOF_NLEFT | 
|  | #define EOF_NLEFT -99		/* value of parsenleft when EOF pushed back */ | 
|  | #undef  _PATH_DEVNULL | 
|  | #define _PATH_DEVNULL "/dev/null" | 
|  | #undef  PROFILE | 
|  | #define PROFILE 0 | 
|  | #undef  SIGSSIZE | 
|  | #define SIGSSIZE (sizeof(sigs)/sizeof(sigs[0])) | 
|  | #undef  MINSIZE | 
|  | #define MINSIZE 504		/* minimum size of a block */ | 
|  | #undef  DEFINE_OPTIONS | 
|  | #define DEFINE_OPTIONS | 
|  | #undef  EOFMARKLEN | 
|  | #define EOFMARKLEN 79 | 
|  | #undef  OPENBRACE | 
|  | #define OPENBRACE '{' | 
|  | #undef  CLOSEBRACE | 
|  | #define CLOSEBRACE '}' | 
|  | #undef  EMPTY | 
|  | #define EMPTY -2		/* marks an unused slot in redirtab */ | 
|  | #undef  signal | 
|  | #define signal bsd_signal | 
|  | #undef  sys_signame | 
|  | #define sys_signame sys_siglist | 
|  | #undef  S_DFL | 
|  | #define S_DFL 1			/* default signal handling (SIG_DFL) */ | 
|  | #undef  S_CATCH | 
|  | #define S_CATCH 2		/* signal is caught */ | 
|  | #undef  S_IGN | 
|  | #define S_IGN 3			/* signal is ignored (SIG_IGN) */ | 
|  | #undef  S_HARD_IGN | 
|  | #define S_HARD_IGN 4		/* signal is ignored permenantly */ | 
|  | #undef  S_RESET | 
|  | #define S_RESET 5		/* temporary - to reset a hard ignored sig */ | 
|  | #undef  OUTBUFSIZ | 
|  | #define OUTBUFSIZ BUFSIZ | 
|  | #undef  BLOCK_OUT | 
|  | #define BLOCK_OUT -2		/* output to a fixed block of memory */ | 
|  | #undef  MEM_OUT | 
|  | #define MEM_OUT -3		/* output to dynamically allocated memory */ | 
|  | #undef  OUTPUT_ERR | 
|  | #define OUTPUT_ERR 01		/* error occurred on output */ | 
|  | #undef  TEMPSIZE | 
|  | #define TEMPSIZE 24 | 
|  | #undef  HAVE_VASPRINTF | 
|  | #define HAVE_VASPRINTF 1 | 
|  | #undef  VTABSIZE | 
|  | #define VTABSIZE 39 | 
|  | #undef  VTABSIZE | 
|  | #define VTABSIZE 517 | 
|  | #undef  ATABSIZE | 
|  | #define ATABSIZE 39 | 
|  | #undef  YYBISON | 
|  | #define YYBISON 1 | 
|  | #undef  YYSKELETON_NAME | 
|  | #define YYSKELETON_NAME "yacc.c" | 
|  | #undef  YYPURE | 
|  | #define YYPURE 0 | 
|  | #undef  YYLSP_NEEDED | 
|  | #define YYLSP_NEEDED 0 | 
|  | #undef  ARITH_NUM | 
|  | #define ARITH_NUM 258 | 
|  | #undef  ARITH_LPAREN | 
|  | #define ARITH_LPAREN 259 | 
|  | #undef  ARITH_RPAREN | 
|  | #define ARITH_RPAREN 260 | 
|  | #undef  ARITH_OR | 
|  | #define ARITH_OR 261 | 
|  | #undef  ARITH_AND | 
|  | #define ARITH_AND 262 | 
|  | #undef  ARITH_BOR | 
|  | #define ARITH_BOR 263 | 
|  | #undef  ARITH_BXOR | 
|  | #define ARITH_BXOR 264 | 
|  | #undef  ARITH_BAND | 
|  | #define ARITH_BAND 265 | 
|  | #undef  ARITH_NE | 
|  | #define ARITH_NE 266 | 
|  | #undef  ARITH_EQ | 
|  | #define ARITH_EQ 267 | 
|  | #undef  ARITH_LE | 
|  | #define ARITH_LE 268 | 
|  | #undef  ARITH_GE | 
|  | #define ARITH_GE 269 | 
|  | #undef  ARITH_GT | 
|  | #define ARITH_GT 270 | 
|  | #undef  ARITH_LT | 
|  | #define ARITH_LT 271 | 
|  | #undef  ARITH_RSHIFT | 
|  | #define ARITH_RSHIFT 272 | 
|  | #undef  ARITH_LSHIFT | 
|  | #define ARITH_LSHIFT 273 | 
|  | #undef  ARITH_SUB | 
|  | #define ARITH_SUB 274 | 
|  | #undef  ARITH_ADD | 
|  | #define ARITH_ADD 275 | 
|  | #undef  ARITH_REM | 
|  | #define ARITH_REM 276 | 
|  | #undef  ARITH_DIV | 
|  | #define ARITH_DIV 277 | 
|  | #undef  ARITH_MUL | 
|  | #define ARITH_MUL 278 | 
|  | #undef  ARITH_BNOT | 
|  | #define ARITH_BNOT 279 | 
|  | #undef  ARITH_NOT | 
|  | #define ARITH_NOT 280 | 
|  | #undef  ARITH_UNARYPLUS | 
|  | #define ARITH_UNARYPLUS 281 | 
|  | #undef  ARITH_UNARYMINUS | 
|  | #define ARITH_UNARYMINUS 282 | 
|  | #undef  YYFINAL | 
|  | #define YYFINAL  14 | 
|  | #undef  YYLAST | 
|  | #define YYLAST   170 | 
|  | #undef  YYNTOKENS | 
|  | #define YYNTOKENS  28 | 
|  | #undef  YYNNTS | 
|  | #define YYNNTS  3 | 
|  | #undef  YYNRULES | 
|  | #define YYNRULES  26 | 
|  | #undef  YYNSTATES | 
|  | #define YYNSTATES  52 | 
|  | #undef  YYUNDEFTOK | 
|  | #define YYUNDEFTOK  2 | 
|  | #undef  YYMAXUTOK | 
|  | #define YYMAXUTOK   282 | 
|  | #undef  YYPACT_NINF | 
|  | #define YYPACT_NINF -13 | 
|  | #undef  YYTABLE_NINF | 
|  | #define YYTABLE_NINF -1 | 
|  | #undef  yyerrok | 
|  | #define yyerrok		(yyerrstatus = 0) | 
|  | #undef  yyclearin | 
|  | #define yyclearin	(yychar = YYEMPTY) | 
|  | #undef  YYEMPTY | 
|  | #define YYEMPTY		(-2) | 
|  | #undef  YYEOF | 
|  | #define YYEOF		0 | 
|  | #undef  YYACCEPT | 
|  | #define YYACCEPT	goto yyacceptlab | 
|  | #undef  YYABORT | 
|  | #define YYABORT		goto yyabortlab | 
|  | #undef  YYERROR | 
|  | #define YYERROR		goto yyerrorlab | 
|  | #undef  YYFAIL | 
|  | #define YYFAIL		goto yyerrlab | 
|  | #undef  YYTERROR | 
|  | #define YYTERROR	1 | 
|  | #undef  YYERRCODE | 
|  | #define YYERRCODE	256 | 
|  | #undef  YYPOPSTACK | 
|  | #define YYPOPSTACK   (yyvsp--, yyssp--) | 
|  | #undef  YY_INT_ALIGNED | 
|  | #define  YY_INT_ALIGNED short int | 
|  | #undef  FLEX_SCANNER | 
|  | #define FLEX_SCANNER | 
|  | #undef  YY_FLEX_MAJOR_VERSION | 
|  | #define YY_FLEX_MAJOR_VERSION 2 | 
|  | #undef  YY_FLEX_MINOR_VERSION | 
|  | #define YY_FLEX_MINOR_VERSION 5 | 
|  | #undef  YY_FLEX_SUBMINOR_VERSION | 
|  | #define YY_FLEX_SUBMINOR_VERSION 31 | 
|  | #undef  FLEX_BETA | 
|  | #define FLEX_BETA | 
|  | #undef  FLEXINT_H | 
|  | #define FLEXINT_H | 
|  | #undef  INT8_MIN | 
|  | #define INT8_MIN               (-128) | 
|  | #undef  INT16_MIN | 
|  | #define INT16_MIN              (-32767-1) | 
|  | #undef  INT32_MIN | 
|  | #define INT32_MIN              (-2147483647-1) | 
|  | #undef  INT8_MAX | 
|  | #define INT8_MAX               (127) | 
|  | #undef  INT16_MAX | 
|  | #define INT16_MAX              (32767) | 
|  | #undef  INT32_MAX | 
|  | #define INT32_MAX              (2147483647) | 
|  | #undef  UINT8_MAX | 
|  | #define UINT8_MAX              (255U) | 
|  | #undef  UINT16_MAX | 
|  | #define UINT16_MAX             (65535U) | 
|  | #undef  UINT32_MAX | 
|  | #define UINT32_MAX             (4294967295U) | 
|  | #undef  YY_USE_CONST | 
|  | #define YY_USE_CONST | 
|  | #undef  YY_USE_CONST | 
|  | #define YY_USE_CONST | 
|  | #undef  yyconst | 
|  | #define yyconst const | 
|  | #undef  yyconst | 
|  | #define yyconst | 
|  | #undef  YY_NULL | 
|  | #define YY_NULL 0 | 
|  | #undef  BEGIN | 
|  | #define BEGIN (yy_start) = 1 + 2 * | 
|  | #undef  YY_START | 
|  | #define YY_START (((yy_start) - 1) / 2) | 
|  | #undef  YYSTATE | 
|  | #define YYSTATE YY_START | 
|  | #undef  YY_NEW_FILE | 
|  | #define YY_NEW_FILE yyrestart(yyin  ) | 
|  | #undef  YY_END_OF_BUFFER_CHAR | 
|  | #define YY_END_OF_BUFFER_CHAR 0 | 
|  | #undef  YY_BUF_SIZE | 
|  | #define YY_BUF_SIZE 16384 | 
|  | #undef  YY_TYPEDEF_YY_BUFFER_STATE | 
|  | #define YY_TYPEDEF_YY_BUFFER_STATE | 
|  | #undef  EOB_ACT_CONTINUE_SCAN | 
|  | #define EOB_ACT_CONTINUE_SCAN 0 | 
|  | #undef  EOB_ACT_END_OF_FILE | 
|  | #define EOB_ACT_END_OF_FILE 1 | 
|  | #undef  EOB_ACT_LAST_MATCH | 
|  | #define EOB_ACT_LAST_MATCH 2 | 
|  | #undef  YY_TYPEDEF_YY_SIZE_T | 
|  | #define YY_TYPEDEF_YY_SIZE_T | 
|  | #undef  YY_STRUCT_YY_BUFFER_STATE | 
|  | #define YY_STRUCT_YY_BUFFER_STATE | 
|  | #undef  YY_BUFFER_NEW | 
|  | #define YY_BUFFER_NEW 0 | 
|  | #undef  YY_BUFFER_NORMAL | 
|  | #define YY_BUFFER_NORMAL 1 | 
|  | #undef  YY_BUFFER_EOF_PENDING | 
|  | #define YY_BUFFER_EOF_PENDING 2 | 
|  | #undef  YY_CURRENT_BUFFER | 
|  | #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ | 
|  | #undef  YY_CURRENT_BUFFER_LVALUE | 
|  | #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] | 
|  | #undef  YY_FLUSH_BUFFER | 
|  | #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) | 
|  | #undef  yy_new_buffer | 
|  | #define yy_new_buffer yy_create_buffer | 
|  | #undef  YY_SKIP_YYWRAP | 
|  | #define YY_SKIP_YYWRAP | 
|  | #undef  yytext_ptr | 
|  | #define yytext_ptr yytext | 
|  | #undef  YY_DO_BEFORE_ACTION | 
|  | #define YY_DO_BEFORE_ACTION \ | 
|  | #undef  YY_NUM_RULES | 
|  | #define YY_NUM_RULES 29 | 
|  | #undef  YY_END_OF_BUFFER | 
|  | #define YY_END_OF_BUFFER 30 | 
|  | #undef  REJECT | 
|  | #define REJECT reject_used_but_not_detected | 
|  | #undef  YY_MORE_ADJ | 
|  | #define YY_MORE_ADJ 0 | 
|  | #undef  YY_RESTORE_YY_MORE_OFFSET | 
|  | #define YY_RESTORE_YY_MORE_OFFSET | 
|  | #undef  YY_NO_UNPUT | 
|  | #define YY_NO_UNPUT | 
|  | #undef  INITIAL | 
|  | #define INITIAL 0 | 
|  | #undef  YY_EXTRA_TYPE | 
|  | #define YY_EXTRA_TYPE void * | 
|  | #undef  YY_READ_BUF_SIZE | 
|  | #define YY_READ_BUF_SIZE 8192 | 
|  | #undef  ECHO | 
|  | #define ECHO (void) fwrite( yytext, yyleng, 1, yyout ) | 
|  | #undef  YY_START_STACK_INCR | 
|  | #define YY_START_STACK_INCR 25 | 
|  | #undef  YY_DECL_IS_OURS | 
|  | #define YY_DECL_IS_OURS 1 | 
|  | #undef  YY_DECL | 
|  | #define YY_DECL int yylex (void) | 
|  | #undef  YY_USER_ACTION | 
|  | #define YY_USER_ACTION | 
|  | #undef  YY_BREAK | 
|  | #define YY_BREAK break; | 
|  | #undef  YY_RULE_SETUP | 
|  | #define YY_RULE_SETUP \ | 
|  | #undef  YY_EXIT_FAILURE | 
|  | #define YY_EXIT_FAILURE 2 | 
|  | #undef  YYTABLES_NAME | 
|  | #define YYTABLES_NAME "yytables" | 
|  | #undef  MAXPWD | 
|  | #define MAXPWD 256 | 
|  | #undef  signal | 
|  | #define signal bsd_signal | 
|  | #undef  ALL | 
|  | #define ALL (E_OPEN|E_CREAT|E_EXEC) | 
|  | #undef  EV_EXIT | 
|  | #define EV_EXIT 01		/* exit after evaluating tree */ | 
|  | #undef  EV_TESTED | 
|  | #define EV_TESTED 02		/* exit status is checked; ignore -e flag */ | 
|  | #undef  EV_BACKCMD | 
|  | #define EV_BACKCMD 04		/* command executing within back quotes */ | 
|  | #undef  CMDTABLESIZE | 
|  | #define CMDTABLESIZE 31		/* should be prime */ | 
|  | #undef  ARB | 
|  | #define ARB 1			/* actual size determined at run time */ | 
|  | #undef  NEWARGS | 
|  | #define NEWARGS 5 | 
|  | #undef  EOF_NLEFT | 
|  | #define EOF_NLEFT -99		/* value of parsenleft when EOF pushed back */ | 
|  | #undef  _PATH_DEVNULL | 
|  | #define _PATH_DEVNULL "/dev/null" | 
|  | #undef  PROFILE | 
|  | #define PROFILE 0 | 
|  | #undef  SIGSSIZE | 
|  | #define SIGSSIZE (sizeof(sigs)/sizeof(sigs[0])) | 
|  | #undef  MINSIZE | 
|  | #define MINSIZE 504		/* minimum size of a block */ | 
|  | #undef  DEFINE_OPTIONS | 
|  | #define DEFINE_OPTIONS | 
|  | #undef  EOFMARKLEN | 
|  | #define EOFMARKLEN 79 | 
|  | #undef  OPENBRACE | 
|  | #define OPENBRACE '{' | 
|  | #undef  CLOSEBRACE | 
|  | #define CLOSEBRACE '}' | 
|  | #undef  EMPTY | 
|  | #define EMPTY -2		/* marks an unused slot in redirtab */ | 
|  | #undef  signal | 
|  | #define signal bsd_signal | 
|  | #undef  sys_signame | 
|  | #define sys_signame sys_siglist | 
|  | #undef  S_DFL | 
|  | #define S_DFL 1			/* default signal handling (SIG_DFL) */ | 
|  | #undef  S_CATCH | 
|  | #define S_CATCH 2		/* signal is caught */ | 
|  | #undef  S_IGN | 
|  | #define S_IGN 3			/* signal is ignored (SIG_IGN) */ | 
|  | #undef  S_HARD_IGN | 
|  | #define S_HARD_IGN 4		/* signal is ignored permenantly */ | 
|  | #undef  S_RESET | 
|  | #define S_RESET 5		/* temporary - to reset a hard ignored sig */ | 
|  | #undef  OUTBUFSIZ | 
|  | #define OUTBUFSIZ BUFSIZ | 
|  | #undef  BLOCK_OUT | 
|  | #define BLOCK_OUT -2		/* output to a fixed block of memory */ | 
|  | #undef  MEM_OUT | 
|  | #define MEM_OUT -3		/* output to dynamically allocated memory */ | 
|  | #undef  OUTPUT_ERR | 
|  | #define OUTPUT_ERR 01		/* error occurred on output */ | 
|  | #undef  TEMPSIZE | 
|  | #define TEMPSIZE 24 | 
|  | #undef  HAVE_VASPRINTF | 
|  | #define HAVE_VASPRINTF 1 | 
|  | #undef  VTABSIZE | 
|  | #define VTABSIZE 39 | 
|  | #undef  VTABSIZE | 
|  | #define VTABSIZE 517 | 
|  | #undef  main | 
|  | #define main echocmd | 
|  | #undef  YYBISON | 
|  | #define YYBISON 1 | 
|  | #undef  YYSKELETON_NAME | 
|  | #define YYSKELETON_NAME "yacc.c" | 
|  | #undef  YYPURE | 
|  | #define YYPURE 0 | 
|  | #undef  YYLSP_NEEDED | 
|  | #define YYLSP_NEEDED 0 | 
|  | #undef  ARITH_NUM | 
|  | #define ARITH_NUM 258 | 
|  | #undef  ARITH_LPAREN | 
|  | #define ARITH_LPAREN 259 | 
|  | #undef  ARITH_RPAREN | 
|  | #define ARITH_RPAREN 260 | 
|  | #undef  ARITH_OR | 
|  | #define ARITH_OR 261 | 
|  | #undef  ARITH_AND | 
|  | #define ARITH_AND 262 | 
|  | #undef  ARITH_BOR | 
|  | #define ARITH_BOR 263 | 
|  | #undef  ARITH_BXOR | 
|  | #define ARITH_BXOR 264 | 
|  | #undef  ARITH_BAND | 
|  | #define ARITH_BAND 265 | 
|  | #undef  ARITH_NE | 
|  | #define ARITH_NE 266 | 
|  | #undef  ARITH_EQ | 
|  | #define ARITH_EQ 267 | 
|  | #undef  ARITH_LE | 
|  | #define ARITH_LE 268 | 
|  | #undef  ARITH_GE | 
|  | #define ARITH_GE 269 | 
|  | #undef  ARITH_GT | 
|  | #define ARITH_GT 270 | 
|  | #undef  ARITH_LT | 
|  | #define ARITH_LT 271 | 
|  | #undef  ARITH_RSHIFT | 
|  | #define ARITH_RSHIFT 272 | 
|  | #undef  ARITH_LSHIFT | 
|  | #define ARITH_LSHIFT 273 | 
|  | #undef  ARITH_SUB | 
|  | #define ARITH_SUB 274 | 
|  | #undef  ARITH_ADD | 
|  | #define ARITH_ADD 275 | 
|  | #undef  ARITH_REM | 
|  | #define ARITH_REM 276 | 
|  | #undef  ARITH_DIV | 
|  | #define ARITH_DIV 277 | 
|  | #undef  ARITH_MUL | 
|  | #define ARITH_MUL 278 | 
|  | #undef  ARITH_BNOT | 
|  | #define ARITH_BNOT 279 | 
|  | #undef  ARITH_NOT | 
|  | #define ARITH_NOT 280 | 
|  | #undef  ARITH_UNARYPLUS | 
|  | #define ARITH_UNARYPLUS 281 | 
|  | #undef  ARITH_UNARYMINUS | 
|  | #define ARITH_UNARYMINUS 282 | 
|  | #undef  YYFINAL | 
|  | #define YYFINAL  14 | 
|  | #undef  YYLAST | 
|  | #define YYLAST   170 | 
|  | #undef  YYNTOKENS | 
|  | #define YYNTOKENS  28 | 
|  | #undef  YYNNTS | 
|  | #define YYNNTS  3 | 
|  | #undef  YYNRULES | 
|  | #define YYNRULES  26 | 
|  | #undef  YYNSTATES | 
|  | #define YYNSTATES  52 | 
|  | #undef  YYUNDEFTOK | 
|  | #define YYUNDEFTOK  2 | 
|  | #undef  YYMAXUTOK | 
|  | #define YYMAXUTOK   282 | 
|  | #undef  YYPACT_NINF | 
|  | #define YYPACT_NINF -13 | 
|  | #undef  YYTABLE_NINF | 
|  | #define YYTABLE_NINF -1 | 
|  | #undef  yyerrok | 
|  | #define yyerrok		(yyerrstatus = 0) | 
|  | #undef  yyclearin | 
|  | #define yyclearin	(yychar = YYEMPTY) | 
|  | #undef  YYEMPTY | 
|  | #define YYEMPTY		(-2) | 
|  | #undef  YYEOF | 
|  | #define YYEOF		0 | 
|  | #undef  YYACCEPT | 
|  | #define YYACCEPT	goto yyacceptlab | 
|  | #undef  YYABORT | 
|  | #define YYABORT		goto yyabortlab | 
|  | #undef  YYERROR | 
|  | #define YYERROR		goto yyerrorlab | 
|  | #undef  YYFAIL | 
|  | #define YYFAIL		goto yyerrlab | 
|  | #undef  YYTERROR | 
|  | #define YYTERROR	1 | 
|  | #undef  YYERRCODE | 
|  | #define YYERRCODE	256 | 
|  | #undef  YYPOPSTACK | 
|  | #define YYPOPSTACK   (yyvsp--, yyssp--) | 
|  | #undef  YY_INT_ALIGNED | 
|  | #define  YY_INT_ALIGNED short int | 
|  | #undef  FLEX_SCANNER | 
|  | #define FLEX_SCANNER | 
|  | #undef  YY_FLEX_MAJOR_VERSION | 
|  | #define YY_FLEX_MAJOR_VERSION 2 | 
|  | #undef  YY_FLEX_MINOR_VERSION | 
|  | #define YY_FLEX_MINOR_VERSION 5 | 
|  | #undef  YY_FLEX_SUBMINOR_VERSION | 
|  | #define YY_FLEX_SUBMINOR_VERSION 31 | 
|  | #undef  FLEX_BETA | 
|  | #define FLEX_BETA | 
|  | #undef  FLEXINT_H | 
|  | #define FLEXINT_H | 
|  | #undef  INT8_MIN | 
|  | #define INT8_MIN               (-128) | 
|  | #undef  INT16_MIN | 
|  | #define INT16_MIN              (-32767-1) | 
|  | #undef  INT32_MIN | 
|  | #define INT32_MIN              (-2147483647-1) | 
|  | #undef  INT8_MAX | 
|  | #define INT8_MAX               (127) | 
|  | #undef  INT16_MAX | 
|  | #define INT16_MAX              (32767) | 
|  | #undef  INT32_MAX | 
|  | #define INT32_MAX              (2147483647) | 
|  | #undef  UINT8_MAX | 
|  | #define UINT8_MAX              (255U) | 
|  | #undef  UINT16_MAX | 
|  | #define UINT16_MAX             (65535U) | 
|  | #undef  UINT32_MAX | 
|  | #define UINT32_MAX             (4294967295U) | 
|  | #undef  YY_USE_CONST | 
|  | #define YY_USE_CONST | 
|  | #undef  YY_USE_CONST | 
|  | #define YY_USE_CONST | 
|  | #undef  yyconst | 
|  | #define yyconst const | 
|  | #undef  yyconst | 
|  | #define yyconst | 
|  | #undef  YY_NULL | 
|  | #define YY_NULL 0 | 
|  | #undef  BEGIN | 
|  | #define BEGIN (yy_start) = 1 + 2 * | 
|  | #undef  YY_START | 
|  | #define YY_START (((yy_start) - 1) / 2) | 
|  | #undef  YYSTATE | 
|  | #define YYSTATE YY_START | 
|  | #undef  YY_NEW_FILE | 
|  | #define YY_NEW_FILE yyrestart(yyin  ) | 
|  | #undef  YY_END_OF_BUFFER_CHAR | 
|  | #define YY_END_OF_BUFFER_CHAR 0 | 
|  | #undef  YY_BUF_SIZE | 
|  | #define YY_BUF_SIZE 16384 | 
|  | #undef  YY_TYPEDEF_YY_BUFFER_STATE | 
|  | #define YY_TYPEDEF_YY_BUFFER_STATE | 
|  | #undef  EOB_ACT_CONTINUE_SCAN | 
|  | #define EOB_ACT_CONTINUE_SCAN 0 | 
|  | #undef  EOB_ACT_END_OF_FILE | 
|  | #define EOB_ACT_END_OF_FILE 1 | 
|  | #undef  EOB_ACT_LAST_MATCH | 
|  | #define EOB_ACT_LAST_MATCH 2 | 
|  | #undef  YY_TYPEDEF_YY_SIZE_T | 
|  | #define YY_TYPEDEF_YY_SIZE_T | 
|  | #undef  YY_STRUCT_YY_BUFFER_STATE | 
|  | #define YY_STRUCT_YY_BUFFER_STATE | 
|  | #undef  YY_BUFFER_NEW | 
|  | #define YY_BUFFER_NEW 0 | 
|  | #undef  YY_BUFFER_NORMAL | 
|  | #define YY_BUFFER_NORMAL 1 | 
|  | #undef  YY_BUFFER_EOF_PENDING | 
|  | #define YY_BUFFER_EOF_PENDING 2 | 
|  | #undef  YY_CURRENT_BUFFER | 
|  | #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ | 
|  | #undef  YY_CURRENT_BUFFER_LVALUE | 
|  | #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] | 
|  | #undef  YY_FLUSH_BUFFER | 
|  | #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) | 
|  | #undef  yy_new_buffer | 
|  | #define yy_new_buffer yy_create_buffer | 
|  | #undef  yytext_ptr | 
|  | #define yytext_ptr yytext | 
|  | #undef  YY_DO_BEFORE_ACTION | 
|  | #define YY_DO_BEFORE_ACTION \ | 
|  | #undef  YY_NUM_RULES | 
|  | #define YY_NUM_RULES 29 | 
|  | #undef  YY_END_OF_BUFFER | 
|  | #define YY_END_OF_BUFFER 30 | 
|  | #undef  REJECT | 
|  | #define REJECT reject_used_but_not_detected | 
|  | #undef  YY_MORE_ADJ | 
|  | #define YY_MORE_ADJ 0 | 
|  | #undef  YY_RESTORE_YY_MORE_OFFSET | 
|  | #define YY_RESTORE_YY_MORE_OFFSET | 
|  | #undef  YY_NO_UNPUT | 
|  | #define YY_NO_UNPUT | 
|  | #undef  INITIAL | 
|  | #define INITIAL 0 | 
|  | #undef  YY_EXTRA_TYPE | 
|  | #define YY_EXTRA_TYPE void * | 
|  | #undef  YY_READ_BUF_SIZE | 
|  | #define YY_READ_BUF_SIZE 8192 | 
|  | #undef  ECHO | 
|  | #define ECHO (void) fwrite( yytext, yyleng, 1, yyout ) | 
|  | #undef  YY_START_STACK_INCR | 
|  | #define YY_START_STACK_INCR 25 | 
|  | #undef  YY_DECL_IS_OURS | 
|  | #define YY_DECL_IS_OURS 1 | 
|  | #undef  YY_DECL | 
|  | #define YY_DECL int yylex (void) | 
|  | #undef  YY_USER_ACTION | 
|  | #define YY_USER_ACTION | 
|  | #undef  YY_BREAK | 
|  | #define YY_BREAK break; | 
|  | #undef  YY_RULE_SETUP | 
|  | #define YY_RULE_SETUP \ | 
|  | #undef  YY_EXIT_FAILURE | 
|  | #define YY_EXIT_FAILURE 2 | 
|  | #undef  YYTABLES_NAME | 
|  | #define YYTABLES_NAME "yytables" | 
|  | #undef  MAXPWD | 
|  | #define MAXPWD 256 | 
|  | #undef  ALL | 
|  | #define ALL (E_OPEN|E_CREAT|E_EXEC) | 
|  | #undef  EV_EXIT | 
|  | #define EV_EXIT 01		/* exit after evaluating tree */ | 
|  | #undef  EV_TESTED | 
|  | #define EV_TESTED 02		/* exit status is checked; ignore -e flag */ | 
|  | #undef  EV_BACKCMD | 
|  | #define EV_BACKCMD 04		/* command executing within back quotes */ | 
|  | #undef  CMDTABLESIZE | 
|  | #define CMDTABLESIZE 31		/* should be prime */ | 
|  | #undef  ARB | 
|  | #define ARB 1			/* actual size determined at run time */ | 
|  | #undef  NEWARGS | 
|  | #define NEWARGS 5 | 
|  | #undef  EOF_NLEFT | 
|  | #define EOF_NLEFT -99		/* value of parsenleft when EOF pushed back */ | 
|  | #undef  _PATH_DEVNULL | 
|  | #define _PATH_DEVNULL "/dev/null" | 
|  | #undef  PROFILE | 
|  | #define PROFILE 0 | 
|  | #undef  SIGSSIZE | 
|  | #define SIGSSIZE (sizeof(sigs)/sizeof(sigs[0])) | 
|  | #undef  MINSIZE | 
|  | #define MINSIZE 504		/* minimum size of a block */ | 
|  | #undef  DEFINE_OPTIONS | 
|  | #define DEFINE_OPTIONS | 
|  | #undef  EOFMARKLEN | 
|  | #define EOFMARKLEN 79 | 
|  | #undef  OPENBRACE | 
|  | #define OPENBRACE '{' | 
|  | #undef  CLOSEBRACE | 
|  | #define CLOSEBRACE '}' | 
|  | #undef  EMPTY | 
|  | #define EMPTY -2		/* marks an unused slot in redirtab */ | 
|  | #undef  S_DFL | 
|  | #define S_DFL 1			/* default signal handling (SIG_DFL) */ | 
|  | #undef  S_CATCH | 
|  | #define S_CATCH 2		/* signal is caught */ | 
|  | #undef  S_IGN | 
|  | #define S_IGN 3			/* signal is ignored (SIG_IGN) */ | 
|  | #undef  S_HARD_IGN | 
|  | #define S_HARD_IGN 4		/* signal is ignored permenantly */ | 
|  | #undef  S_RESET | 
|  | #define S_RESET 5		/* temporary - to reset a hard ignored sig */ | 
|  | #undef  OUTBUFSIZ | 
|  | #define OUTBUFSIZ BUFSIZ | 
|  | #undef  BLOCK_OUT | 
|  | #define BLOCK_OUT -2		/* output to a fixed block of memory */ | 
|  | #undef  MEM_OUT | 
|  | #define MEM_OUT -3		/* output to dynamically allocated memory */ | 
|  | #undef  OUTPUT_ERR | 
|  | #define OUTPUT_ERR 01		/* error occurred on output */ | 
|  | #undef  TEMPSIZE | 
|  | #define TEMPSIZE 24 | 
|  | #undef  HAVE_VASPRINTF | 
|  | #define HAVE_VASPRINTF 1 | 
|  | #undef  VTABSIZE | 
|  | #define VTABSIZE 39 | 
|  | #undef  VTABSIZE | 
|  | #define VTABSIZE 517 | 
|  | #undef  main | 
|  | #define main echocmd | 
|  |  | 
|  |  | 
|  |  | 
|  | extern void rmaliases(void); | 
|  |  | 
|  | extern int loopnest;		/* current loop nesting level */ | 
|  |  | 
|  | extern void deletefuncs(void); | 
|  | extern void hash_special_builtins(void); | 
|  |  | 
|  | struct strpush { | 
|  | struct strpush *prev;	/* preceding string on stack */ | 
|  | char *prevstring; | 
|  | int prevnleft; | 
|  | int prevlleft; | 
|  | struct alias *ap;	/* if push was associated with an alias */ | 
|  | }; | 
|  |  | 
|  | struct parsefile { | 
|  | struct parsefile *prev;	/* preceding file on stack */ | 
|  | int linno;		/* current line */ | 
|  | int fd;			/* file descriptor (or -1 if string) */ | 
|  | int nleft;		/* number of chars left in this line */ | 
|  | int lleft;		/* number of chars left in this buffer */ | 
|  | char *nextc;		/* next char in buffer */ | 
|  | char *buf;		/* input buffer */ | 
|  | struct strpush *strpush; /* for pushing strings at this level */ | 
|  | struct strpush basestrpush; /* so pushing one is fast */ | 
|  | }; | 
|  |  | 
|  | extern int parselleft;		/* copy of parsefile->lleft */ | 
|  | extern struct parsefile basepf;	/* top level input file */ | 
|  | extern char basebuf[BUFSIZ];	/* buffer for top level input file */ | 
|  |  | 
|  | extern pid_t backgndpid;	/* pid of last background process */ | 
|  | extern int jobctl; | 
|  |  | 
|  | extern int tokpushback;		/* last token pushed back */ | 
|  | extern int checkkwd;            /* 1 == check for kwds, 2 == also eat newlines */ | 
|  |  | 
|  | struct redirtab { | 
|  | struct redirtab *next; | 
|  | short renamed[10]; | 
|  | }; | 
|  |  | 
|  | extern struct redirtab *redirlist; | 
|  |  | 
|  | extern char sigmode[NSIG];	/* current value of signal */ | 
|  |  | 
|  | extern char **environ; | 
|  |  | 
|  |  | 
|  |  | 
|  | /* | 
|  | * Initialization code. | 
|  | */ | 
|  |  | 
|  | void | 
|  | init() { | 
|  |  | 
|  | /* from exec.c: */ | 
|  | { | 
|  | hash_special_builtins(); | 
|  | } | 
|  |  | 
|  | /* from input.c: */ | 
|  | { | 
|  | basepf.nextc = basepf.buf = basebuf; | 
|  | } | 
|  |  | 
|  | /* from var.c: */ | 
|  | { | 
|  | char **envp; | 
|  |  | 
|  | initvar(); | 
|  | for (envp = environ ; *envp ; envp++) { | 
|  | if (strchr(*envp, '=')) { | 
|  | setvareq(*envp, VEXPORT|VTEXTFIXED); | 
|  | } | 
|  | } | 
|  | } | 
|  | } | 
|  |  | 
|  |  | 
|  |  | 
|  | /* | 
|  | * This routine is called when an error or an interrupt occurs in an | 
|  | * interactive shell and control is returned to the main command loop. | 
|  | */ | 
|  |  | 
|  | void | 
|  | reset() { | 
|  |  | 
|  | /* from eval.c: */ | 
|  | { | 
|  | evalskip = 0; | 
|  | loopnest = 0; | 
|  | funcnest = 0; | 
|  | } | 
|  |  | 
|  | /* from input.c: */ | 
|  | { | 
|  | if (exception != EXSHELLPROC) | 
|  | parselleft = parsenleft = 0;	/* clear input buffer */ | 
|  | popallfiles(); | 
|  | } | 
|  |  | 
|  | /* from parser.c: */ | 
|  | { | 
|  | tokpushback = 0; | 
|  | checkkwd = 0; | 
|  | } | 
|  |  | 
|  | /* from redir.c: */ | 
|  | { | 
|  | while (redirlist) | 
|  | popredir(); | 
|  | } | 
|  |  | 
|  | /* from output.c: */ | 
|  | { | 
|  | out1 = &output; | 
|  | out2 = &errout; | 
|  | if (memout.buf != NULL) { | 
|  | ckfree(memout.buf); | 
|  | memout.buf = NULL; | 
|  | } | 
|  | } | 
|  | } | 
|  |  | 
|  |  | 
|  |  | 
|  | /* | 
|  | * This routine is called to initialize the shell to run a shell procedure. | 
|  | */ | 
|  |  | 
|  | void | 
|  | initshellproc() { | 
|  |  | 
|  | /* from alias.c: */ | 
|  | { | 
|  | rmaliases(); | 
|  | } | 
|  |  | 
|  | /* from eval.c: */ | 
|  | { | 
|  | exitstatus = 0; | 
|  | } | 
|  |  | 
|  | /* from exec.c: */ | 
|  | { | 
|  | deletefuncs(); | 
|  | } | 
|  |  | 
|  | /* from input.c: */ | 
|  | { | 
|  | popallfiles(); | 
|  | } | 
|  |  | 
|  | /* from jobs.c: */ | 
|  | { | 
|  | backgndpid = -1; | 
|  | #if JOBS | 
|  | jobctl = 0; | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* from options.c: */ | 
|  | { | 
|  | int i; | 
|  |  | 
|  | for (i = 0; optlist[i].name; i++) | 
|  | optlist[i].val = 0; | 
|  | optschanged(); | 
|  |  | 
|  | } | 
|  |  | 
|  | /* from redir.c: */ | 
|  | { | 
|  | clearredir(0); | 
|  | } | 
|  |  | 
|  | /* from trap.c: */ | 
|  | { | 
|  | char *sm; | 
|  |  | 
|  | clear_traps(0); | 
|  | for (sm = sigmode ; sm < sigmode + NSIG ; sm++) { | 
|  | if (*sm == S_IGN) | 
|  | *sm = S_HARD_IGN; | 
|  | } | 
|  | } | 
|  |  | 
|  | /* from var.c: */ | 
|  | { | 
|  | shprocvar(); | 
|  | } | 
|  | } |