110-03-08 features/tvlib: fix utimensat probe to include all macros/structs 210-03-07 features/lib: change stream_peek to test pipes only 310-03-07 string/strelapsed.c: fix next char return overrun 410-03-06 tm/tvtouch.c: use runtime fallback if utimensat() fails with ENOSYS 510-03-05 path/pathtemp.c: add pfx /seed for regression testing 610-03-04 vmalloc/vmwalk.c: add user supplied handle arg 710-03-04 path/pathtemp.c: properly handle mktemp()-style *+(X) templates 810-03-03 include/ast_getopt.h: remove NULL guard - _AST_GETOPT_H now handles it 910-02-24 comp/getopt.h: fix ast_std.h interactions 1010-02-24 vmalloc/malloc.c: empty { VMALLOC_OPTION VMDEBUG ... } => no debug! 1110-02-02 string/base64.c: fix corner case output buffer overflow 1210-02-02 features/fs: sys/mnttab.h requires stdio.h on some systems!! 1310-02-01 misc/optget.c: uppercase --html heading -- doh 1410-01-29 misc/optget.c: [+NAME?...] overrides error_info.id for >= STYLE_man 1510-01-25 vmalloc/vmprivate.c: fix seg ptr initialization bug (24 years old!!) 1610-01-20 misc/optget.c: handle nested {...} rendering 1710-01-20 misc/state.c: add ast.version for runtime api version 1810-01-20 port/astconf.c: "_AST_VERSION" now returns ast.version 1910-01-20 include/ast_std.h: add ast.version for runtime api version 2010-01-19 astlicense.c: add epl 2110-01-01 vmalloc: VMALLOC_OPTIONS env var for all runtime options 2210-01-01 include: change some <ast.h> refs to less intrusive <ast_*.h> 2310-01-01 setlocale.c,translate.c,fmterror.c: AST_LC_internal retains prev state 2410-01-01 comp/setlocale.c: AST_LC_setenv defers to LC_ALL (for sh) 2510-01-01 ast_std.h: add { AST_LC_internal AST_LC_setenv } 2609-12-24 comp/setlocale.c: fix setlocale(LC_ALL,"") when already initialized 2709-12-17 misc/optget.c: handle mixed solaris usage="x:f:(in)yo:(out)" 2809-12-11 regex/regcomp.c: posix semantics for [z-a] 2909-12-11 regex/regcomp.c: fix BRE/ERE ^^ logic 3009-12-11 regex/regcomp.c: fix regcomb() for REG_LEFT|REG_RIGHT 3109-12-11 regex/regcomp.c: bm complete=0 if REX_END 3209-12-11 comp/sigflag.c: add with npt check in features/sig.sh 3309-12-11 tm/tminit.c: fix _tzset_environ logic 3409-12-09 tm/tmlocale.c: include "ast_nl_types.h" to pull nl_langinfo in! 3509-12-04 features/options: add "opt map-libc" check 3609-12-03 tm/tmxdate.c: fix 'next month final day' for dec -> jan 3709-11-21 misc/magic.tab: add gimp XCF 3809-11-20 vmalloc/vmtrace.c: add pid to assertion disgnostics 3909-11-11 regex.h,regcomp.c: add REG_CLASS_ESCAPE, \ inside [...] literal by default 4009-11-03 regex/regcache.c: change to variable length pattern strings 4109-10-28 include/error.h: fix ERROR_translate() arg parens 4209-10-26 port/lcgen.c,comp/setlocale.c: handle LANG init after LC_* already defined 4309-10-05 _sfopen.c: add but ignore 'F' flags for stdio compatibility 4409-09-28 fts.h,ftwalk.h,fts.c: promote { namelen pathlen level } to (s)size_t 4509-09-28 locales: add AST_LC_LANG for $LANG 4609-09-28 setlocale.c: fix logic for dynamic { LANG LC_ALL LC_* } changes 4709-09-17 include/sfio.h,sfio/sfwalk.c: add sfwalk() 4809-09-09 sfio/sfputr.c: add SIGPIPE hang fix 4909-08-24 sfio/sfreserve.c: fix SF_UNBOUND logic with pushed streams 5009-08-18 include/ast_std.h,ast.h: add ast.mb_sync to sync mbchar() after error 5109-08-17 comp/setlocale.c: add AST_LC_utf8 and { utf8_mbtowc() utf8_mblen() } 5209-08-11 comp/setlocale.c: treat "en"/"en_US" AST_LC_MESSAGES as "C"/"POSIX" 5309-08-10 vmalloc/vmhdr.h: add user-defined _AST_PAGESIZE and computed VMHEAPINCR 5409-08-09 comp/conf.tab: add NPROCESSORS_MAX 5509-07-29 astlicense.c: fix first name=value logic error 5609-07-22 string/fmtip6.c: don't drop trailing 0 in 44::1:0:0 5709-06-30 port/astconf.c: standard PATH_RESOLVE is "physical" (not "metaphysical") 5809-06-19 vmalloc: sync with kpv 5909-06-19 include/shcmd.h: add sh_context(p) cast 6009-06-11 misc/magic.tab: differentiate pc 386 32/64 bit dll/exe/obj 6109-06-06 port/astconf.c: fix look->name null pointer reference 6209-06-05 port/astconf.c: fix 'UNIVERSE = value' synthesize logic 6309-05-25 tm/tmxduration.c: add 6409-05-08 comp/syslog.c: add _UWIN /var/log/syslog preference 6509-05-01 comp/setlocale.c: fix _UWIN intercepts to return NiL on unknown locales 6609-04-27 sfio/sfpool.c: fix bug that did not return pool on delete 6709-04-22 include/regex.h,regex/regcomp.c: add REG_REGEXP <regexp.h> compatibility 6809-04-15 tm/tmxdate.c: handle "4th thursday in november" 6909-03-31 string/strvcmp.c,string/strnvcmp.c: add version strcmp(3) 7009-03-31 string/strpcmp.c,string/strnpcmp.c: add path prefix strcmp(3) 7109-03-29 misc/optget.c: clean up num = number casts 7209-03-04 tm/tmxmake.c: add tmxtm() with zone override 7309-03-03 tm/tmxfmt.c: add %(...)<c>, specifically %(...)z for output zone 7409-02-22 tm/tmxdate.c: add iso P... durations 7509-02-02 path/pathprog.c: add 7609-02-02 misc/opthdr.h,optget.c: fix flags mixup, handle old '-' as option 7709-02-02 sfio/sfprints.c: fix sfvaprints() return value to not count trailing '\0' 7809-02-02 misc/cmdarg.c: handle !defined(ARG_MAX) 7909-02-02 port/astconf.c: fix UNIVERSE overwrite of null[] value! 8009-01-31 features/sys: drop header sys/localedef.h 8109-01-28 include/fs3d.h,misc/fs3d.c: mount() => fs3d_mount() for diff std prototypes 8209-01-14 misc/fts_open.c: delay top list reorder until first fts_read() 8309-01-14 include/ls.h: LS_W_INUMBER => 9 to accomodate large st_ino 8409-01-14 misc/optget.c: expand STYLE_usage input text 8509-01-09 features/uwin,stdio/_stdfun.c: iffe for _p__iob and __p__iob 8609-01-09 misc/magic.tab: add ISO filesystem image entries 8709-01-07 string/strtoi.c: strtol() etc. do not consume [lLuU] suffix -- thanks jkf 8809-01-07 sfio/sfstrtof.h: strtod() etc. do not consume [fFlL] suffix -- thanks jkf 8909-01-05 string/strlcat.c: fix logic to match docs (not that easy) 9008-12-30 tm/tmxdate.c,include/tm.h: add TM_WORK { "workday" "working" "work" } 9108-12-28 sfio/sfcvt.c: fix 'a' format rounding 9208-12-21 tm/tmdata.c: add 2008-12-31+23:59:60-0000 leap second event 9308-12-19 tm/tmxdate.c: check for dates near the epoch rolling back to the future 9408-12-19 tm/tmxfmt.c: change %s for now==0 to be the epoch 9508-12-07 include/ast_std.h,misc/getenv.c: no _ast_getenv for uwin ast54 compatibility 9608-12-07 tm/tmxfmt.c: add %[_][EO]K for [space pad] [full|long] iso 9708-12-07 sfio/sfvscanf.c: fix ok[] short by one allocation 9808-12-07 comp/setlocale.c: fix off by one composite initialition loop test 9908-12-07 path/pathkey.c: fix off by one loop test 10008-12-04 vmalloc/vmbest.c: catch sbrk() wraparound 10108-12-04 comp/spawnveg.c: clean up attrs on failure too 10208-11-04 regex/regcomp.c: fix locale [!-...] and [^-...] re-initialization 10308-11-04 stdio: add flockfile.c ftrylockfile.c funlockfile.c 10408-10-24 port/astconf.c: handle multiple/trailing '/' in universe initialization 10508-09-10 misc/magic.c: handle old vcodex() indices 10608-09-10 sfio/sfvprintf.c: drop SF_WCWIDTH, use %Lc or %Ls instead 10708-09-05 Makefile: ibm.risc joins the :NOOPTIMIZE: crowd 10808-09-04 regex/regnexec.c: fix nested delimiter match beyond end of subject 10908-08-20 misc/fts.c: fix st_nlink stat() optimization logic 11008-08-19 sfio/sfpkrd.c: workaround macosx recv(PEEK) data consumption on non-socket 11108-08-19 strn?tol?d: handle long double with smaller exponent range than double 11208-08-18 sfio/sfcvt.c: eliminate excessive multiplies and integral overprecision 11308-08-11 tm/tmxfmt.c: handle %10N and %010N 11408-08-06 include/shcmd.h: add 'int invariant;' for builtin invariant arg count 11508-08-05 features/ndbm: favor sleepycat ndbm compatibility 11608-07-21 include/glob.h,misc/glob.c: GLOB_STARSTAR only forces lstat on chdir 11708-07-17 sfio: sync with kpv 11808-07-17 misc/optget.c: call astwinsize() each time terminal width required 11908-07-16 sfio/sfvscanf.c: fix %% to skip leading space per posix 12008-07-16 vmalloc/vmbest.c: add VMCHECK=m, VM_mmap to favor mmap() alloc 12108-07-16 features/stdio,stdio/f(read|write).c: size_t return value!! ouch 12208-06-24 tm/tmxfmt.c: fix %z to handle tm_isdst -- doh 12308-06-24 misc/astintercept.c,misc/getenv.c: split from misc/setenviron.c 12408-06-17 misc/setenviron.c: add { astintercept() getenv() } 12508-06-09 tm/tmlocale.c: use _DATE_FMT if defined for TM_DEFAULT 12608-06-06 misc/optget.c: handle sub-component about details 12708-06-04 misc/optget.c: fix [-n?\n...\n] version parse 12808-06-04 include/debug.h,misc/debug.c: merge with kpvdebug.h 12908-06-02 features/ndbm: add to tame dbmlib.iffe replication 13008-06-01 comp/resolvepath.c,realpath.c: fix resolvepath() return value type 13108-05-22 tm/tmxdate.c: fix a few ordinal/last/this/next bugs 13208-05-18 string/fmtre.c: fix omitted stack var initialization bug 13308-05-14 regex/regcomp.c,regcoll.c: fix UTF-8 collation sequence logic 13408-05-11 tm/tmxfmt.c: :NOOPTIMIZE:, otherwise %Q/../../ fails 13508-05-01 tm/tmxdate.c: mon 1..12 => mon[13] -- doh 13608-04-30 misc/glob.c,reegex/regcomp.c: ~(R) => ~(O) to avoid pcre clash 13708-04-24 port/astconf.c: 'name = value' does assignment without system init 13808-04-15 port/astconf.c: SC#N treated like 'SC(N)' 13908-04-14 misc/optget.c: clean up nroff output 14008-04-01 port/astconf.c: add RELEASE => /proc/version fallback 14108-03-30 misc/optget.c: [-n]... to enable -number & +number options 14208-03-06 misc/optget.c: ---* and +++* are now operands 14308-03-06 misc/errorx.c: fix old error_info.translate workaround 14408-02-05 regex/regcomp.c: allow REG_SHELL {,n}... => {0,n}... 14508-02-27 misc/stk.c: top element during allocation relocated to top 14608-02-18 include/ip6.h,string/strtoip6.c,fmtip6.c: add ipv6 addr support 14708-02-14 regex/regsubexec.c: fix null match (tricky) 14808-02-14 regex/regsubcomp.c: fix SRE to match ksh 14908-02-11 comp/spawnveg.c: return proper errno on [v]fork() failure 15008-02-11 tm/tmxdate.c,tmdata.c: handle more ISO 8601:2000 forms 15108-02-02 regex/reglib.h: add REGMULTIREF to REG_COMP 15208-02-02 string/strmatch.c: fix str="" pat="" sub values 15308-01-31 comp/conf.sh,conf.tab: handle /bin/sh \ in read data, redir subshell 15408-01-18 misc/magic.tab: amd-x68, 64-bit => x86-64 15508-01-18 string/strnton.c,strntonll.c: add 15607-12-10 string/strelapsed.c: "0" is a valid elapsed time! 15707-12-02 sfio/sfreserve.c: preserve SF_SHARE sfrd() via sfreserve(f,0,0) 15807-11-21 comp/setlocale.c: add sjis_mbtowc() to work around [\~] translation 15907-11-15 features/signal.c: RT(1) .. RT(MAX-1) => RTMIN+1 .. RTMAX-1 16007-11-14 features/float: favor sscanf() due to gnu strto[l]d() nan bugs 16107-10-31 regex/regcomp.c: fix REX_COLL_CLASS node allocation size 16207-10-31 sfio/sfcvt.c: use signbit() if available 16307-10-31 features/isoc99: _ISOC99_SOURCE tests 16407-10-31 port/astmath.c: add -DN=8 for signbit() 16507-10-31 sfio/sfstrtod.h: don't forget about -0.0 16607-10-26 features/map.c: add { optopt optarg optind opterr } 16707-10-26 features/stdio: add _filbuf => _ast__filbuf 16807-10-26 comp/getsubopt.c: fix #undef that interfered with <ast_map.h> 16907-10-26 regex/regcomp.c: fix bug that missed ')' in ~(F)... 17007-10-12 port/astconf.c: fix CONF_ALLOC 16 bit overflow 17107-10-12 misc/fts.c: fix fts_close() to free the handle -- doh 17207-10-11 comp/setlocale.c: second and subsequent setlocale(*,"") reverts to previous 17307-10-11 path/pathprobe.c: add vfs ST_NOSUID check 17407-10-10 comp/conf.tab: add a few more xpg6 deferrals 17507-09-28 astsa: update to share with mainline src via _PACKAGE_astsa 17607-09-25 sfio/sfgetr.c: no limit on string stream line size 17707-09-25 sfio/sfextern.c: increase _Sfmaxr to 256*1024 17807-09-18 misc/procopen.c: tighten up SIGCHLD logic between parent/child 17907-09-18 misc/signal.c: unblock SIG_DFL after setting handler, sig<0 => don't unblock 18007-09-13 misc/fs3d.c: no $LD_PRELOAD => no 3d and avoids invalid mount(2) call 18107-09-11 vmalloc: vmstat(0,0)==1 => region in use, drop VM_primary|VM_secondary 18207-09-05 misc/recstr.c: handle [lL] gobbled by strtol() -- ouch 18307-08-17 path/pathprobe.c: handle '\r' in VERSION string 18407-07-17 regex/regcache.c: regcache(0,n,0) extends cache to size n (no shrinking) 18507-07-16 tm/tmdata.c: add 2005-12-31, drop 1999-12-31 (where did that come from?) 18607-05-21 tm/tmxfmt.c,tmxscan.c: %F => %L (TM_DEFAULT); %F => %Y-%m-%d 18707-05-15 sfio/sfvprintf.c: %h? and SFFMT_SHORT => raw bytes 18807-05-09 features/signal.c,features/siglist: use kill -l & strsignal() 18907-04-25 misc/optctx.c: add for opt_info switching 19007-04-24 misc/cmdarg.c,include/cmdarg.h: add CMD_CHECKED, CMD_SILENT 19107-04-24 misc/procopen.c,include/proc.h: add PROC_CHECK 19207-04-24 misc/procrun.c: add flags arg (current use PROC_ARGMOD) 19307-04-24 misc/cmdarg.c,include/cmdarg.h: move from src/cmd/tw 19407-04-20 port/(lclang.h|lc.c|mc.c|lclib.h|lcgen.c): separate lctab.c 19507-04-20 comp/conf.sh: defer to systems without 'grep -q' -- sigh 19607-04-20 comp/conf.sh: probe for LL integer constant initializer suffix 19707-04-20 include/syslog.h: <namval.h> => <ast_namval.h> for win32 19807-04-20 ast_namval.h: add as copy of include/namval.h for win32 19907-04-19 comp/conf.tab: fix SVID SI entries to probe SI_* (not _SI_*) 20007-04-13 tm/tmxdate.c,tm/tmzone.c: handle [-+]0000 UTC zone offset 20107-04-11 sfio/sfvprintf.c: add %F, propagate SFFMT_UPPER 20207-04-11 sfio/sfcvt.c: handle SFFMT_UPPER => nan/inf vs. NAN/INF 20307-04-02 comp/conf.tab,comp/conf.sh: add C/POSIX <stdint.h> symbols 20407-03-28 misc/optget.c: fix l10n --?- 20507-03-25 features/common: fix { ast_std.h ast_map.h stdint.h } logic 20607-03-21 error.h: move from error_info to (*_error_data_) 20707-03-21 misc/error.c: add errorctx() for error_info switching 20807-03-21 option.h: move from opt_info to (*_opt_data_) 20907-03-19 regex/regdecomp.c: fix REX_ONECHAR escapes and add REX_KMP 21007-03-11 tm/tmxscan.c,regex/regnexec.c: fix strict-alias transgressions 21107-02-27 comp/conf.sh: handle native getconf invalid numeric values 21207-02-21 comp/conf.sh,comp/conf.tab: handle SSIZE_MAX vs _POSIX_SSIZE_MAX 21307-02-20 sfio/sfvprintf.c: handle SF_WCWIDTH justification 21407-02-14 features/common: cover <stdint.h>, move to int_(bits)_t 21507-02-14 include/int.h: drop 21607-02-14 include/sfio.h: add SF_WCWIDTH 21707-02-12 comp/conf.sh: fix CONF_LIMIT bug that missed ULONG_MAX etc. 21807-02-12 comp/conf.tab: *LONGLONG* => *LLONG* to match posix 21907-02-12 features/float: *LONGLONG* => *LLONG* to match posix 22007-02-12 port/astconf.c: handle CONF_LIMITS_DEF with no deferral 22107-02-12 stdio/vasprintf.c: add trailing '\0' -- doh 22207-02-04 string/fmtelapsed.c: fix naive multi month/year logic 22307-02-02 misc/optget.c: add --??posix for getopts(1)/getopt(3) 22407-01-26 string/chresc.c: use mbchar() 22507-01-26 misc/optget.c: handle "o:-:" usage for old-style long options 22607-01-22 sfio/sfdisc.c,sfpool.c: handle push on streams with pending peek 22707-01-22 include/sfio.h: mv Sfieee_t to sfio/sfhdr.h 22807-01-17 tm/tmxfmt.c: fix terminating nil logic which clobbered size-1 22907-01-11 misc/stk.c: a 2 day marathon bug fix (can we release now dr ek?) 23007-01-05 comp/spawnveg.c: posix_spawnattr_setflags(POSIX_SPAWN_SETPGROUP) 23107-01-05 misc/error.c: fix multibyte vs. printable logic 23207-01-01 comp/conf.sh: LC_ALL=C 23306-12-26 tm/tmxdate.c: handle nn*.nnnn* == sec.ns 23406-12-20 features/libpath.sh: generalize sol.* LIBPATH patterns 23506-12-18 comp/setlocale.c: include ast_standards.h and ast_wchar.h ! 23606-12-12 string/strperm.c: octal modes are absolute! 23706-12-11 comp/conf.tab: always defer ARG_MAX 23806-12-07 Makefile: fix conftab.c generation CCFLAGS to match build - doh 23906-12-04 sfio/sfcvt.c: fix (int) vs. (long) cast mismatches 24006-12-01 comp/conf.tab: add changes to cover solaris { bin xpg4 xpg6 } 24106-12-01 regex/reginit.c: adjust { SRE KRE } escaped (){}*? inside [...] 24206-12-01 sfio/sfcvt.c: add signbit/copysign tests 24306-11-22 comp/spawnveg.c: fix _real_vfork logic to work with 3d 24406-11-20 features/common: bias _ast_int8_t "long long" before "__int64" 24506-11-20 string/strperm.c: fix X to work with all ops (not just +) 24606-11-15 astconf.c,conf.tab: add CONF_DEFER_* for variable constants 24706-11-11 port/astconf.c: validate path arg w.r.t. underlying calls 24806-11-11 comp/conf.sh: fix S CONF_STANDARD bug, add D to defer to native 24906-11-11 comp/conf.tab: add D to defer to native 25006-11-01 include/vmalloc.h: avoid VM_FLAGS sys/v*.h clash 25106-11-01 include/ast.h: add FMT_PARAM for fmtquote() 25206-10-31 disc/sfdcseekable.c: add SFSK_DISCARD for seekable window control 25306-10-31 comp/spawnveg.c,features/lib: handle posix_spawn exit status 127 25406-10-30 features/lib: fix posix_spawn() fork() prototype conflicts 25506-10-30 string/fmtscale.c: fix 1024 rounding bugs 25606-10-27 disc/sfkeyprintf.c: handle 'i' (=='d') -- oops 25706-10-26 sfio/sfvprintf.c: %#d => fmtscale(1000), %#i => fmtscale(1024) 25806-10-26 features/map.c: _map_libc cleanup 25906-10-26 features/fcntl: add to the circle of trust 26006-10-26 features/sys: add <sys/socket.h> socklen_t 26106-10-26 include/regex.h: handle include before <ast_map.h> 26206-10-25 astconf "SHELL" => "SH" to avoid _POSIX_SHELL conflict 26306-10-25 comp/conf.*: drop no-op duplicate conftab.c entries 26406-10-18 string/fmtscale.c: 1000: n[.]n[n](kMGTPE), 1024: n[.]n[n](KMGTPE)i 26506-10-11 ast_std.h: now implies <sys/stat.h> (did on most before anyway) 26606-10-11 strtoi.h: ignore sign for 0, validate scale shift 26706-10-11 strdup.c,vmstrdup.c: handle 0 arg 26806-10-11 add sfstruse()/sfstropen() error checks 26906-10-10 misc/procopen.c: envv==environ => don't modify environ 27006-10-10 misc/procclose.c: return valid exit(1) status 27106-10-06 port/astconf.c,comp/conf.sh,comp/conf.tab: play nice with getconf(1) 27206-10-01 comp/conf.tab: SHELL default checks { _CS_PATH } X { ksh ksh93 sh } 27306-10-01 comp/conf.sh: export CONF_getconf to shell actions 27406-10-01 comp/putenv.c: always enable setenv() for procopen() 27506-10-01 misc/procopen.c: use pathshell() or astconf("SHELL",0,0) if PARANOID 27606-10-01 path/pathshell.c: localize the shell path patterns and accept ksh93 27706-09-28 Makefile: avoid ast <stdio.h> vix iffe -X ast -- doh 27806-09-27 regex/regdecomp.c: add 27906-09-26 regex/regcomp.c: handle KRE ~(...)<invalid-kre> 28006-09-25 reorganize to avoid native header intercepts 28106-09-15 uwin/crypt.c: _UWIN only! 28206-09-14 Makefile: tweak the ast_common.h bootstrap again (finally?) 28306-09-14 misc/optget.c: noncommercial => OPT_proprietary 28406-09-12 string/strelapsed.c: fix multi-char qualifier parse 28506-09-12 string/strtoi.h: drop [cClLqQwW] multipliers 28606-09-11 misc/optget.c: add numeric arg validity check 28706-09-07 misc/optget.c,tm/tmfix.c: fix uninitialzed var refs 28806-09-05 path/pathprobe.c: add version header verification 28906-08-01 Makefile: handle iffe vs FEATURE/common vs ast_common.h 29006-08-31 Makefile: add ast_map.h to the bootstrap list 29106-08-30 misc/glob.c: fix ~(E)re bug that stripped ~(E) before regcomp 29206-08-30 include/ast.h: add { integralof(x) pointerof(x) } 29306-08-27 string/strelapsed.c: fix off-by-one (too little) parse bug 29406-08-25 misc/optget.c: 0*<n>.* numeric option args => <n>.* 29506-08-22 misc/glob.c: handle ~(...) pattern options 29606-08-16 string/strelapsed.c: fix off-by-one (too far) parse bug 29706-08-16 regex/regcomp.c: accept but ignore ~(N) 29806-08-14 features/libpath.sh: add solaris LD_LIBRARY_PATH_64 check 29906-08-05 sfio/sfpool.c: pool SF_READ|SF_WRITE loop fix 30006-08-02 misc/fts.c: fix FTS_NOSTAT optimization to check for .. 30106-07-28 include/glob.h: add gl_extra for user globlist_t expansion 30206-07-27 features/common: #include "ast_map.h" 30306-07-26 comp/fnmatch.[ch]: allow <ast_map.h> to map fnmatch() 30406-07-22 cdt: snarf from kpv 30506-07-17 string/strperm.c: perm==-1 skips umask(1) 30606-07-17 sfio/sfvprintf.c: handle format invalid mb seq 30706-07-17 regex/regcomp.c: inline REG_SHELL => anchored, otherwise not 30806-07-17 regex/regcomp.c: inline B|G:basic E:REG_EXTENDED F|L:REG_LITERAL 30906-07-17 regex/regcomp.c: inline l:REG_LEFT r:REG_RIGHT 31006-07-17 regex/regcomp.c: inline a:REG_LEFT|REG_RIGHT p:~REG_LENIENT 31106-07-17 string/chresc.c: add \Uxxxxxxxx 31206-07-17 sfio/sfstrtof.h: ignore thousands sep after decimal 31306-07-17 string/tokline.c: splice() => spliceline() for bsd 31406-06-27 features/float,sfio/sfcvt.c: fix Nan logic 31506-06-27 port/astmath.c: fix long double isnan() test 31606-06-27 features/map.c: _map_libc for std => _ast_std 31706-06-25 string/strperm.c: handle posix = w.r.t. umask 31806-06-19 port/mnt.c,features/fs: handle netbsd getmntent api change 31906-06-18 regex/regstat.c: add REG_LITERAL check 32006-06-11 cdt/dtview.c: update from kpv 32106-05-31 sfio/sfhdr.h: fix _SFOPEN() typo 32206-05-09 comp/conf.sh: add native getconf -a names to the mix 32306-04-28 misc/optget.c: add solaris long option name compatibility 32406-03-09 string/strmatch.c: add REG_ADVANCE => REG_* flags 32506-02-14 comp/iconv.c: fix uwin iconv_list() /reg/ generator 32606-02-10 port/astconf.c: relax standard prefix filter 32706-02-08 sfrd.c,sfsync.c: lock logic bug fix 32806-02-01 port/astlicense.c: add { parent incorporation } 32906-01-26 port/astconf.c: fix { LIBPREFIX LIBSUFFIX } length 33006-01-06 features/lib: change _UNIV_DEFAULT probe to use cross{...} 33106-01-04 misc/stk.c: fix n**2 realloc behavior 33206-01-01 include/sfio.h: export { _Sfi _Sfmaxr } 33305-12-13 string/chresc.c: handle \C-X => control-X, \M- => ESC 33405-11-22 regex/regcache.c: add, convert string/strmatch.c to regcache() 33505-10-06 string/ccmap.c: update ebcdic-u to be idempotent 33605-09-28 vmalloc: snarf from kpv; fixes large block brk() thrashing 33705-09-26 misc/magic.c,misc/magic.tab: handle latest vcodex header 33805-09-12 misc/optget.c: reset opt_info.offset on error 339 string/strtoi.h: strton() '.' multiplier only if m>1 340 string/fmtesc.c: add unadvertized FMT_PARM for FMT_SHELL 34105-09-09 string/fmtesc.c: fix FMT_SHELL logic w.r.t. [$`] 34205-08-11 string/strerror.c: fix { sys_errlist sys_nerr } prototypes 34305-08-03 sfio: snarf sfvaprints sfaprints 34405-07-21 port/astconf.c: retain most recent synthesized lookup 34505-07-20 sfio/sfsetbuf.c: default file io size now 64K on all systems 34605-07-17 ccmap*: add microfocus cobol EBCDIC_U 34705-06-29 regex/regcomp.c: fix the A & B inline flag logic 34805-06-15 include/recfmt.h: add fs format flag to fmtrec() 34905-06-14 error.c: add ERROR_OPTIONS { break count match } 35005-06-07 features/stdio: drop FEATURE/limits to fix bootstrap circular dep 35105-06-02 features/*,Makefile: drop vestigel iffeio.h bootstrap workaround 35205-05-31 string/fmtbuf.c: unlock (spin) before each return -- doh 35305-05-30 sfio/sfpkrd.c: work around macos 10.4 recv(MSG_PEEK) bug 35405-05-27 regex: add REX_NEST (?%[S.][T.][OT]) 355 magic.tab: ammend bsd db magic 35605-05-23 regex: REX_NEST (?%[D.][E.][L.][Q.][oc]...) 35705-05-21 regex: state.fold[] is now locale specific -- doh 35805-05-19 regex: add REX_NEST (?%\\()<>[]""...) %(...) nested match 35905-05-15 recfmt.h: add recstr() reclen() fmtrec() 36005-05-13 optget.c: allow boolean options to take numeric values 36105-05-12 recfmt.c: add to recfmt.h, adjust Recfmt_t encodings 36205-04-30 sfio: add sfmaxr(), default 64K 36305-04-22 comp/omitted.c: fix magic() logic for files < 512 bytes 36405-04-20 cdt: snarf update from kpv; void* Dt_t.user added 365 misc/error.c: library => ERROR_LIBRARY 36605-04-19 regex/regcomp.c: handle REG_SHELL [^...] == [!...] 36705-04-11 tm/tmxscan.c: handle yyy.mm.dd[-+.]hh.mm.ss.nnnnnn 36805-04-07 regex/regnexec.c: fix out of bounds boundary check -- ouch 369 features/align.c: add jmp_buf to the alignment mix (ia64) 370 vmalloc/vmhdr.h: add jmp_buf to the alignment mix (ia64) 37105-03-31 misc/optget.c: fix option { - _ } separator matching 37205-03-30 misc/glob.c: eliminate superfluous GLOB_NOMATCH stat() calls 37305-03-24 port/astwinsize.c: include <sys/ioctl.h> if possible 37405-03-23 string/ccmap.c: add ebcdic-m mvs cobol table 37505-03-11 comp/omitted.c: handle utime[s](const,const) 376 comp/conf.tab: fix linux PID_MAX probe 37705-03-10 comp/setlocale.c: LC_* value "" => unset -- doh 378 misc/optget.c: reorder _PACKAGE_astsa code for msgcc 37905-03-08 misc/optget.c: delete leading space in STYLE_nroff output 38005-03-07 sfio/sfhdr.h: drop extern _sfdscan -- clashes with sfvscanf.c static 38105-03-01 tm/tminit.c: add tmlocaltime() for tzset() getenv() override workaround 38205-02-20 features/tvlib: tmsettimeofday only for systems that have settimeofday 383 features/float: fix mvs.s390 NaN tests 38405-02-18 tm/tmxmake.c: fix <0 west of GMT bug that warped to 1800's -- wow 38505-02-11 port/mnt.c: handle lynxos MOUNTED=/etc/fstab 38605-02-08 features/float,sfio.h,sfcvt.c,sftable.c: add INF and fix NAN 38705-02-04 features/lib: add _std_strtol (for lynxos) 388 include/ast_std.h: add _std_strtol tests 389 comp/strtod.c: #define S2F_function strtod 390 misc/signal.c: fix ancient bsd SV_INTERRUPT vs. SV_ABORT clash 39105-01-11 sfio/sfmove.c: try to seek(fr) when fw==0 392 comp/omitted.c: intercept utimes() too 393 comp/omitted.c: add DOSPATHVARS env var path value conversions 394 features/tvlib,tm/tvtouch.c: check for utimets() 395 misc/optget.c: handle '-' or '_' option word separators 396 sfio/_sfopen.c: allow stream mode changes after initialization 397 sfio: sync with kpv: SF_SYNCED fix for ksh input loss bug 39805-01-09 tm/tmxfmt.c: fix %6N for n<100000000 39905-01-08 regex/regcomp.c: conj() => con() to avoid C99 clash 40005-01-05 tm/*: fix { %U %V %W } logic -- my head hurts 40104-12-30 tm/tmxtime.c: fix tm_isdst<0 loop 40204-12-23 vmalloc/vmbest.c: fix vmresize bug that didn't 0 new data 40304-12-19 misc/optget.c: broaden - long option match 40404-12-09 string/strtoi.h: fix terabyte 't' suffix math 405 string/strmatch.c: flush cache on locale change 40604-12-01 tm/tmsleep.c: add 407 tv.h,tv*.c,tv.3: move from pax 408 tmx.h,tmx*.c,tmx.3: add high resolution tm(3) counterparts 409 features/lib: add *another* sgi linux.ia64 memccpy bug check 41004-10-31 Makefile: __OBSOLETE__ now computed <6 months ago year>0101 411 ccode.h,ccmapid.c: add ccmaplist(Ccmap_t*) iterator 412 option.h,optesc.c: add 3rd arg, 1 => quote '?' too 413 misc/magic.c: fix bug that terminated `string \0a' at \0 414 misc/magic.c: handle vcodex() via decompose() 415 misc/magic.tab: add vcodex magic 416 features/stdio: handle _LARGEFILE64_SOURCE -- oops 417 stdio/(fseek|ftell|fseeko|fsetpos|fgetpos|ftello).c: oops^2 41804-10-28 string/swapop.c: size==-4 => size=4 and extend op=3 to op=7 419 tm/tmfix.c: fix tm_mon<0 logic 42004-10-22 tm/tmdate.c: handle 'final day feb 2004' 421 port/astlicense.c: add query=all|id|${...}${...} 422 port/astlicense.c: "free" => "mit" 423 comp/omitted.c: revert to the open source license 424 string/stropt.c: drop siz==0 => tab is hash table 425 include/sfio.h: incorporate <sfstr.h> 426 include/sfstr.h: drop 427 disc/sfstrtmp.c: drop -- use sfstrbuf() 42804-10-20 misc/magic.tab: update tar magic 42904-10-18 ufc-crypt.h,crypt_util.c: drop GPL code 430 crypt.c: add BSD code 431 pathpath.c: disable { $0 $_ $PWD } related root search 43204-10-01 normalize ident stamps 433 port/astlicense.c: add type=cpl -- yeah 43404-09-25 string/swapop.c: return op < size -- duh 43504-09-23 comp/spawnveg.c: :NOOPTIMIZE: -- volatile sometimes ignored 43604-09-21 comp/spawnveg.c: exec_errno_ptr is volatile -- duh 43704-09-14 tm/tmscan.c: add %| alternation and %& => tmdate() 43804-09-08 misc/optget.c: add :!value: omitted optional arg value 439 misc/optget.c: fix --noNAME ambiguous option logic 44004-08-26 string/strperm.c: add who^mode to propagate least restrictive up 441 astmath.c: add { frexpl ldexpl } checks for ast.req 442 port/astlicense.c: ignore first option if non-assignment 443 include/ast_dir.h: move d_fileno map before struct defs -- duh 44404-08-24 vmalloc/vmbest.c: add {VM_region} VMCHECK=+r for region segment checks 445 misc/recfmt.c,include/recfmt.h: add 44604-08-23 vmalloc/vmbest.c: add {VM_primary VM_secondary} VMCHECK=-s for primary 447 features/common: punt to <stdarg.h> for unknown va_list 44804-08-11 vmalloc: sync _UWIN libposix hooks 44904-07-27 features/common,features/limits.c: ULL suffix for unsigned _ast_int8_t 45004-07-22 include/ast.h,comp/eaccess.c: add eaccess() for effective access() 45104-07-19 comp/open.c,sfio/_sfopen.c: { O_RDONLY O_WRONLY O_RDWR } are values 45204-06-28 misc/error.c: check level after error_info.auxilliary 45304-06-24 string/strmatch.c: strgrpmatch() match[] now variable size array 45404-06-17 features/common: change _DLL null define to (the standard ast) 1 45504-06-11 misc/optget.c: allow optional [-|+|--|++] optstr() option prefix 456 misc/optget.c: reset optstr() state on 0 return 457 misc/optget.c: text()=>textout() linux.ppc symbol hijack workaround 45804-05-31 sfio/sfreserve.c: no side buffer if user buffer is large enough 45904-05-27 string/fmtbuf.c: handle one concurrent buf > sizeof(buf) 46004-05-24 regcomp.c: fix no-advance initialization 46104-05-05 conf.tab,conf.sh: update to align with standards 462 magic.tab: ms suffix update 46304-05-04 port/lcgen.c: fix territory initialization 46404-04-15 tm/tmdate.c,include/tm.h: fix specific and ordinal days 46504-04-08 astconf: retain { HOSTTYPE LIBPATH LIBPREFIX LIBSUFFIX } strict vals 46604-04-07 vmalloc/vmbest.c: fix alpha tiny block bug 467 vmalloc/malloc.c: re-enable on alpha 46804-03-30 tm/tminit.c: GMT => UCT only if tz.daylight not defined 46904-03-25 vmalloc/malloc.c: _AST_std_malloc=1 for __alpha 470 path/pathprobe.c: per-user probe dir => $HOME/.probe/$HOSTTYPE 47104-03-23 regex/reglib.h: fix isw*() redefines 47204-03-17 features/stdio: no __FILE override for __CYGWIN_ (sys/reent.h clash) 473 sfio/sfhdr.h,sfio/sfsetbuf.c: lower sfmove() default buf size 4x 47404-02-29 comp/omitted.c: move env trace after PATH fixup 475 comp/omitted.c: cygwin spawn _P_DETACH => _P_NOWAIT+setpgid(pid,0) 476 misc/optget.c: fix html mailto: match 477 port/astlicense.c: add type=test for fixed 2001 date 478 features/float: check local NaNQ first 479 vmalloc/vmhdr.h: fix _vmextern_ vm_truncate return type 480 misc/magic.tab: add elf s390 index=22 48104-02-26 vmalloc: VMCHECK a:assertions c:arena-check w:warn-instead-of-abort 482 sfio/sfvscanf.c: fix extf arg selection 48304-02-24 features/dirent: set nodefine to avoid ast_std.h _typ_off64_t undef 484 disc/sfkeyprintf.c: only case pattern must be ()[] balanced 48504-02-14 include/sfio_t.h: add SF_DCDOWN, SFDCNEXT(), SFDCPREV() 48604-02-13 string/strmatch.c: fix bug that didn't save one-time sub[] size 487 vmalloc: -g: export VMCHECK=1 enable malloc/free checks 488 vmalloc: -g: free(0) to check and disable malloc/free checks 489 vmalloc: -g: free(1) to check and enable malloc/free checks 49004-02-11 Makefile: add :P=A: to conf and lcgen exec for cross-compile 491 regex: use MBSIZE() instead of mbsize() to grab 1 char on err 492 vmalloc/vmbest.c: updated to do more comprehensive DEBUG tests 49304-02-04 sfio/sfraise.c: add sfraise(0,a,b) to iterate over all streams 49404-02-01 vmalloc/vmbest.c: _BLD_DEBUG free(0) checks the arena 49504-01-31 features/vmalloc: fix typo that missed _mmap_zero 49604-01-23 string/strerror.c: handle real strerror() return value overwrite 49704-01-11 path/pathpath.c: fix size vs. sizeof(buf) typo 49803-12-22 misc/magic.tab: dos EXE tweaks 49903-12-05 vmalloc: sync with kpv, adding exceptf announcements 50003-12-04 port/astlicense.c: fix expand() loop sentinel bug 50103-12-02 include/ast.h: mbchar() advances by 1 on mbtowc() error 502 misc/fts.c: increase MINNAME to 32 50303-11-21 vmalloc/vmbest.c: export VMCHECK=1 to enable $(CC.DEBUG) vmcheck() 504 vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT 505 misc/magic.c: add { cobol copybook pl1 } and suffix preference 50603-11-12 features/stdio: drop cuserid,getopt for SUSV3 50703-11-11 vmalloc/*: merge kpv update -- this should stomp the compaction bug 50803-10-23 comp/iconv.c: fix sfreserve lock fallback 50903-10-20 sfio/_sfopen.c: add to allow user sfopen() intercept 51003-10-17 regnexec.c: fix exec time REG_LEFT, \x.... => wctomb() 51103-10-12 string/strtoi.h: fix strton '.' overconsumption 51203-10-12 comp/iconv.c: identity is always (iconv_t)0 51303-10-09 string/fmtesc.c: fix FMT_SHELL to check for all shell magic chars 51403-10-01 port/astlicense.c: unknown authors copied verbatim (instead of ignored) 51503-09-30 string/chresc.c: handle \u..., \x... consumes all trailing hex digits 516 string/stresc.c: \u... and \x... > UCHAR_MAX => wctomb() 51703-09-29 fnv.h: add 51803-09-23 modedata.c: table is for external modes, so no arch specific hacks 519 optget.c: fix option prefix match translation bug 520 optget.c: add `<length> <name>=<value>\n' to optstr() 521 features/lib: add memcmp() test for sgi optimzation bug 52203-09-22 regex.h,regcomp.c: add regncomp() 523 regclass.c: fix for loop dangling ; in regaddclass() 52403-09-20 sftable.c,sfvprintf.c: fix SFFMT_CHAR handling to match extf api 52503-09-19 sfmode.c: update release to kpv's 52603-09-17 regcomp.c: add pedantic backref error checks 52703-09-16 regnexec.c: exec time REG_LEFT => don't advance past initial position 528 regclass.c: add regaddclass() for user defined [:class:] 529 regexec.h: REG_VERSION_N2X, add redisc_t {re_map} ccode map 530 regstat.c: add regstat_t 53103-09-11 optget.c: --n:=v sets opt_info.assign=':', opt_info.number enabled 53203-09-09 disc/sfkeyprintf.c: *pn on lookup is arg separator; lookup "" arg too 53303-09-05 optget.c: [f:l*?] preserves user long name past '*' in opt_info.name[] 53403-09-03 sfstr.h: add sfstrpend() for #pending bytes in read buffer 53503-08-25 regex: add REG_FIRST, optimize bm 536 features/lib: _AST_no_spawnveg==1 falls back to fork/exec 53703-08-22 features/stdio,stdio/asprintf.c,stdio/vasprintf.c: add 53803-08-21 path/pathnative.c,path/pathposix.c: interix updates 539 features/botched: add cygwin _stat => _stat64 54003-08-15 include/ast.h: map out bsd strmode() 541 features/common: add interix _ast_intmax_t workarounds 542 misc/fs3d.c: 3d mount test now uses "" instead of NiL (or cygwin dumps) 54303-08-11 string/fmtesc.c: fix optional quoting checks 544 tm/tmdate.c: fix > 1 year of seconds arithmetic 545 tm/tmfix.c: fix leap year adjustments 54603-08-01 features/lib: beef up sock_peek test for interix 54703-07-29 features/float: add -lm to frexp... test 548 Makefile: fix -lm astmath test sense 54903-07-26 features/mem.c: favor _mem_sbrk over _mem_mmap_* 55003-07-22 vmalloc/vmbest.c: fall back to sbrk() if mmap() fails 551 features/mem.c: _mem_sbrk means sbrk() and brk() work 55203-07-17 regex/regcomp.c: fix bug that treated KRE X{n,m} like {n,m}(X) 553 misc/magic.c: check MAGIC_VERBOSE for all load() messages 55403-07-14 misc/optget.c: handle [...]{[...]\f...\f...} 55503-06-21 misc/sigcrit.c: block SIGCHLD if _lib_sigprocmask || _lib_sigsetmask 556 comp/spawnveg.c,sfio/sfmode.c: use sigcritical() SIG_REG_* macros 557 comp/spawnveg.c: drop ENOEXEC logic 558 vmalloc/*: snarf kpv KPVCOMPACT() fix 559 vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT (just in case) 560 string/strdup.c: drop __strdup() etc. intercepts -- malloc gets it 561 features/mem: define _mem_method and _mem_* possible values 562 vmalloc/malloc.c: _AST_mem_method==_mem_* to force mem get method 563 sfio/sfputr.c: __ia64 memccpy is bogus -- how many tries do they get? 564 path/pathshell.c: verify abs path and access(path,X_OK) -- duh 565 vmalloc/vmhdr.h: add private _Vmessage() for non-sfio ASSERT() 566 port/astconf.c: fix bug that always returned the minmax value 56703-06-11 comp/*.c: reorder macro hding for mvs.390 and <ast_map.h> 568 features/vmalloc: add _lib_brk and _lib_sbrk verification 569 include/ast_std.h,etc.: add _map_malloc for malloc => _ast_malloc 570 comp/conf.sh: fix SI_* and *_SI_* macro redefs 571 ast.h: VMDEBUG or _BLD_DEBUG enable <vmalloc.h> and VMFL tracing 572 vmalloc/vmtrace.c: _PACKAGE_ast __FUNCTION__ is a string 573 vmalloc/vmtrace.c: set trace file fd FD_CLOEXEC 574 vmalloc/vmbest.c: set /dev/zero mmap fd FD_CLOEXEC 575 features/mmap: fix ancient read() vs. mmap() time arithmetic typo 576 vmalloc/malloc.c: _AST_std_malloc==1 to force standard malloc 57703-06-09 comp/omitted.c: add _imp__FUNCTION sybols for __CYGWIN__ static link 578 vmalloc/vmbest.c: handle systems with sbrk() but no brk() 57903-06-04 port/astconf.c: drop non-standard diagnostics 58003-06-03 comp/conf.sh: rework symbol collision logic 58103-05-30 conf.tab,conf.sh,astconf.c: add <sys/systeminfo.h> sysinfo() SI_* 58203-05-29 ccode.h: rework for extensibility, drop obsolete mematoe(), memetoa() 58303-05-28 regex/*: recode to use isw*() directly when needed, is*() otherwise 58403-05-27 features/vmalloc: fix _std_malloc test 58503-05-25 misc/optget.c: fix optstr() ???* internal options 58603-05-24 misc/optget.c: fix (ancient) argv null dereference 58703-05-23 comp/getcwd.c: don't intercept on _WINIX -- unreliable st_ino 58803-05-22 sfio/sfsprintf.c: n<0 => don't append '\0' 58903-05-18 misc/fts.c: re-stat FTS_DP to update nlink/times 590 misc/fts.c: add FTSENT.stack to eliminate getlist() recursion 591 regex/ucs_names.h: use "..." catenation to placate some cc's 59203-05-11 string/strtoi.h: handle "-" "+" "0x" "11#" 59303-05-09 vmalloc/vmbest.c: large memory allocation tweaks 59403-05-06 misc/optget.c: fix getopt_long() prefix==1 bug that missed short flags 59503-04-27 comp/system.c: handle <ast_map.h> 59603-04-24 vmalloc/vmmopen.c: drop dup <unistd.h> 59703-04-21 tm/tmdate.c: fix next hour/min logic 59803-04-15 vmalloc/malloc.c: intercept __malloc() along with __libc_malloc() 599 string/strdup.c: intercept __strdup() along with __libc_strdup() 600 features/mmap: consolidate from features/(lib|sfio|vmalloc) 601 add _NO_MMAP==1 to disable all mmap()/munmap() calls 602 path/pathposix.c: add 60303-04-14 comp/setlocale.c: fix debug_mbtowc() return value for *s==0 || n < 1 604 comp/iconv.c: fix error return errno values 60503-04-11 misc/stk.c: fix stkgrow() realloc bug 60603-04-05 string/tok.c: support readonly single token input strings 607 disc/sfdcdio.c: fix F_DIOINFO and FDIRECT #ifdef's 608 include/ast_std.h: allow _LARGEFILE64_SOURCE on __hppa 609 features/common: fix `tst _foo_' => `tst foo_' typo 610 features/float: fix `tst _foo_' => `tst foo_' typo 611 features/float: add FLTMAX_(UINTMAX_MAX,INTMAX_MAX,INTMAX_MIN) 612 comp/omitted.c: fix pathconf => _pathconf => _ast_pathconf loop 61303-04-03 features/float: add _ast_no_um2fm: no usinged intmax => floatmax cast 614 vmalloc/vmbest.c: add getenv("VMCHECK") to initialize Vmcheck 61503-03-28 include/ast_dir.h: add D_TYPE; { D_FILENO D_TYPE } must be #ifdef'd 616 misc/fts.c|getcwd.c|glob.c,preroot/getpreroot.c: add D_FILENO #ifdef's 617 Makefile: make sure _BLD_ast is defined for all compiles 61803-03-27 ast_vfork.h: generate from features/vfork to pick up headers/pragmas 61903-03-25 comp/omitted.c: drop free() of live environ 620 path/pathshell.c: allow trailing .exe -- pox on that 621 string/strtoi.h: fix bug leading 3 digits before thousands sep bug 622 string/(fmt|str)[gu]id.c: we know root when we see it 62303-03-24 misc/optget.c: handle : and ? in := default value 62403-03-21 ast_std.h: drop all spawn*() but spawnveg() 625 obsolete/spawn.c: add for dropped spawn*() 626 features/lib: _use_spawnveg if spawnveg() is a win over fork()/exec() 627 features/lib: drop NutForkExecve() and _map_spawnve 628 features/lib: fix memccpy test to clean up /tmp droppings 629 comp/spawnveg.c: call posix_spawn() if implemented 630 comp/omitted.c: add spawnve() intercept 631 comp/getoptl.c: set getopt_long() optind even if no options 632 tm/tmfmt.c: add %Q<delim>recent<delim>distant<delim> 633 misc/optget.c: fix trailing '*' for option and option args 634 sfio/sfmode.c: getenv("_AST_SFIO_OPTIONS") [,]SF_LINE[,] for fd {0,1,2} 635 vmalloc/*: kpv sync for uwin build independent of libast 63603-03-18 port/astconf.c: switch to dynamic string values (saves 7K data/bss) 637 string/strmatch.c: switch to dynamic regex cache (saves 3K data/bss) 638 regex/regcoll.c,ucs_names.h: initialize rw tables from smaller ro data 639 features/lib: add vfork test for passing SIG_IGN across exec 640 features/lib: add spawn test for passing SIG_IGN across spawn 64103-03-17 comp/omitted.c: unlink() renames to .deleted dir in case file open 642 sfio/sfpopen.c: handle mode "" for spawn with no pipe 643 features/float,comp/frexp.c,comp/frexpl.c: add pow2() table alternative 64403-03-12 features/lib: fix linux.ia64 memccpy() tests -- now its their turn 645 features/vmalloc: fix /dev/zero test 646 features/align: _ast_intmax_t and _ast_fltmax_t join the union 647 misc/stk.c: fix struct frame size to align data 648 disc/sfdcdos.c: change sfslen() => sfvalue(f) 64903-03-10 misc/optget.c: handle [f\f:x:lll\f?ddd] 65003-03-07 port/astconf.c: uninitialized CONFORMANCE + POSIXLY_CORRECT => standard 65103-03-05 comp/omitted.c: make sure at least /bin is in PATH to find cygwin dlls 65203-03-02 path/pathshell.c: write access to /bin is effectively root 65303-02-28 features/float: add (FLT|DBL|LDBL)_U?(LONG|LONGLONG|INTMAX)_(MIN|MAX) 65403-02-25 features/lib: change vfork() test to use _exit() instead of exit() 65503-02-23 include/error.h: update ERROR_VERSION for error_info.number space 65603-02-22 comp/conf.sh: wrap ksh check in eval to avoid premature exit 65703-02-21 misc/fts.c: verify chdir(..) to avoid malicious dir rename() 65803-02-19 string/strtoip4.c: isspace() instead of ' '||'\t' 65903-02-17 regex/regcomp.c: fix stats.l REX_REP logic that botched REX_BM 66003-02-13 string/base64.c: handle catenated encodings 66103-02-11 features/libpath.sh: change LIBPATH to <dir>[:<env>[:<pat>]][,...] 66203-02-07 path/pathfind.c: allow "/dev/null" to be PATH_REGULAR 66303-02-06 include/ast.h,fmtquote.c: add FMT_ALWAYS|FMT_ESCAPED|FMT_SHELL|FMT_WIDE 66403-02-05 tm/tmdate.c,tm/tmword.c,string/strelapsed.c: '_' treated like ' ' 66503-02-01 string/strelapsed.c: handle ps style [day-][hour:]min:sec 66603-01-31 port/astlicense.c: fix author=* match 66703-01-30 include/tm.h: add tmisleapyear() macro 66803-01-29 comp/getopt.h,comp/getoptl.c: add gnu getopt_long(), getopt_long_only() 669 include/ast_getopt.h: for non-gnu part of comp/getopt.h 670 include/ast_std.h: include <ast_getopt.h> instead of <getopt.h> 67103-01-28 ast.h,string/base64.c: add base64encode() and base64decode() 672 path/pathfind.c: verify S_ISREG() 67303-01-24 path/pathexists.c: fix abs dir bug and deal with case ignorance 67403-01-23 path/pathpath.c: honor PATH_ABSOLUTE for the easy case too 67503-01-22 path/pathprobe.c: fix search to find both the probe script and command 67603-01-17 misc/magic.tab: application/zip => appplication/(gzip|pzip|zip) 67703-01-14 misc/optget.c: change href="" to href="." 67803-01-10 include/ast_std.h: strtold() import hackery for static __CYGWIN__ 67903-01-03 include/regex.h,regex/regcomp.h: add REG_SHELL_GROUP 680 include/ast.h,string/strmatch.c: add STR_GROUP for REG_SHELL_GROUP 68102-12-15 include/error.h: errorcontext => Error_context_s (compatible til 2004) 68202-12-06 misc/sigdata.c: add NoF(sigdadata) -- why nmake was uninterruptable! 68302-12-03 comp/omitted.c,features/omitted: handle cygwin alarm() return botch 68402-11-27 misc/swapop.c: op=3,size=4 => op=7 685 string/strlcat.c,strlcpy.c: fix uwin decl clash 68602-11-26 sfio/sfvprintf.c: fix sfsprintf() '\0' termination bug 68702-11-22 misc/glob.c: move static struniq() to libast extern 688 string/fmtversion.c,include/ast.h: add fmtversion 68902-11-18 string/strncopy.c: add 690 misc/magic.tab: list size for magicid.h magic 69102-11-14 sfio/sfvprintf.c: add %#c for C escapes 692 include/error.h: add ERROR_NOTIFY context flag for builtin commands 69302-11-11 string/strtoi.h: add S2I_size for strnto*() size_t 2nd arg 694 sfio/sfstrtof.h: add S2I_size for strnto*() size_t 2nd arg 695 comp/putenv.c: add setenv() and unsetenv() wrappers for setenviron() 69602-10-31 path/pathfind.c: add dir of including file to the pathinclude() list 697 misc/optesc.c: add 69802-10-30 string/strtoip4.c: set next char pointer even on error 69902-10-29 comp/resolvepath.c: add (size_t version of realpath()) 700 misc/mime.c: fix mimehead() to ignore null content values 70102-10-28 misc/glob.c: add GLOB_STARSTAR for /**/ and GLOB_NOTDIR optimization 70202-10-27 string/struniq.c: add 70302-10-23 features/common: fix off-by-one loop check 70402-10-18 include/ast_std.h: avoid off_t,ftruncate,lseek,truncate redefinitions 70502-10-17 misc/mime.c: handle type/* match, fix bogus header parse 70602-10-04 sfio/sfstrtof.h: S2F_static <0:export =0:private >0:static 70702-10-02 features/common: don't define _WIN32; define _WINIX => unix on windows 708 features/tty: finally stomp the bsd _POSIX_VDISABLE redefinition 709 misc/fastfind.c: add more specific findwrite() error messages 710 comp/omitted.c: fix cygwin utime() to update st_ctime 711 comp/strtol.c,strtoul.c: __CYGWIN__ static link workaround XXX 712 string/fmtls.c,fmttime.c: tmform() => tmfmt() 71302-09-22 port/astconf.c: return values in fmtbuf() buffer instead of stack 714 port/mnt.c: don't set MNT_REMOTE for win32 ?:\* paths 715 sfio/sfvscanf.c: _sfdscan() is library global (not static) 71602-09-21 path/pathkey.c: add tool arg for mamake compatible hash 717 features/fcntl.c: handle iffe _hdr_lcl_* => _lcl_* change 71802-09-15 comp/conf.sh: fix enum vs. macro test 719 cdt: kpv sync 72002-09-11 ast.h,features/common: move _WIN32 macro init to features/common 721 features/common: enable __EXTERN__ and __DEFINE__ for _WIN32&!_UWIN 722 features/float: add -lm to _ast_*_nan_init tests 723 vmalloc: kpv sync with vmresizef => vmgetmem 724 features/iconv: must have both <iconv.h> and iconv_open()! 725 features/vmalloc: alloca test must compile *and* link 726 sfio/sfvscanf.c,sfstrtof.h: add flag arg to char get, fix NaN loop 72702-09-10 vmalloc/vmhdr.h: enable getpagesize() and sbrk() prototypes 728 features/fcntl.c: enable mmap64() prototype 729 include/ast_windows.h: windows.h wrapper with ast namespace workarounds 73002-09-07 misc/mime.c: fix quoted value parse bug that ate the whole line 73102-09-05 features/vmalloc: add free() to _std_malloc test 732 include/ast.h: NoF(x) now defines _DATA_x for !_BLD_DLL too 733 tm/tmlocale.c: { C POSIX en } == unix dadgummit 73402-08-29 path/pathfind.c: initialize Dir_t.next=0 73502-08-28 uwin/rint.c: update 736 features/libpath.sh: "bin" is now the default value 73702-08-22 vmtrace.h: add for debugging 73802-08-20 misc/magic.c: convert to use <cdt.h> 739 vmalloc/vmresizef.c: add for generic discipline resizef default 740 string/strelapsed.c: allow long time component names 74102-08-19 misc/optget.c: add `.fp 5 CW' to --nroff output 742 string/(fmtfs|fmtuid|fmtgid|strgid|struid).c: convert to use <cdt.h> 743 include/dt.h,cdt/dtnew.c: add for dtopen() in specific vm region 74402-08-13 comp/omitted.c: fix bzero logic for e.g. unixware.i386 745 include/ast.h: add fmtbase->fmtbasell; swap in 2003-09-01 74602-08-12 regex/regnexec.c: fix REG_MINIMAL REX_DOT mb bug 74702-08-08 features/iconv: <ast_common.h> instead of <sys/types.h> <ast_common.h> 74802-08-07 regex/regcomp.c: recognize anchors in BRE subexpressions 74902-08-06 comp/iconv.c: handle win32 cpNNNN == windows-NNNN aliases 75002-08-05 cdt/*: sync with kpv src 75102-08-02 features/iconv: include sys/types.h for ast_types.h 75202-08-01 misc/magic.c: magic file "." names the default 753 misc/magic.c: handle addr type (from irix string) 754 features/lib: move malloc tests to features/vmalloc 755 features/vmalloc: snarf tests from features/lib 756 vmalloc/*: sync with kpv src 757 comp/libc.c: dropped -- __libc_* intercepts moved to vmalloc/malloc.c 75802-07-30 features/lib: handle __libc_malloc() in _std_malloc test 759 vmalloc/malloc.c: add gnu pvalloc() 760 features/vmalloc: fix alloca check 76102-07-29 features/limits.c: handle netbsd guards 76202-07-27 sfio/sfpoll.c: handle rw pipes 76302-07-25 features/iconv: include ast_types.h for size_t in ast_iconv.h 76402-07-18 apply LARGEFILE64 header prototype clash patches 765 misc/optget.c: __EXTERN__ _opt_info_ instead of opt_info 76602-07-17 ast_std.h: memzero() now defaults to memset() instead of bzero() 76702-07-16 ast_std.h: add ast.env_serial 768 misc/setenviron.c: increment ast.env_serial 769 include/tm.h: tmset() now calls tminit() directly 770 tm/tminit.c: check ast.env_serial for env change 771 tm/tmfix.c: speed up for large values of tm_mday 77202-07-15 comp/fnmatch.c: fix memory leak caused by missing regfree() 773 comp/strstr.c: fix broken interpretation and implementation 774 comp/iconv.c: intercept (but no-op) null to and from buffer pointers 77502-06-27 ast_std.h: map _sysconf => _ast_sysconf for sun 77602-06-26 cdt,sfio,vmalloc: kpv sync -- is this ever easy? 77702-06-24 sfio: kpv sync, vfwscanf(),fputw() fix (wcslen(x)*sizeof(wchar_t)!!) 778 misc/fts.c: fix symlink chdir() optimzation bug 77902-06-11 sfio/sfwrite.c: string to file fix 780 Makefile: __OBSOLETE__==20020101 78102-06-01 regex/regcomp.c: REG_DELIMITED now consumes the delimiter 78202-05-31 regex/reglib.h,regcomp.c,regnexec.c: null subexpression fixes 78302-05-24 misc/fts.c: disable dir link counts in 3d 784 misc/magic.c: fix "*(mkfile)" sh pattern to "*@(mkfile)" 78502-05-20 regex.h,regex/regsubcomp.c,regex/regsubexec.c: add 786 regex/regsub.c: deprecate 78702-05-16 tm/tmfix.c: fix '60+n min/sec ago' bug for n min/sec after the hour 78802-05-14 regex/regsub.c: fix (^|x) null match early termination bug 78902-05-13 dir/dirlib.h: drop errant extern==__EXPORT__ 790 features/uwin: add uwin lib tests 791 uwin/*.c: check features/uwin for stubs 792 features/float: add nan representation generation 793 sfio/sftable.h: used _ast_*_nan_init for huge values 79402-05-09 misc/fts.c: fix virtual top to force ``child'' stat() 795 features/common: define va_copy() only if not in <stdarg.h> 79602-05-01 string/strtoip4.c: cisco inverted quad mask must have 4 parts 79702-04-30 misc/magic.tab: fix pzip version check 79802-04-19 string/strtoip4.c: handle cisco inverted quad mask n.n.n.n/i.i.i.i 79902-04-18 misc/fts.c: add chdir() verification stat() optimizations 800 path/pathkey.c: check PROBE_ATTRIBUTES for list of vars 80102-04-12 port/astlicense.c: type=open tweak, fix author list spacing 80202-04-11 regex/regcomp.c: check for pattern number overflow 80302-04-05 tm/tmfmt.c: add %u 80402-04-04 sfkeyprintf.c: fix %c numeric value 805 path/pathpath.c: check plain path first -- duh 80602-04-03 misc/fts.c: fix (FTS_PHYSICAL|FTS_NOSTAT) stat optimizations 807 ftwalk.c: only clear FTW_DELAY if FTW_CHILDREN 808 ftwalk.h: add FTW_NSOK for FTW_DELAY 80902-03-29 ast.h: drop strerror() prototype -- already in <ast_std.h> 810 features/stdio: check for _SFIO_H redundant _Sfstd* declarations 81102-03-26 misc/glob.c: fix GLOB_LIST gl_flags values 81202-03-24 port/mnt.c: update bsd fstype name and mount option logic 81302-03-23 Makefile: add ast_wchar.h to the .check.hdr list (for mamake) 81402-03-17 features/stdio: hack around g++ 3.* clashes 815 Makefile: add ast_nl_types.h to the .check.hdr list (for mamake) 816 string/strtoip4.c: fix validity check bug that only checked last part 81702-03-14 misc/optget.c: fix --keys to not expand inline \f...\f 81802-03-12 port/astlicense.c: add type=free 819 path/pathaccess.c: sibling ".." search ignores relative dirs 820 sfio/sfvscanf.c: sfstrtof get() must return 0 on eof 82102-03-11 path/pathexists.c: check path by pairs checking {ENOTDIR,ENOENT} 82202-02-14 features/float: copy local min/max macros to avoid printf roundoff 823 features/wchar: include <ast_common.h>, not <ast_std.h> 824 misc/magic.c: match[]=>matches[] to fix K&R match() macro conflict 825 include/vmalloc.h: include <stdlib.h> for !_PACKAGE_ast 826 uwin/mini.sym: add sprintf (now required by features/common) 827 regex/regnexec.c: truncate wide chars for <ctype.h> functions 828 Makefile: fix MAM ast_common.h sequencing bug by making it first 829 cdt/dthash.c: fix DT_DELETE memory leak (DT_DETACH typo) 830 cdt/dthash.c: fix DT_DELETE double free (dt->data->here typo) 831 regex/regcomp.c: fix recomb() to reject RE with backref 832 features/iffeio: explicitly generate stdio.lcl 833 stdio: add {fcloseall,f(get|put)s_unlocked,fmemopen,getdelim,getline} 834 tmmake,tmtime: allow negative time_t if native localtime/gmtime do 835 tmdate: allow years before 1969 836 fmtfmt: add 837 include/ast.h: add { PATH_TOUCH_CREATE PATH_TOUCH_VERBATIM } 838 Makefile: add std/*.h for std header iffe overrides 839 comp/iconv.c: fix non-C win32 sfreserve() loop 84002-02-11 features/common: separate long long / long double tests 841 features/common: verify printf handles long long / long double 84202-02-02 include/ast_std.h,sfio/sfhdr.h: drop _hdr_locale tests -- always on now 843 include/ast_std.h: trust _UWIN <unistd.h> 84402-01-31 port/mnt.c: add aix options field 84502-01-30 comp/strstr.c: add for ancient s5 846 stdio/_flsbuf.c: only on systems that transfer to native (e.g., uwin) 847 string/strtoi.h: cat min/max error return values 84802-01-28 features/tty: add cf[gs]et[io]speed macros for <termio.h> 849 comp/rename.c: punt to (ancient) /usr/lib/mv_dir on EISDIR 85002-01-24 sigcrit.c: fix SIGCLD!=SIGCHLD interrupt loop 851 sfvprintf.c: convert fast io macros to functions for uts.390 cc 852 string/strtoi.h: drop #pragma prototyped for standalone sfio 853 sfdcsubstr.c: rename from sfdcsubstream.c for 14 char fs 85402-01-22 execlp,execvp,execvpe,spawnlp,spawnvp,spawnvpe: fix __EXPORT__ 855 spawnlp,spawnve,spawnvp,spawnvpe: handle ms mode arg -- barf 856 sftable.c: ifdef hacks for _WIN32&_ALPHA_ fp exception 857 _stdfun.c: add _UWIN&_ALPHA_ iob map 85802-01-18 sfio/sfstrtof.h: drop #pragma prototyped for standalone sfio 85902-01-17 features/hdr: don't include <stddef.h> after it doesn't check out! 86002-01-16 misc/magic.c: add version type for YYYYMMDD or [a.][b.]c.d 861 misc/magic.c: recode mime %s parse -- sensible and no buffer overflow 86202-01-15 misc/magic.tab,magicid.h: add generic binary magic number and header 86302-01-12 tm/tmlocale.c: override win32 default date for {C,POSIX,en} locales 864 comp/omitted.c: fix cygwin workaround logic bugs 86502-01-09 stdio/fseeko.c,ftello.c: add from UNIX98 86602-01-08 comp/conf.sh: use $cc instead of cc 86702-01-07 string/strlcat.c,string/strlcpy.c: add bsd api 86801-12-18 comp/conf.tab: fix LFS_CFLAGS default for sun _CS_LFS_CFLAGS botch 869 features/common: add hdr stdarg test 870 tm/tmdate.c: handle YYYY/MM/DD 87101-12-10 misc/magic.tab: add generic 0x00010203 binary magic 87201-12-03 path/pathprobe.c: return HOME relative path if readonly/non-suid fs 87301-11-30 misc/optget.c: add simple cache for repeat offenders (like ksh read) 874 sfio/sfhdr.h: preserve errno across SFMMSEQON-SFMMSEQOFF 87501-11-29 magic.tab: fix GIF version number listing 87601-11-28 string/fmtbase.c: p!=0 => base always included in output 87701-11-26 misc/fts.c: empty path is an error 87801-11-14 misc/optget.c: fix --?+SECTION queries to include paragraphs 87901-11-20 regex/regnexec.c: fix REG_MINIMAL character class match bug 88001-11-19 features/lib: retain _lib_confstr for all solaris releases 88101-11-16 comp/setlocale.c: fix !_lib_setlocale typo 88201-10-31 regex/ucs_names.h: add string catenation to keep line length low 883 misc/fastfind.c: handle gnu slocate db read 884 misc/optget.c: add --?+SECTION queries 885 comp/fnmatch.h: add FNM_NOSYS 88601-10-30 tm/tmdate.c: fix cron specs when both wday and mday are specified 88701-10-20 misc/glob.c: fix bug that called \ trim() twice on same path 888 misc/glob.c: fix \ trim() bug that restored / to wrong position 889 string/fmtre.c: fix { ^ . $ } translations 890 misc/optget.c: use original string if translation fails -- duh 891 sfio/sfhdr.h: assume <errno.h> assigns proper atttibutes to errno 892 comp/regcmp.c: __ia64 workaround fixed by proper CC.DLL probe 893 comp/getdate.c: __ia64 workaround fixed by proper CC.DLL probe 894 features/lib: add lib getdate 89501-10-18 features/lib: check for strtod static link collision 896 features/float: add another signed cast for old bsd cc 897 features/wchar: add <stdlib.h> <stdio.h> before <wchar.h> for old bsd 89801-10-17 sfio/sfcvt.c: limit max precision to { FLT_DIG DBL_DIG LDBL_DIG } 899 sfio/sfcvt.c: fix %[aA] format to always have leading 0[xX]1. 900 sfio/sfvprintf.c: handle %C %lc %S %ls for wchar_t args 901 sfio/sfvscanf.c: handle %C %lc %S %ls for wchar_t args 902 string/fmtmode.c: fix bug that omitted trailing '\0' 90301-10-12 misc/optget.c: . => \&. for --??nroff 904 comp/wc.c: fix mbstate_t initialization typo 905 features/float: fix max integer / float loop termiation 906 features/float: fix LDBL_UINTMAX_MAX typo that did DBL_UINTMAX_MAX 90701-10-11 include/sfio.h: fix _Sfstd* import/export 908 features/common: fix _UWIN __DYNAMIC__() definition 90901-10-06 features/fcntl.c: { O_BINARY O_TEXT } default to 0 910 features/omitted: add for comp/omitted.c 911 sfio/sfopen.c: O_BINARY default for _WIN32&&!_UWIN 91201-10-05 misc/glob.c: fix `\(x/*' GLOB_NOMATCH bug that returned `(x' 913 misc/optget.c: fix localization lookup that didn't drop doubled : ? ] 91401-10-04 comp/setlocale.c: handle sizeof(wchar_t)!=4 in debug locale 915 comp/conf.sh: handle sytems where _SC_* is both an enum and a macro 91601-09-25 astconf: add LIBPREFIX 91701-09-20 features/common: add __DYNAMIC__() for dll externs 91801-09-19 cdt: kpv update 919 mb*() macros: update for ksh conversion, extend debug locale 92001-09-16 tm/tmlocale.c: add compiled in defaults for C locale 921 misc/glob.c: add gl_nextdir callback for GLOB_COMPLETE 92201-08-14 clarify _WIN32 vs. _UWIN vs. __CYGWIN__ 923 tminit: fix standard & daylight initialization 92401-09-11 pathnative.c: add for native fs representation 925 regex.h: fix regerror_t prototype 92601-09-04 regex/regnexec.c: fix REG_ICASE for multi-char collating elements 927 tm/tmlocale.c: fix old ascii LC_TIME load 928 locale*: add new LC_* categories 929 comp/omitted.c: add CYGWIN workarounds 930 features/lib: add CYGWIN workarounds 93101-08-11 features/common: some compilers have long long but no LL constants! 932 features/lib: add mmap64 implementation test (for linux.s390) 933 regex/regcomp.c: fix \ in [...] parse 934 setlocale: retain user locale spelling in setlocale() return value 935 features/limits.c: don't include ./limits.h -- duh 936 fmtesc: don't escape multibyte chars 937 tm/tmlocale.c: fix native C locale default 93801-08-08 features/float: some compilers (msdev) forget long long vs. double 93901-07-31 misc/optget.c: handle suboptions 94001-07-27 cdt.h: add DTDISC() 94101-07-17 iffeio.h: move to include for stdio bootstrap iffe workarounds 94201-06-25 regex: perl extensions added and tested 94301-06-21 misc/error: add ERROR_OPTIONS=prefix=string for message processing 94401-06-15 string/chresc: only 2 hex digits max for \xxx 945 regex/regsub: handle REG_SHELL ~(nnn) rhs backrefs 94601-06-11 regex: handle embedded \0 in pattern and subject string 947 regex: add (?nnn) for backrefs > 9 948 comp/fnmatch: add FNM_LEADING_DIR for gnu compatibility 949 features/float: _ast_flt_unsigned_max_t for bsd.i386 omission 95001-06-06 misc/optget.c: add o option for old ps,ar,tar with optional leading - 951 regex/regcomp.c: REG_LENIENT|REG_DELIMITED \<newline> => <newline> 952 regex/regcomp.c: REG_LENIENT \000 => NUL 95301-06-04 features/dirent: replace Makefile hack with iffe semi-hack 954 regex/regnexec.c: negation must also check REG_SHELL_DOT 95501-06-03 sprintf.c: change buf size from SF_BUFSIZE to INT_MAX 95601-05-31 glob: fix gl_fignore to ignore leading . by default 957 features/lib: add botch_d_ino_dirent64 for linux botch 95801-05-25 port/lc.tab: add a few missing language_territory's 95901-05-23 string/chresc: \C[.collation-element.] 960 fmtmatch,fmtre: update for <regex.h> syntax extensions 96101-05-21 regex: add perl extensions, unicode names for collation elements 96201-05-11 string/chresc: \e == \E == escape, \cX == control X, \x{..} == \x.. 96301-05-09 path/pathtemp.c: pathtemp(0,0,0,"/private",0) for mode S_IRUSR|S_IWUSR 964 port/touch.c: handle utime(2) EPERM to fix bug that truncated 965 regex: change REG_MINIMAL to avoid negation -- much faster now 96601-05-08 *.h: add some off_t macro guards for suse linux 96701-05-03 regcomp.c: optimize ((x)!)* to ((x)!) 968 wchar: add <wchar.h> and stdio wchar routines 96901-05-02 feaures/wchar: add <wchar.h> intercept, add stdio wchar functions 97001-05-01 string/strtoi.h: signed strtoi accepts qualified unsigned constants 97101-04-30 comp/setlocale.c: fix code that relied on 2 simultaneous getenv()'s 972 tm/tmlocale.c: check for UTF-8 encoded LC_TIME files 973 misc/magic.tab: add utf-8 and utf-16 U+FEFF magic 97401-04-26 features/common: some cc's have _ast_int8_t but not LL constants 97501-04-24 features/lib: add _std_strtod for mac os X 97601-04-23 ccode: add CC_sub for ms embedded EOF char on ebcdic -- no joke 97701-04-20 iconv: handle ebcdic<=>utf 978 mc.h,mc.c: add mcindex() 979 ast_std.h: add AST_MESSAGE_SET 98001-04-18 features/libpath.sh: fix mvs probe 981 *: sundry mvs fixes 982 glob: fix GLOB_NOCHECK to avoid stat() and properly trim patterns 98301-04-01 strtod,strtold: add 984 strtol,strtoul,strtoll,strtoull,strton,strtonl: handle locale & ERANGE 985 sfvprintf,sfvscanf: handle locale decimal_point,thousands_sep 986 sfvprintf,sfvscanf: handle %a,%A 987 setlocale: add LC_NUMERIC decimal_point,thousands_sep init 988 ast_std.h: __OPTIMIZE_SIZE__==1 to disable non-std __GNUC__ inlines 989 pathexists: path cache to cut down pathpath() access(2) calls 990 features/stdio: __FILE_TAG == _sfio_s for solaris 99101-03-23 iconv: fix iconv_move buffer boundary bug that stopped at 1 block 99201-03-19 glob: add GLOB_AUGMENTED 993 regex: REG_SHELL syntax error implies REG_LITERAL match 994 strto[ln][ll]: add overflow checks 99501-03-17 locale: reimplemented to provide canonical locale namespace 996 locale: add LC_ALL=local for local system user default 997 tm.h: TM_*_3 => TM_*_ABBREV 998 tmfmt: handle standard E and O format modifiers 999 tmlocale: consult nl_langinfo() if defined 1000 fmtquote("\"",1) => shell quote 100101-03-08 regex: handle multibyte chars and collation classes 1002 strmatch,strgrpmatch: now a wrapper on regex 1003 ast_std.h: add mb*() multibyte and collation support 1004 sfvscanf: handle locale decimal and thousand 1005 proc*,system: handle ignored SIGCHLD 1006 sfkeyprintf: handle %*C 100701-03-06 locale: add locale data cache for efficient multiple locale switching 1008 optget: fix LC_MESSAGES!=C --man bug 100901-03-01 Makefile: HEADEROPT is not optional for win32.* 1010 comp/syslog.h: comply with the de factos 1011 optget(): fix \f...\f stack bug that referenced data after pop 101201-02-27 *locale*: a batch of fixes for native LC_MESSAGE&LC_TIME hooks 101301-02-22 pathprobe: reprobe test now checks probe.ini too 1014 sfio_s.h: advertize public Sfio_t members with _ prefix 1015 sfio.h,features/stdio: add <sfio_s.h> reference 1016 sfhdr.h: map <sfio_s.h> _foo to foo 1017 sfio.h: SF_APPEND=>SF_APPENDWR, SF_CLOSE=>SF_CLOSING 101801-02-14 comp/conf.sh: probe <unistd.h> for _(CS|PC|SC)_* getconf symbols 1019 stdio/*: update for uwin stdio.dll binary compatibility 1020 sfread: finally fixed premature pipe read EOF bug 1021 fmtscale: format tenths for number > 0 && number < 10 102201-02-09 _sfmode(),_sftype(),_Sfextern: UWIN binary stdio compatibility exports 102301-02-08 sfgetm,sfputm,_sfputm: fix max clash with k&r max() macro 1024 setlocale: undef valid for sun4 k&r valid() macro 102501-02-07 catopen.c: don't do native catopen for the debug locale 102601-02-06 sfraise.c: add SF_FINAL check to avoid (posibly) freed disciplines 102701-01-01 features/common: fix uwin __DEFINE__ 1028 sftable: initialize decimal and thousand 1029 magic.tab: add corel wordperfect document 1030 syslog: add LOG_LEVEL, add '\n' only if needed 1031 include/tm.h: #undef daylight for _WIN32 1032 sfio.h: add _SF_APPEND and _SF_CLOSE for native namespace incursion 1033 ast_std.h: add AST_LC_multibyte for MB_CUR_MAX>1 1034 setlocale: set AST_LC_multibyte 1035 strmatch: check AST_LC_multibyte 1036 features/limits.c: add _BITS_POSIX1_LIM_H guard for linux 1037 features/libpath.sh: fix for aix LIBPATH 1038 procopen,procclose: block SIGCHLD if PROC_FOREGROUND (e.g., system(3)) 1039 optget.c: add enumerated option argument values 1040 optget.c: add <!--INTERNAL--> for private --html 1041 optget.c: fix memory leak that hit shell builtins hard 1042 sfio: drop sfread small chunk logic 104300-12-25 mnt.c: handle " and ' quoting for fstab 1044 sftmp.c: let pathtemp() open the fd O_EXCL 104500-12-15 conf.sh: add -v for verbose trace 1046 features/(limits|unistd).c: no FEATURE/types because of _POSIX_SOURCE 1047 features/time: add default for CLOCKS_PER_SEC 1048 features/lib: std_malloc now handles NeXT 104900-12-13 strton: recognize qualifier only if preceded by a digit 1050 features/lib: change return in vfork() test to exit() for linux sparc 1051 fmtquote: fix $'...' quote logic 105200-12-11 tmdate: fix cron format bug that mishandled months 105300-12-01 optget: handle $Id: ... $ in --?-version 1054 features/fcntl.c: fix _STDPP_ mmap munmap 105500-11-27 magic: drop dup sfclose() in load() 1056 optget: handle error_info.id==0 105700-11-22 features/stdio: add _FILEDEFED for sol9.sun4 1058 strton,stronll: handle [u|U][l|L][ll|LL] qualifiers 105900-10-31 tmdate: add TM_DATESTYLE and mmddHHMM[cc]yy 1060 astlicense.c: #include <hashkey.h> MAM workaround 1061 astlicense.c: check for non-empty CONTRIBUTORS 106200-10-26 features/stdio: add _FILE and __FILE for gnu 1063 misc/stk.c: fix stack pointer check off-by-one (dgk does it too!) 106400-10-23 syslog.h: sync with bsd values 106500-10-18 _STUB_* now functions instead of common symbols 1066 all extern data declared with definition to eliminate common symbols 1067 fastfind: add mac/bsd /var/db/locate.database 106800-10-17 features/lib: add apple osX (darwin.ppc) workarounds 106900-10-12 add: fmtbuf(), fmtclock(), fmtip4(), strtoip4() 1070 fmt*() now use fmtbuf() for tmp fmt buf allocation 107100-10-05 regex: add REG_DISCIPLINE and regdisc_t for alloc/error disc 107200-09-29 features/lib: pipe_rw==0 for sgi: boot rw == bin incompatibility 107300-09-21 astlicense: handle \' and \" in license values 107400-09-20 sfwrite: fix write() error in sfprintf() loop 107500-08-11 hdr,vmhdr.h: check/hide { getpagesize sbrk } prototypes 1076 astlicense: add noncommercial 107700-07-31 fflush: don't seek on pipes 1078 sfresize: add 1079 setlocale: fix bad newof() call 108000-06-01 strmatch: initialize match.current.beg[0] to avoid dump at line 670 1081 sfio/stdio: a few more errno tweaks 1082 astquery: sfstdin/sfstderr by default 108300-05-26 sfmode: errno=EBADF for invalid stream use 108400-05-22 rewind: fix for xopen test 108500-05-18 mcfind: returns absolute path 108600-05-16 optget: --keys must catch \f...\f too 1087 translate,mc: errno cleanup 108800-05-09 magic: add netbsd binary magic 1089 fts: PATH_RESOLVE!=logical => FTS_SEEDOTDIR 1090 ftwflags: call fts_flags() 1091 astconf: astconf(0,0,0) re-syncs with _AST_FEATURES 109200-05-08 optget: --usage & --keys for last -catalog group only 109300-05-02 iconv.c: add; use codes[] in ccmapid() and ccmapname(); "" for native 109400-05-01 pathtmp: copy env values (libshell or putenv may change) 109500-04-01 optget: drop bar from [-foo?bar] for --??keys 1096 sfvscanf: add %X -- duh 1097 features/common: fix va_listval() for power pc 1098 findopen: fix FIND_GENERATE codes file search 1099 magic: add ERROR_translate() and msgcat.key 1100 tmlocale: add for LC_TIME locale info 1101 tmlex: check tm_info.format and tm_data.format 1102 tmfix: fix for tm_wday special case (via nl_langinfo on LC_TIME fields) 1103 strftime: fix for nl_langinfo special case 1104 ast_std.h: provide LC_* defauls if not defined 1105 sfnew: check ${_AST_sfio_bufsize} -- don't tell kpv 1106 catopen,nl_types.h: add intercept to mc* routines 1107 magic.tab: add ast message catalog 1108 strerror: add _ast_strerror intercept with ERROR_translate("errno") 1109 fmtquote: escapes >0177 only if (flags&2) 111000-03-17 feof: stdio macro functions only for _UWIN 1111 optget: proper ERROR_translate() calls 1112 astgetconf: add for thread safe error message control 1113 astlicense: fix type=special but with non-null notice 1114 errorx: add for ERROR_translate() support 1115 ERROR_translate: add locale id args for alternate dictionary 1116 option.h: move _OPT_PRIVATE_ to pointer to avoid dll size mismatch 1117 ftwalk: fix FTW_CHILDREN bug that hit top level non-dirs twice 1118 translate.c: default error_info.translate 1119 astconf: fix dup loop thrash that never returns, add _AST_VERSION 112000-03-10 ast_std.h: do _LARGEFILE_SOURCE initialization before std headers 1121 fmtquote: handle $'...' quotes 112200-03-07 optget: fix numeric option support test 1123 sfkeyprintf: add %q for '...' quoting with ansi escapes 112400-03-06 features/stdio: fix _sfflsbuf prototype (dingold@gte.net) 112500-02-14 pathtmp: fix pid cache bug that sometimes repeated after ~10 attempts 1126 optget: "..." attribute quote 1127 pathfind: eliminate *: prefix in lib, not type 1128 proc: PROC_FOREGROUND for system(3) semantics (wait status return) 1129 pathtmp: fix mktemp() logic 1130 fts: fix FTS_NOSEEDOTDIR bug that botched ./* in top list 1131 include/ast/prototyped.h includes include/prototyped.h 1132 pathpath: fix strdup(0) bug 1133 optget: --html <foo@bar> => ...mailto:foo@bar... 1134 sscanf: fix sfsscanf => sfvsscanf typo 1135 magic.tab: strengthen tar recognition 113600-02-08 conf.sh: fix ifdef for systems that think sysconf(FOO) is const 113700-02-04 glob: fix globlist_t.gl_flags 113800-02-02 vm*: add NoF() for data only files 113900-01-27 fts: fix top level .==.. statp bug (thanks to dr. ek) 114000-01-25 conf.tab: fix LFS*_*LAGS typo 114100-01-24 astlicense: handle type=verbose, license.notice, author=* 114200-01-11 pathprobe: generate info for first probe script on PATH - duh 1143 ast.h: add NoF(x) for files that define no functions 1144 tmpfile: fix implementation 1145 global change for string ERROR_translate() dictionary names 1146 optget: fix new way but no long names off by one 1147 optget: handle [--dictionary?name] 114899-11-19 comp/conf.sh: `expr length XXX` is not universal 1149 drop sfstdio; stdio via functions everywhere 1150 drop Makefile conditionals (and follow our own advice for once) 1151 sfio: new stream after atexit() bug fix 1152 tm: Tm_zone_t.daylight=0 for standard time within zone 1153 stdio: fopen => _ast_fopen: only way short of binary compatibility 1154 Makefile: atmain.C falls back to atmain.c 1155 optget: add --keys, s<section> option 1156 stdio: _UWIN check for foreign stdio 115799-11-11 astlicense: add 115899-10-31 glob: fix regexec pattern; add PATH_ATTRIBUTES case check 1159 pathpath: path==0 means malloc space 116099-10-22 tmfmt: %C=2-digit-century, %k=date(1), %y=2-digit-year-in-century 116199-10-18 fastfind: expanded default db lookup 116299-08-11 magic: fix off by one registry malloc 1163 features/fs: add __RENAME checks for stat familiy (netbsd) 1164 features/fs: major()/minor() fixes for s5 1165 features/libpath.sh: netbsd fix -- ld.so not in std places 1166 misc/fastfind: fix codes path generation bug 1167 optget: beef up --?* description, fix <TR>...</TR> nesting 1168 pathprobe: check for override (writable key file) first 1169 features/time: int tmtimeofday(struct timeval*); 1170 optget: fix opt_info.num, even if opt_info.arg!=0 1171 fts: FTS_PHYSICAL => FTS_SEEDOTDIR, add FTS_CHOP 1172 fastfind: init dir tab with logical and physical name 1173 glob: add gnu GLOB_ALTDIRFUNC 117499-07-17 sfio: kpv update and sfhdr.h sync! 117599-06-24 stdio: fix fflush() to ignore sfseek(0) return value 117699-06-23 magic: '\r' is text not control to placate m$ 117799-06-08 stdio: fix fseek,ftell semantics 1178 uwin stdio: fflush() => _doflsh() to avoid __cplusplus clash 1179 getopt: call liberror() to avoid error() conflict 1180 tmfmt,tmscan: %N zone type (nation code), %z zone minutes west offset 1181 tmfmt: - no pad _ space pad 0 leading 0 pad 118299-05-28 magic: fix 'x' == '*' for any number, magic.tab tweaks 1183 features/lib: verify that stat64 really works 118499-05-21 tm*: add TM_WINDOW==69 for consistent century windowing guard year 118599-05-18 tmtime: add century leap year calc anticipating unsigned time_t 118699-05-17 sfkeyprintf: handle %o and %x!! 118799-05-09 pathprobe: $HOME/.probe if not suid and st_uid!=geteuid() 118899-04-28 magic,magic.tab: add registry() 118999-04-24 regcomp: fix ksh pattern +! parse 1190 regfatalpat: add 1191 optget: make : ? ] double escape consistent in all contexts 119299-04-01 features: drop iffeio.h and stdio.h when only printf() used 1193 regex: fix stats() .l and .k count 1194 fmtquote: added; most general fmtesc() form 119599-03-22 fmtesc.c,ast.h: add fmtnesq() 1196 optget: --?x works for -x option flag 119799-03-17 features/limits.c: workaround solaris __EXTENSIONS__ _timespec bug 1198 workaround limits.h circular prereq with ignore stdio.h 1199 sfvprintf: %04e left-pad zero fixed 120099-03-03 fts: uncle already: add FTS_SEEDOTDIR to retain leading ./ 1201 regex: REG_MULTIPLE, BM for fixed string alternation 1202 optget: embedded `-' optional in long options, prefix={0,1,2} 120399-02-14 fastfind: fix dir format bug that emitted wrong paths 1204 astconf: fix redef off by one bug 120599-02-11 pathcanon(): don't cache astconf("PATH_LEADING_SLASHES", NiL, NiL) 120699-01-23 optget: move <old_opt.h> back into <option.h>, no open-close 1207 optget: add "[index:long-name:description]" for --long-name 1208 comp/gross: add weak __libc_attr for irix < 6.5 compatibility 1209 features/limits.c: tweak the guards again 121099-01-11 fastfind: handle old format count byte order 1211 magic.tab: fix elf to use real phdr offset 1212 magic.c,magic.tab: fix | to act like switch/case 1213 comp/fross.c,features/hack: for gross hacks 1214 features/stdio: avoid sfio namespace pollution 121598-12-25 tmdate: yyyy.mm.dd 1216 pathprobe: fix procrun() cmd path bug 1217 fmtesq: add 1218 features/common: win32.alpha va_list 1219 magic: add pc alpha object 122098-11-11 strmatch: add STR_ICASE 1221 pathprobe: punt to $HOME/.probe/<key+HOSTTYPE> if not S_ISUID 1222 tmzone,tmdate: handle +-minutes, nn/MMM/yyyy 1223 stropt: fix nested quote pop 1224 tmfmt: add %K => %Y-%m-%d/%H:%M:%S 1225 sfio/stdio: fix fseek() SF_PUBLIC omissions 1226 fmtesc: catch '\\' (duh) 1227 vmalloc: vmbest round bug fix 122898-11-01 fts.c: no pathcanon() if (fts_flags & FTS_PHYSICAL) 122998-10-01 features/stdio prototype fixes 1230 optget: strton() instead of strtol() for # 123198-09-22 regcomp: add REG_DELIMITED and REG_ESCAPE delimited re support 123298-09-15 fix _LARGEFILE64_SOURCE stuff 1233 ast_std.h: provide mmap() prototype 123498-08-11 fix sfpopen() to ignore SIGPIPE by ignoresig() for sfio but not stdio 1235 fix procopen() to ignore SIGPIPE by ignoresig() for PROC_IGNORE 1236 sfio sfpopen/popen update 1237 magic.src: fix ustar entry 123898-07-17 fix ftwalk() short by one malloc() 1239 add fts_notify() 124098-06-25 sfdcmore,sfdcprefix: add 124198-06-19 tokscan: add %f %g 124298-06-01 disc/sf*.c: memset(0) after disc malloc() 124398-05-11 strelapsed: y==Y 1244 fts: pathcanon() top list 124598-04-01 error: error_info.time for all msgs, just after cmd id 1246 error: no sfsync(sfstdin) 1247 sfio: sfpool, Sffmt_t update 1248 magic.tab: sgi core dumps -- why aren't these elf? 1249 stropt: (v+n) for unknown option is option value if n!=0 1250 procopen: fix setsid() for spawnveg() only 125198-03-19 malloc: add realloc foreign region check 1252 sfdisc.h: rename to match kpv disciplines 1253 fastfind: fix strcasecmp/strcmp directory prefix mixup 125498-03-17 features/fcntl.c,pathtmp,sftmp: add O_TEMPORARY 125598-03-01 pathcanon: fix PATH_LEADING_SLASHES to stat() both slashes 1256 pathcanon: add PATH_VERIFIED 1257 tmdate: add skip[] to expand separator char set 1258 fastfind: FIND_OLD for old 7 bit db, FIND_TYPE for new 8 bit typed db 1259 fastfind: default generates gnu LOCATE02 8 bit db 1260 magic: handle %s in mime description 1261 cdt: kpv update 1262 sfio: kpv update 1263 stdio: fpos64_t fseek64(), ftell64(), fgetpos64(), fsetpos64() 1264 stdio: fseek() => sfseek(SF_PUBLIC) to avoid locking 1265 fts: initialize parent stat[bp] from top level *after* statf done 1266 astmath: add -lm requirement test 1267 *: Astlong_t => _ast_*_t 1268 regex: simplify regcollate() (from doug) 1269 tmtime: preserve Tm_t*tm when calling tminit() 1270 astconf: add readonly PATH_ATTRIBUTES=[cirw] 127198-02-14 fastfind: add FIND_ICASE to ignore case 1272 tmdate,tmgoff: handle (+|-)hh[[:]mm[[:]ss]] absolute timezone 1273 tmdate: `<n> <part>' now assumes `next <n> <part>' instead of `this' 1274 tmfix: fix leap year bug that forgot to add 1900 1275 proc: add PROC_ZOMBIE 127698-02-06 strmatch() char class range bug fix 1277 regex char class range bug fix 127898-01-23 _WIN32: changed the #if logic again to accomodate _GNUC_ 1279 mnt: grab the mount options too 1280 ast_std.h: hide getopt,getsubopt from stdlib.h 1281 features/limits.c: add gnu guard macros to avoid limits.h recursion 1282 features/mode.c: include "limits.h" instead of "FEATURE/limits.lcl" 128398-01-11 sfio.h: use Astlong_t, move Sfio_t Sfdisc_t typedef to top for stdio.h 1284 sfhdr.h: #undef SETLOCAL for hpux 1285 sfvprintf,sfvscanf: %I*x for sizeof(int_arg) 1286 handle ftruncate64 and truncate64 1287 dtopen.c: __hppa dll needs Dtset Dtlist Dttree refs here 128897-12-18 fmtnum: add 128997-12-11 magic: handle sgi 64 bit core dumps 129097-12-07 pathtmp: add override for TMPPATH,TMPDIR and cycling 129197-11-11 tm: handle 0 return from gmtime(),localtime() (dos negative time_t) 1292 features/stdio: fix fflush() macro to do physical sync 129397-10-31 astconf PATH_RESOLVE is logical if 3d&&!std, metaphysical otherwise 1294 magic: fix #! mime bug 1295 tm: tmtime() now calls tmfix() and adjusts tm_isdst too=>mtime() works 129697-10-11 dllfind,dlfcn: move to separate -ldll so -last can link static, duh 1297 Makefile,state.c: move forced header generation state.c => Makefile 1298 sfio: update including SF_WHOLE 129997-10-01 sfdostext: add \r\n => \n sfio discipline 1300 stropt: NiL table => p=name for all name=value 130197-08-11 pathtmp: check pid to note forks 1302 procopen: FD_CLOEXEC rfd && wfd 1303 fts: fts_close() after fts_children() with no fts_read() now works 130497-07-17 error: sfsync(sfstdin,sfstdout,sfstderr) instead of sfsync(NiL) 1305 _sfcvinit: add sfio internal interface to base conversion tables 1306 strton: use _Sfcv* base conversion tables instead of sfsscanf() 1307 sfvscanf: use _Sfcv* base conversion tables 1308 mime: x- permutations now matched if exact fails 1309 mime: original- stripped from content-* headers 1310 tmdate: add yyyy-jjj, yyyy-mm-dd 1311 dllfind: add 1312 ccmapid: fix buf copy loop limit 1313 ccmapname,ccmapcpy: add 1314 sfstrtmp: add 131597-05-09 streval: fix up casts for pseudo-ansi cc 1316 features/types: use _ast_int_8 vars to verify support 1317 string/modedata: check for mvs.390 S_IFMT 1318 include/ast(_std).h: add #define __FILE_typedef 1319 magic: add ccode text check 1320 include/ftwalk.h: FTW_PATH=>FTS_NOCHDIR to avoid FTS_AGAIN (duh) 1321 fts: clear status for FTS_AGAIN (fixes rm -r bug) 1322 mnt: add mvs openedition w_getmntent() 1323 sfhdr: _hdr_float && <float.h> for correct MAXDOUBLE 1324 vmalloc/vmbest: if _std_malloc then use malloc()/free() not sbrk() 1325 remove: check _std_remove 1326 procopen: handle pio[{0,1}]=={0,1} 1327 setenviron,features/uinstd: test for mvs.390 dll environ hacks 132896-12-25 <sfio_p.h> -> <ast_common.h> 1329 __EXTERN__(type,object) 1330 __DEFINE__(type,object,value) 1331 magic: check strings in !CC_NATIVE code set too 1332 system: cmd==0 means check for shell access (xopen) 1333 sfhdr.h: fix sfrsrv prototype 1334 add __libc_malloc etc for gnu/linux 1335 astconf(NiL,path,name) == astconf(name,path,NiL) + no liberror 1336 fts_open: if toplist() stat fails return 0 1337 ftwalk: handle fts_open()==0 via one phony userf() call 1338 sfmode: S_ISFIFO default is SF_SHARE=0 1339 features/lib: _WIN32 _lib_vfork=1 by default 1340 unsigned<0 comparison and other fixes via sgi.mips4 cc 1341 stk.c: use <align.h> ALIGN_BOUND for stkalloc() 1342 features/lib,vfork: uwin fix 1343 ast_std.h: fix strto[u]ll prototypes with features/types _ast_int_8 1344 getsubopt: add for xopen 4.2 compatibility 1345 drop function __IMPORT__ 1346 magic: more magic 1347 change #define FILE from Sfio_t to struct _sfio_s 1348 state.c: add generated includes that may be hit by std for MAM 1349 bytesex: forgot about sizeof(long)=>7; could we fix the name too? 1350 vmalloc.h: fix vmnewof() definition 1351 sfio.h,stdio.h,ast_common.h: pollution cleanup 1352 magic.c: add | op for switch 1353 Makefile: stdio.h was on both HEADERSRC and HEADERGEN -- don't do that 1354 drop pp:notice to get <sfio.h> ... <ast.h> to work 1355 regex: add [[:<:]]==\< and [[:>:]]==\> for bsd compat 1356 mime.c: ignore X-* headers while scanning for Content-* 1357 magic.c: check for negative indirect offsets 1358 magic.tab: fix dos entry that generated negative indirect offsets 1359 vmalloc.h: add vmstrdup() prototype 1360 hash.h: add hashgetbucket() macro 1361 magic.c: MAGIFILE is now a : file list 1362 mnt.c: another 4.4 bsd fix -- users must include <sys/crap.h> 1363 common: fix _WIN32 chicken&egg with va_copy 1364 sfio: forgot to set f->val along with _Sfi in sfexcept() 1365 Makefile: add mini target for uwin libmini.a 1366 sfcvt.c: workaround for flaky long double optimizers 1367 features/common: fix to work with va_list==void* 1368 regexec.c: fix REG_STARTEND subexpression offsets 1369 strmatch.c: don't forget <wctype.h> 1370 regrexec.c: fix REG_INVERT end boundary bug that missed last record 1371 astconf.c: notify(0,0,"a=b") called for each setenviron("a=b") 1372 pathcanon.c: check astconf(PATH_LEADING_SLASHES) to preserve //* 137396-11-28 _LARGEFILE64_SOURCE by default if possible: NOTE: assumes xopen 1374 regerror: fix for xopen 1375 getopt: fix for xopen 1376 magic: add ciao virtual database 1377 astconf: posix/strict/xopen implies "standard" conformance 1378 fs3d.h: hide mount prototype 1379 ast_std.h,mnt.c,features/fs: ncr port tweaks 138096-10-31 version 5.0 1381 add strtoll() strtoull() 1382 sfkeyprintf: upgrade to int_max args 1383 ast.h: add ssizeof() to work around unsigned botch 1384 conf.sh: add shell actions to conf.tab 1385 _DLL*: drop for _BLD_<lib> + __EXPORT__ + __IMPORT__ 1386 sfio,cdt,vmalloc: kpv update 138796-10-11 <ccode.h>: add character code map support 1388 procclose: return shell style exit status 1389 features/fs: pun statvfs.f_basetype to statvfs.f_reserved7 for mvs 1390 uwin: add subdir for uwin additions 1391 ast_std.h: swab() is from <stdlib.h> 1392 sfio.h: <ast_std.h> if _PACKAGE_ast 1393 magic.tab: add mips[1-4], 64-bit 1394 port tweaks for sol.sun4 and sun4 139596-09-06 strerror: add 1396 fmterror: uses strerror 1397 str*search: use sfiso646() order 1398 strpsearch: add 1399 magic: add Magic_t.mime mime type return for magictype() 1400 mime.h: add 1401 strton: use sfsscanf() 1402 strperm: factor in umask() if no who 1403 pathtmp: add TMPPATH check 1404 libevent: add 1405 magic: add discipline to magicopen() 1406 mime: add discipline to mimeopen() 140796-08-31 regex: fix BM fail table generator 140896-08-11 mntread: fix mnt.type for SCO variant 1409 conf.tab: add SCO KERNEL_* sysconf() vars 1410 fastfind: add findwrite(), fix findread() FF_OFF omission 1411 ftwalk: reimplement on top of fts 1412 fnmatch,re_comp,regexp: reimplement on top of regex 1413 basename,dirname,fmtmsg,fts,ftw,getdate,getsubopt,glob: add 1414 hsearch,nftw,realpath,strftime,strptime,swab,tempnam: add 1415 tsearch,wordexp: add 1416 getcwd: cache last path for easy test 141796-07-17 error: sfsync(NiL) ... write ... sfsync(sfstderr) 1418 astconf: handle readonly *(DEV|DIR) vars 141996-04-01 swapop: fix stupid return value bug 1420 features/int.c: fix int_swap generation bug 1421 regnexec,regrexec: fix unsigned underflow init error 1422 ls.h: fix iblocks() to be in units of LS_BLOCKSIZE 142396-02-29 magic: space before function is definition with no call 1424 hash: drop hash_info from public interface 1425 hash: OBSOLETE hashlast() 1426 hash: add Hash_root_t.Hash_last_t to public interface 1427 add strsearch() and strnsearch() to complement strlook() 1428 add hashkey.h for keyword->long hash 1429 pathpath: pathpath(0,0,"",0) disables $0 $_ $PWD relative search 1430 sfio: sfstrtod+sfhdr update 1431 regex: fix REG_LENIENT to map BRE \[+?|] to ERE [+?|] 1432 change _std_malloc iffe test so it doesn't hang on alpha 1433 sfhdr.h: features/sfio generates _lib_cvt instead of _i386_cvt 1434 ast_hdr.h: add va_copy(a,b) to copy va_list b to a 1435 getopt: fix stupid getopt() -> optget() bug 1436 sfvprintf: %h? now downcasts 1437 regex: handle strto?l() errno in regcomp() 1438 sfstrtod: _Sfstrtod_already_defined -> _STUB_sfstrtod 1439 ast_std.h: hide valloc() and ignore <strings.h> 1440 sfkeyprintf: pass phony va_list for '2' 1441 regex: change HIT var type from int to size_t in special() 1442 ast.h: add EXIT_STATUS(x) to convert wait() status to sh exit status 144396-02-14 regex: add _ to \<...\> isalnum test 1444 regex: fix BM inner loop breakout 1445 features/types: size_t is signed on some systems! => _ast_size_t 1446 sfio: sfrd discipline peek optimization 1447 vmalloc: vmalloc.h malloc family macro upgrade 1448 tokopen: fix newline bug for non-restore open 1449 sfio: no inline for gcc until it emits for -g too 145096-02-12 sfio: internal upgrade 145196-02-09 regex: Boyer-Moore boundary fix 1452 vmalloc: snarf latest 145396-02-06 regex: add regrecord() and regrexec() for Boyer-Moore record filtering 1454 regex: rearrange regnexec() args to match buffer,count arg style 145596-01-31 stk: add STK_NULL to stk.h and stk.c 1456 regex: privatize regex.h and fix min re length computation 1457 workaround lazy strdup() implementations in features/lib _std_malloc 1458 fix stkclose() to free(stream) -- purify missed because of sfio links 1459 unused var cleanup 1460 port/mnt.c must include <ls.h> to get <ast_fs.h> 1461 add SF_FINAL to sfio and stk 1462 sfio reads now on natural block boundaries 1463 add #!!! <level> <message> !!! to tokline() 1464 add REX_BM pre-filter to regcomp/regnexec 146596-01-22 add regcomp env.paren overflow checks 146696-01-11 add Doug McIlroy's regex (converted to C from C++ by gsf) 1467 AT&T Research now 1468 sfgetr optimization 1469 regex buglets 147096-01-05 tweak magic.tab for win32 147195-12-25 add !(...) -> (...)! to fmtre() 1472 nt tweaks -- functions with no header proto must be defined extern 147395-11-24 version 4.1 1474 add mnt.h mntopen mntread mntclose 1475 convert fmtfs to mnt.h 1476 add RE_LEFTANCHOR and RE_RIGHTANCHOR 1477 gcc inlines must also have global library function instantiation! 1478 add hashview() 1479 fix strtape() internal buffer flow 1480 fix mntread() fs/dir transposition for uts mnttab 148195-10-31 change features/unistd.c includes to break limits-param cycle 1482 add cdt from kpv 1483 sfio snarf from kpv 1484 add [ht]search for _WIN32 148595-10-11 clarify PARANOID pathcheck() warning 1486 fix procopen() LIB_SPAWN environ bug with setenviron() cache 1487 fix setenviron() bug that forgot to reset environ if == 0 1488 add %Z '\0' output format to sfkeyprintf() 1489 sfio snarf for sfvprintf fix 1490 allow multiple hashscan() with scope caveat 1491 add comp/fakelink.h to synthesize a few symlink text patterns 1492 add !<xxx> magic to misc/magic.tab 1493 add FTW_TOP to inhibit recursion (for ftw side effects on top level) 1494 add memfatal() common malloc fatal exception message 1495 add dos \r\n test to misc/magic.c/cklang() 1496 sftmp() O_EXCL+random to avoid collisions 1497 pathtemp() uses sftmp() randomizing 1498 features/fs uses SF_APPENDWR 1499 sftmp() uses pathtemp() -- don't worry, its not circular 1500 a few more _WIN32 compatibility additions 1501 realloc fixed to use VM_RSCOPY|VM_RSMOVE instead of obsolete 1 1502 add hashlook(tab, oldname, HASH_RENAME, newname) 1503 a few more tweaks to satisfy port warnings 1504 add _SFIO_INLINE_PRIVATE to provide real function too 1505 fix <dirent.h> installation test 1506 oops object / shared library compat with _sfgetl2 _sfgetu2 150795-09-11 add getopt() compatibility 1508 add fstat,lstat,mknod,stat fixes for _x versions in sys/stat.h 1509 add getconf CONFORMANCE - posix for things that aren't ast default 1510 sfio_t.h: #ifndef _SFIO_H #include "sfio.h" #endif 1511 snarf vmalloc from kpv 151295-08-11 fix malloc bug in magic 1513 update linux and bsd 386 magic entries 1514 error_info.auxilliary returns new level, |=ERROR_OUTPUT if msg done 1515 drop fnmatch from strmatch for sparc (solaris) until it collates 151695-07-17 fix port/astconf universe initialization 1517 fix misc/optget opt_info.nopt initialization 1518 drop tmset() TZ=... because it only worked when TZ=... was ignored 151995-05-09 mongo <ast.h> namespace cleanup 1520 drop > 2 year old obsolete interfaces 1521 sfvprintf.c fix for (char:8 short:16 int:32 long:64) architectures 1522 TMP_MAX back into conf.tab 1523 pathbin() and pathshell() now use astconf() 1524 fix pathtemp() to not cache getenv("TMPDIR") 1525 fix ftwalk() metaphysical to handle non-dirs too 1526 initialize *_info = { 0 }; for ancient ld semantics (NeXT) 1527 fix magic() to do vmfree() 1528 astconf(X_OK) must prefix lines with "getconf" 1529 use <wchar.h> and wctype in strmatch() if available 1530 _lib_utime_now checks utime(path,0) 1531 _lib_poll_notimer checks poll(x,0,timeout) 1532 add another _lib_utime_now check to port/touch.c 1533 fix dd_buf cast in dir/opendir.c 1534 split getconf.h into conftab.h and conftab.c for :READONLY: 1535 use mbtowc() only if MB_LEN_MAX>1 1536 sfio char* -> Void_t* cleanup 1537 handle old syntax in misc/magic.c 1538 sigdata.c holds readonly signal strings 1539 pathcheck() does AT&T checks for tools matching PARANOID - yuk 1540 unused var cleanup 1541 deprecate hash_info in favor of hashlast() 1542 fix bad conf.sh ksh integer interactions 1543 dll cleanup 1544 magic.c falls back to malloc for now 1545 add environ to <ast.h> -- C library global data syms are *RESERVED* 1546 sfhdr.h memccpy(1,2,3,size_t) prototype 154795-04-01 version 4.0 1548 convert to vmalloc 1549 allow sigcritical() nesting mismatch to work around vfork() bug 1550 add strexpr() primitive for streval() with user handle (like ftwalk) 1551 add <magic.h> and magic.c file command magic interface 1552 update magic mail message entry 1553 fix keyprintf() invisible char count nesting bug 1554 add sfstrnew(SF_READ|SF_WRITE) for alternate sfstropen() modes 1555 sfstrnew(SF_READ) but reading requires sfseek(), sfreserve() 1556 add conf.tab and conf.sh to nail C/POSIX limits/unistd macros 1557 add getconf() string interface to *conf* 1558 _DLL_INTERMEDIATE_DATA for systems that require indirect globals 1559 _DLL for building shared libraries with _DLL_INTERMEDIATE_DATA 1560 vecfile() restricted to S_ISREG() 1561 add spawnveg() for job control 1562 convert procopen() PROC_PGRP(id) to spawnveg() 1563 fmterror() returns error text given errno (strerror() does same) 1564 fmtsignal() returns signal text given errno (strsignal() does same) 1565 {sig_name,sig_text,SIG_MAX} -> sig_info.{name,text,sigmax} 1566 liberror("",...) omits [%s library] prefix 1567 update features/signal.c table 1568 add vmdisc() and change vmnewof() to use vmresize() 1569 fix conf.sh to allow refs to previously defined limits 1570 fix undefined entries in getconf() 1571 magic data in magic.tab 1572 fix stropt() pointer cast 1573 vmalloc() exception handler replaces nomalloc() 1574 merge sigdata.c into fmtsignal.c -- sun link needs function w/ data! 1575 sftmp() bug fix 1576 drop local <unistd.h> even with _POSIX_SOURCE 1577 fix vmstrdup() macro arg miscount 1578 fix conf.sh to handle enum'd symbolic constants in unistd.h 1579 drop malloc() et.al. prototypes from vmalloc.h 1580 fix sfvprintf() %d argument reference 1581 add OSF/1 AES symbol(s) to conf.tab 1582 determine standards prefix from conf.tab 1583 add _CS_SHELL to conf.tab 1584 getpath() default is confstr(_CS_PATH) 1585 getshell() default is confstr(_CS_SHELL) 1586 unify keyprintf user function args (should have learned by now!) 1587 add quad type to magic 1588 add astfeature() to unify universe style dynamic features 1589 add ftwflags() to determine FTW_* flags from astfeature() 159095-03-11 fix stropt() to not modify its *const* arg 1591 handle "'\ quotes and chresc() in stropt() values 1592 , treated like :space: between stropt() options 1593 fix procopen() fd dup to ignore self-dups 1594 add library id[] to misc/state.c 1595 add ftwalk(FTW_METAPHYSICAL) for posix -H 1596 sfvprintf() now handles balanced () in %() 1597 add tmfmt() with buffer size check to replace tmform() 1598 add fmttime() calling tmfmt() to fit fmt*() mold 1599 add <keyprintf.h> and keyprintf() to support %(...)? in commands 1600 add Hash_table_t for size==0 in stropt() 1601 add EXTTYPE extended header to tar.h 160295-02-14 sfmove() buffer size overflow fix 1603 add _SFSTDIO_H to sfio.h 1604 rename setenv() to setenviron() -- posix finally decided 1605 rename <option.h> opt_* to opt_info.* 1606 update features/unistd.c for _SC_* and _PC_* posix additions 160795-01-19 (char*)uchar cast in fmtesc() 1608 fix hash bucket memory leak in hashlook() [via John Mocenigo] 1609 update strings/strtape() 1610 fix optget()/optjoin() to handle leading + 1611 add ALIGN_ prefix to <align.h> identifiers 161295-01-11 change tm/*.c tmset(0) to tmset(tm_info.zone) to keep user setting 1613 fix tmform() %Z null pointer dereference 161495-01-01 add this RELEASE file 1615 fix strperm() to properly handle "644 file" 1616 fix tokline() to return last '\0' terminated line in string 1617 fix tokscan() to properly handle \\n splice 1618 add fmtesc() to complement stresc() 1619 add LS_NUMBER to fmtls() 1620 drop spurious optusage() ' ' 1621