/* * Copyright (c) 1984, 1985, 1986 AT&T * All Rights Reserved * THIS IS UNPUBLISHED PROPRIETARY SOURCE * CODE OF AT&T. * The copyright notice above does not * evidence any actual or intended * publication of such source code. */ /* @(#)builtins.h 1.1 */ /* table of shell builtins */ /* currently can not be more than SYSMAX */ #define SYSMAX 255 /* The following commands up to SYSSPECIAL treat parameter lists specially */ /* They do not evaluate in-line with command substitution */ /* Also, commands below SYSNULL cause a script to abort on errors */ #define SYSEXEC 1 #define SYSLOGIN 2 #define SYSFC 3 #define SYSEVAL 4 #define SYSDOT 5 #define SYSRETURN 6 #define SYSRDONLY 7 #define SYSXPORT 8 #define SYSTYPESET 9 #define SYSNULL 10 #define SYSSHFT 11 #define SYSCD 12 #define SYSSPECIAL 12 /* end of special commands */ #define SYSEXIT 13 #define SYSULIMIT 14 #define SYSCONT 15 #define SYSBREAK 16 #define SYSTRAP 17 #define SYSTIMES 18 #define SYSUMASK 19 #define SYSWAIT 20 #define SYSREAD 21 #define SYSSET 22 #define SYSUNSET 23 #define SYSLET 24 #define SYSALIAS 25 #define SYSUNALIAS 26 #define SYSWHENCE 27 #define SYSTEST 28 #define SYSPRINT 29 #define SYSECHO 30 #define SYSPWD 31 #define SYSFG 32 #define SYSBG 33 #define SYSJOBS 34 #define SYSKILL 35 #ifdef apollo #define SYSINLIB 36 #define SYSINPROCESS 37 #endif /* apollo */ /* structure for builtin shell variable names and aliases */ struct name_value { #ifdef apollo /* you can't readonly pointers */ char nv_name[12]; char nv_value[20]; #else char *nv_name; char *nv_value; #endif /* apollo */ }; /* The following defines are coordinated with data in msg.c */ #define PATHNOD (bltin_nodes) #define PS1NOD (bltin_nodes+1) #define PS2NOD (bltin_nodes+2) #define IFSNOD (bltin_nodes+3) #define PWDNOD (bltin_nodes+4) #define HOME (bltin_nodes+5) #define MAILNOD (bltin_nodes+6) #define REPLYNOD (bltin_nodes+7) #define SHELLNOD (bltin_nodes+8) #define EDITNOD (bltin_nodes+9) #define MCHKNOD (bltin_nodes+10) #define RANDNOD (bltin_nodes+11) #define ENVNOD (bltin_nodes+12) #define HISTFILE (bltin_nodes+13) #define HISTSIZE (bltin_nodes+14) #define FCEDNOD (bltin_nodes+15) #define CDPNOD (bltin_nodes+16) #define MAILPNOD (bltin_nodes+17) #define PS3NOD (bltin_nodes+18) #define OLDPWDNOD (bltin_nodes+19) #define VISINOD (bltin_nodes+20) #define COLUMNS (bltin_nodes+21) #define LINES (bltin_nodes+22) #define PPIDNOD (bltin_nodes+23) #define L_ARGNOD (bltin_nodes+24) #define TMOUTNOD (bltin_nodes+25) #define SECONDS (bltin_nodes+26) #ifdef ACCT #define ACCTNOD (bltin_nodes+27) #define NNODES 28 #else #define NNODES 27 #endif /* ACCT */ #ifdef BSD #define NALIAS 29 #else #define NALIAS 28 #endif /* BSD */ extern struct Namnod *bltin_nodes; extern struct name_value node_names[]; extern struct name_value alias_names[]; #ifdef BSD extern char *limit_names[]; #endif /* BSD */