diff options
author | Andy Fiddaman <omnios@citrus-it.co.uk> | 2020-12-27 17:47:37 +0000 |
---|---|---|
committer | Andy Fiddaman <omnios@citrus-it.co.uk> | 2021-01-30 17:13:33 +0000 |
commit | b30d193948be5a7794d7ae3ba0ed9c2f72c88e0f (patch) | |
tree | 6a37e590faffb9bb9af66887de645c546445036c /usr/src/lib/libast/sparc/include/ast/regexp.h | |
parent | df36e06d12cbf655ddf22339ef8c39fa2b83ebf8 (diff) | |
download | illumos-gate-b30d193948be5a7794d7ae3ba0ed9c2f72c88e0f.tar.gz |
13405 ksh93 update to 2012-08-01
13434 sh: mishandles backslash as last character of a block of input
11750 ksh mkdir builtin doesn't honor special file permissions
9199 ksh93 builtin *grep -v mishandles blank lines, blows up libgcrypt-config
6756 sh (and ksh) have issues with ${1+"$@"}
6520 ksh: sleep could wait forever
4860 ksh93: core in printf
3791 /bin/sh's builtin 'rm' busted: 'rm -f' without arguments returns error
1047 ksh overwrites child core files
880 ksh93 coredumps on 'unset'
499 "interrupted system call" when using "tee" builtin in ksh
Reviewed by: Robert Mustacchi <rm@fingolfin.org>
Reviewed by: Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
Reviewed by: Dominik Hassler <hadfl@omnios.org>
Approved by: Rich Lowe <richlowe@richlowe.net>
Diffstat (limited to 'usr/src/lib/libast/sparc/include/ast/regexp.h')
-rw-r--r-- | usr/src/lib/libast/sparc/include/ast/regexp.h | 139 |
1 files changed, 0 insertions, 139 deletions
diff --git a/usr/src/lib/libast/sparc/include/ast/regexp.h b/usr/src/lib/libast/sparc/include/ast/regexp.h deleted file mode 100644 index ea2df629b5..0000000000 --- a/usr/src/lib/libast/sparc/include/ast/regexp.h +++ /dev/null @@ -1,139 +0,0 @@ - -/* : : generated by proto : : */ -/*********************************************************************** -* * -* This software is part of the ast package * -* Copyright (c) 1985-2010 AT&T Intellectual Property * -* and is licensed under the * -* Common Public License, Version 1.0 * -* by AT&T Intellectual Property * -* * -* A copy of the License is available at * -* http://www.opensource.org/licenses/cpl1.0.txt * -* (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * -* * -* Glenn Fowler <gsf@research.att.com> * -* David Korn <dgk@research.att.com> * -* Phong Vo <kpv@research.att.com> * -* * -***********************************************************************/ - -/* - * regexp interface and partial implementation - * what a novel approach - * don't do it again - * - * OBSOLETE: use <regex.h> - */ - -#ifndef _REGEXP_H -#if !defined(__PROTO__) -#include <prototyped.h> -#endif -#if !defined(__LINKAGE__) -#define __LINKAGE__ /* 2004-08-11 transition */ -#endif - -#define _REGEXP_H - -#define NBRA 9 - -typedef struct -{ - char* re_braslist[NBRA]; - char* re_braelist[NBRA]; - char* re_loc1; - char* re_loc2; - char* re_locs; - int re_circf; - int re_nbra; - int re_nodelim; - int re_sed; -} regexp_t; - -#define braslist _re_info.re_braslist -#define braelist _re_info.re_braelist -#define circf _re_info.re_circf -#define loc1 _re_info.re_loc1 -#define loc2 _re_info.re_loc2 -#define locs _re_info.re_locs -#define nbra _re_info.re_nbra -#define nodelim _re_info.re_nodelim -#define sed _re_info.re_sed - -#define advance(a,b) _re_exec(&_re_info,a,b,1) -#define compile(a,b,c,d) _re_read(&_re_info,a,b,c,d) -#define step(a,b) _re_exec(&_re_info,a,b,0) - -#if _BLD_ast && defined(__EXPORT__) -#undef __MANGLE__ -#define __MANGLE__ __LINKAGE__ __EXPORT__ -#endif - -extern __MANGLE__ int _re_comp __PROTO__((regexp_t*, const char*, char*, unsigned int)); -extern __MANGLE__ int _re_exec __PROTO__((regexp_t*, const char*, const char*, int)); -extern __MANGLE__ char* _re_putc __PROTO__((int)); -extern __MANGLE__ char* _re_read __PROTO__((regexp_t*, const char*, char*, const char*, int)); - -#undef __MANGLE__ -#define __MANGLE__ __LINKAGE__ - -#ifndef _REGEXP_DECLARE - -regexp_t _re_info; - -char* -_re_read __PARAM__((register regexp_t* re, const char* instring, char* ep, const char* endbuf, int seof), (re, instring, ep, endbuf, seof)) __OTORP__(register regexp_t* re; const char* instring; char* ep; const char* endbuf; int seof;){ - register int c; - - static const char* prev; - -#ifdef INIT - INIT; -#endif - - re->re_nodelim = 0; - if ((c = GETC()) == seof || c == '\n' || c == -1 || c == 0) - { - if (c != seof) - { - UNGETC(c); - re->re_nodelim = 1; - } - if (!re->re_sed && !prev) - { ERROR(41); } - RETURN((char*)endbuf); - } - UNGETC(c); - prev = 0; - for (;;) - { - if ((c = GETC()) == seof || c == '\n' || c == -1 || c == 0) - { - if (re->re_sed) - { ERROR(36); } - UNGETC(c); - re->re_nodelim = 1; - break; - } - if (c == '\\') - { - _re_putc(c); - if ((c = GETC()) == seof || c == '\n' || c == -1 || c == 0) - { ERROR(36); } - } - _re_putc(c); - } - if (c = _re_comp(re, _re_putc(0), ep, (char*)endbuf - ep)) - { ERROR(c); } - prev = endbuf; - RETURN((char*)prev); -} - -#endif - -#endif |