diff options
author | April Chin <April.Chin@Sun.COM> | 2008-12-27 14:59:38 -0800 |
---|---|---|
committer | April Chin <April.Chin@Sun.COM> | 2008-12-27 14:59:38 -0800 |
commit | 7c2fbfb345896881c631598ee3852ce9ce33fb07 (patch) | |
tree | 4b173b5657508562dfc0aa05f7d056d1e9add505 /usr/src/lib/libshell/common/include/shnodes.h | |
parent | 6071ac1de68fed78e1e10052045bbb5f1732a263 (diff) | |
download | illumos-gate-7c2fbfb345896881c631598ee3852ce9ce33fb07.tar.gz |
PSARC/2008/094 ksh93 Update 1
PSARC/2008/344 ksh93 Integration Update 1 Amendments 1
PSARC/2008/589 Remove /usr/bin/printf from PSARC case 2008 094
6619428 *ksh93* RFE: Update ksh93 in Solaris to ast-ksh.2008-11-04
6788659 RFE: Update libpp in Solaris to ast-open.2008-07-25
6561901 RFE: Add "shcomp" (shell script compiler) + kernel module to exec binary sh code
6599668 RFE: Move consumers of alias.sh over to ksh93
6595183 *ksh93* RFE: Update ksh93-integration demo code
6775901 *ksh93* no C message catalogs are generated for ksh93
6451262 *sleep* RFE: /usr/bin/sleep should support floating-point values
6687139 *ksh93* command substitution, exec, and stdout redirection cause allocation loop
6703761 *ksh93* crashes in script containing uncommon output redirections
6715496 *ksh93* SEGVs on array reinitialization
6713682 *ksh93* Creating a compound variable in a subshell "bleeds through" to the calling subshell
6672350 *ksh93* causes parent shell to die when child shell is suspended
6745015 *ksh93* VARIABLE=`command substitution` assignment is not reliable on OpenSolaris
6710205 *ksh93* problem with command substitution (within back quotes) containing \$'
6737600 *ksh93* exits debugger when user presses ctrl-c
6748645 *ksh93* fc -l -e - is mis-parsed, outputs wrong error message "-e - requires single argument"
6754020 *ksh93* does weird '[' expansion
6753538 *ksh93* umask modification leaks out of a ksh93 subshell
6766246 *ksh93* bug in pattern matching
6763594 *ksh93* executes command after "command" builtin twice on failure
6762665 *ksh93* Difficult-to-reproduce SIGSEGV in ksh93
Diffstat (limited to 'usr/src/lib/libshell/common/include/shnodes.h')
-rw-r--r-- | usr/src/lib/libshell/common/include/shnodes.h | 45 |
1 files changed, 21 insertions, 24 deletions
diff --git a/usr/src/lib/libshell/common/include/shnodes.h b/usr/src/lib/libshell/common/include/shnodes.h index b688edb4c5..e55cfc42eb 100644 --- a/usr/src/lib/libshell/common/include/shnodes.h +++ b/usr/src/lib/libshell/common/include/shnodes.h @@ -1,10 +1,10 @@ /*********************************************************************** * * * This software is part of the ast package * -* Copyright (c) 1982-2007 AT&T Knowledge Ventures * +* Copyright (c) 1982-2008 AT&T Intellectual Property * * and is licensed under the * * Common Public License, Version 1.0 * -* by AT&T Knowledge Ventures * +* by AT&T Intellectual Property * * * * A copy of the License is available at * * http://www.opensource.org/licenses/cpl1.0.txt * @@ -40,6 +40,7 @@ #define FSHOWME (0400<<COMBITS) /* set for showme commands */ #define FPOSIX (02<<COMBITS) /* posix semantics function */ #define FLINENO (04<<COMBITS) /* for/case has line number */ +#define FOPTGET (010<<COMBITS) /* function calls getopts */ #define TNEGATE (01<<COMBITS) /* ! inside [[...]] */ #define TBINARY (02<<COMBITS) /* binary operator in [[...]] */ @@ -169,21 +170,22 @@ struct arithnod /* types of ionodes stored in iofile */ -#define IOUFD 0x3f /* file descriptor number mask */ -#define IOPUT 0x40 /* > redirection operator */ -#define IOAPP 0x80 /* >> redirection operator */ -#define IODOC 0x100 /* << redirection operator */ -#define IOMOV 0x200 /* <& or >& operators */ -#define IOCLOB 0x400 /* noclobber bit */ -#define IORDW 0x800 /* <> redirection operator */ -#define IORAW 0x1000 /* no expansion needed for filename */ -#define IOSTRG 0x2000 /* here-document stored as incore string */ -#define IOSTRIP 0x4000 /* strip leading tabs for here-document */ -#define IOQUOTE 0x8000 /* here-document delimiter was quoted */ -#define IOVNM 0x10000 /* iovname field is non-zero */ -#define IOLSEEK 0x20000 /* seek operators <# or ># */ -#define IOARITH 0x40000 /* arithmetic seek <# ((expr)) */ -#define IOCOPY IOCLOB /* copy skipped lines onto standard output */ +#define IOUFD 0x3f /* file descriptor number mask */ +#define IOPUT 0x40 /* > redirection operator */ +#define IOAPP 0x80 /* >> redirection operator */ +#define IODOC 0x100 /* << redirection operator */ +#define IOMOV 0x200 /* <& or >& operators */ +#define IOCLOB 0x400 /* noclobber bit */ +#define IORDW 0x800 /* <> redirection operator */ +#define IORAW 0x1000 /* no expansion needed for filename */ +#define IOSTRG 0x2000 /* here-document stored as incore string */ +#define IOSTRIP 0x4000 /* strip leading tabs for here-document */ +#define IOQUOTE 0x8000 /* here-document delimiter was quoted */ +#define IOVNM 0x10000 /* iovname field is non-zero */ +#define IOLSEEK 0x20000 /* seek operators <# or ># */ +#define IOARITH 0x40000 /* arithmetic seek <# ((expr)) */ +#define IOREWRITE 0x80000 /* arithmetic seek <# ((expr)) */ +#define IOCOPY IOCLOB /* copy skipped lines onto standard output */ union Shnode_u { @@ -205,18 +207,13 @@ union Shnode_u struct arithnod ar; }; -extern void sh_freeup(void); +extern void sh_freeup(Shell_t*); extern void sh_funstaks(struct slnod*,int); extern Sfio_t *sh_subshell(Shnode_t*, int, int); #if defined(__EXPORT__) && defined(_BLD_DLL) && defined(_BLD_shell) __EXPORT__ #endif extern int sh_tdump(Sfio_t*, const Shnode_t*); -extern Shnode_t *sh_dolparen(void); -extern Shnode_t *sh_trestore(Sfio_t*); -#if SHOPT_KIA - extern int kiaclose(void); - extern unsigned long kiaentity(const char*,int,int,int,int,unsigned long,int,int,const char*); -#endif /* SHOPT_KIA */ +extern Shnode_t *sh_trestore(Shell_t*, Sfio_t*); #endif /* _SHNODES_H */ |