xref: /titanic_41/usr/src/lib/libast/common/RELEASE (revision 7b9b3bf3fd4f7bfad91fce91e3e9fba62ac85c77)
107-04-13 tm/tmxdate.c,tm/tmzone.c: handle [-+]0000 UTC zone offset
207-04-11 sfio/sfvprintf.c: add %F, propagate SFFMT_UPPER
307-04-11 sfio/sfcvt.c: handle SFFMT_UPPER => nan/inf vs. NAN/INF
407-04-02 comp/conf.tab,comp/conf.sh: add C/POSIX <stdint.h> symbols
507-03-28 misc/optget.c: fix l10n --?-
607-03-25 features/common: fix { ast_std.h ast_map.h stdint.h } logic
707-03-21 error.h: move from error_info to (*_error_data_)
807-03-21 option.h: move from opt_info to (*_opt_data_)
907-03-19 regex/regdecomp.c: fix REX_ONECHAR escapes and add REX_KMP
1007-03-11 tm/tmxscan.c,regex/regnexec.c: fix strict-alias transgressions
1107-02-27 comp/conf.sh: handle native getconf invalid numeric values
1207-02-21 comp/conf.sh,comp/conf.tab: handle SSIZE_MAX vs _POSIX_SSIZE_MAX
1307-02-20 sfio/sfvprintf.c: handle SF_WCWIDTH justification
1407-02-14 features/common: cover <stdint.h>, move to int_(bits)_t
1507-02-14 include/int.h: drop
1607-02-14 include/sfio.h: add SF_WCWIDTH
1707-02-12 comp/conf.sh: fix CONF_LIMIT bug that missed ULONG_MAX etc.
1807-02-12 comp/conf.tab: *LONGLONG* => *LLONG* to match posix
1907-02-12 features/float: *LONGLONG* => *LLONG* to match posix
2007-02-12 port/astconf.c: handle CONF_LIMITS_DEF with no deferral
2107-02-12 stdio/vasprintf.c: add trailing '\0' -- doh
2207-02-04 string/fmtelapsed.c: fix naive multi month/year logic
2307-02-02 misc/optget.c: add --??posix for getopts(1)/getopt(3)
2407-01-26 string/chresc.c: use mbchar()
2507-01-26 misc/optget.c: handle "o:-:" usage for old-style long options
2607-01-22 sfio/sfdisc.c,sfpool.c: handle push on streams with pending peek
2707-01-22 include/sfio.h: mv Sfieee_t to sfio/sfhdr.h
2807-01-17 tm/tmxfmt.c: fix terminating nil logic which clobbered size-1
2907-01-11 misc/stk.c: a 2 day marathon bug fix (can we release now dr ek?)
3007-01-05 comp/spawnveg.c: posix_spawnattr_setflags(POSIX_SPAWN_SETPGROUP)
3107-01-05 misc/error.c: fix multibyte vs. printable logic
3207-01-01 comp/conf.sh: LC_ALL=C
3306-12-26 tm/tmxdate.c: handle nn*.nnnn* == sec.ns
3406-12-20 features/libpath.sh: generalize sol.* LIBPATH patterns
3506-12-18 comp/setlocale.c: include ast_standards.h and ast_wchar.h !
3606-12-12 string/strperm.c: octal modes are absolute!
3706-12-11 comp/conf.tab: always defer ARG_MAX
3806-12-07 Makefile: fix conftab.c generation CCFLAGS to match build - doh
3906-12-04 sfio/sfcvt.c: fix (int) vs. (long) cast mismatches
4006-12-01 comp/conf.tab: add changes to cover solaris { bin xpg4 xpg6 }
4106-12-01 regex/reginit.c: adjust { SRE KRE } escaped (){}*? inside [...]
4206-12-01 sfio/sfcvt.c: add signbit/copysign tests
4306-11-22 comp/spawnveg.c: fix _real_vfork logic to work with 3d
4406-11-20 features/common: bias _ast_int8_t "long long" before "__int64"
4506-11-20 string/strperm.c: fix X to work with all ops (not just +)
4606-11-15 astconf.c,conf.tab: add CONF_DEFER_* for variable constants
4706-11-11 port/astconf.c: validate path arg w.r.t. underlying calls
4806-11-11 comp/conf.sh: fix S CONF_STANDARD bug, add D to defer to native
4906-11-11 comp/conf.tab: add D to defer to native
5006-11-01 include/vmalloc.h: avoid VM_FLAGS sys/v*.h clash
5106-11-01 include/ast.h: add FMT_PARAM for fmtquote()
5206-10-31 disc/sfdcseekable.c: add SFSK_DISCARD for seekable window control
5306-10-31 comp/spawnveg.c,features/lib: handle posix_spawn exit status 127
5406-10-30 features/lib: fix posix_spawn() fork() prototype conflicts
5506-10-30 string/fmtscale.c: fix 1024 rounding bugs
5606-10-27 disc/sfkeyprintf.c: handle 'i' (=='d') -- oops
5706-10-26 sfio/sfvprintf.c: %#d => fmtscale(1000), %#i => fmtscale(1024)
5806-10-26 features/map.c: _map_libc cleanup
5906-10-26 features/fcntl: add to the circle of trust
6006-10-26 features/sys: add <sys/socket.h> socklen_t
6106-10-26 include/regex.h: handle include before <ast_map.h>
6206-10-25 astconf "SHELL" => "SH" to avoid _POSIX_SHELL conflict
6306-10-25 comp/conf.*: drop no-op duplicate conftab.c entries
6406-10-18 string/fmtscale.c: 1000: n[.]n[n](kMGTPE), 1024: n[.]n[n](KMGTPE)i
6506-10-11 ast_std.h: now implies <sys/stat.h> (did on most before anyway)
6606-10-11 strtoi.h: ignore sign for 0, validate scale shift
6706-10-11 strdup.c,vmstrdup.c: handle 0 arg
6806-10-11 add sfstruse()/sfstropen() error checks
6906-10-10 misc/procopen.c: envv==environ => don't modify environ
7006-10-10 misc/procclose.c: return valid exit(1) status
7106-10-06 port/astconf.c,comp/conf.sh,comp/conf.tab: play nice with getconf(1)
7206-10-01 comp/conf.tab: SHELL default checks { _CS_PATH } X { ksh ksh93 sh }
7306-10-01 comp/conf.sh: export CONF_getconf to shell actions
7406-10-01 comp/putenv.c: always enable setenv() for procopen()
7506-10-01 misc/procopen.c: use pathshell() or astconf("SHELL",0,0) if PARANOID
7606-10-01 path/pathshell.c: localize the shell path patterns and accept ksh93
7706-09-28 Makefile: avoid ast <stdio.h> vix iffe -X ast -- doh
7806-09-27 regex/regdecomp.c: add
7906-09-26 regex/regcomp.c: handle KRE ~(...)<invalid-kre>
8006-09-25 reorganize to avoid native header intercepts
8106-09-15 uwin/crypt.c: _UWIN only!
8206-09-14 Makefile: tweak the ast_common.h bootstrap again (finally?)
8306-09-14 misc/optget.c: noncommercial => OPT_proprietary
8406-09-12 string/strelapsed.c: fix multi-char qualifier parse
8506-09-12 string/strtoi.h: drop [cClLqQwW] multipliers
8606-09-11 misc/optget.c: add numeric arg validity check
8706-09-07 misc/optget.c,tm/tmfix.c: fix uninitialzed var refs
8806-09-05 path/pathprobe.c: add version header verification
8906-08-01 Makefile: handle iffe vs FEATURE/common vs ast_common.h
9006-08-31 Makefile: add ast_map.h to the bootstrap list
9106-08-30 misc/glob.c: fix ~(E)re bug that stripped ~(E) before regcomp
9206-08-30 include/ast.h: add { integralof(x) pointerof(x) }
9306-08-27 string/strelapsed.c: fix off-by-one (too little) parse bug
9406-08-25 misc/optget.c: 0*<n>.* numeric option args => <n>.*
9506-08-22 misc/glob.c: handle ~(...) pattern options
9606-08-16 string/strelapsed.c: fix off-by-one (too far) parse bug
9706-08-16 regex/regcomp.c: accept but ignore ~(N)
9806-08-14 features/libpath.sh: add solaris LD_LIBRARY_PATH_64 check
9906-08-05 sfio/sfpool.c: pool SF_READ|SF_WRITE loop fix
10006-08-02 misc/fts.c: fix FTS_NOSTAT optimization to check for ..
10106-07-28 include/glob.h: add gl_extra for user globlist_t expansion
10206-07-27 features/common: #include "ast_map.h"
10306-07-26 comp/fnmatch.[ch]: allow <ast_map.h> to map fnmatch()
10406-07-22 cdt: snarf from kpv
10506-07-17 string/strperm.c: perm==-1 skips umask(1)
10606-07-17 sfio/sfvprintf.c: handle format invalid mb seq
10706-07-17 regex/regcomp.c: inline REG_SHELL => anchored, otherwise not
10806-07-17 regex/regcomp.c: inline B|G:basic E:REG_EXTENDED F|L:REG_LITERAL
10906-07-17 regex/regcomp.c: inline l:REG_LEFT r:REG_RIGHT
11006-07-17 regex/regcomp.c: inline a:REG_LEFT|REG_RIGHT p:~REG_LENIENT
11106-07-17 string/chresc.c: add \Uxxxxxxxx
11206-07-17 sfio/sfstrtof.h: ignore thousands sep after decimal
11306-07-17 string/tokline.c: splice() => spliceline() for bsd
11406-06-27 features/float,sfio/sfcvt.c: fix Nan logic
11506-06-27 port/astmath.c: fix long double isnan() test
11606-06-27 features/map.c: _map_libc for std => _ast_std
11706-06-25 string/strperm.c: handle posix = w.r.t. umask
11806-06-19 port/mnt.c,features/fs: handle netbsd getmntent api change
11906-06-18 regex/regstat.c: add REG_LITERAL check
12006-06-11 cdt/dtview.c: update from kpv
12106-05-31 sfio/sfhdr.h: fix _SFOPEN() typo
12206-05-09 comp/conf.sh: add native getconf -a names to the mix
12306-04-28 misc/optget.c: add solaris long option name compatibility
12406-03-09 string/strmatch.c: add REG_ADVANCE => REG_* flags
12506-02-14 comp/iconv.c: fix uwin iconv_list() /reg/ generator
12606-02-10 port/astconf.c: relax standard prefix filter
12706-02-08 sfrd.c,sfsync.c: lock logic bug fix
12806-02-01 port/astlicense.c: add { parent incorporation }
12906-01-26 port/astconf.c: fix { LIBPREFIX LIBSUFFIX } length
13006-01-06 features/lib: change _UNIV_DEFAULT probe to use cross{...}
13106-01-04 misc/stk.c: fix n**2 realloc behavior
13206-01-01 include/sfio.h: export { _Sfi _Sfmaxr }
13305-12-13 string/chresc.c: handle \C-X => control-X, \M- => ESC
13405-11-22 regex/regcache.c: add, convert string/strmatch.c to regcache()
13505-10-06 string/ccmap.c: update ebcdic-u to be idempotent
13605-09-28 vmalloc: snarf from kpv; fixes large block brk() thrashing
13705-09-26 misc/magic.c,misc/magic.tab: handle latest vcodex header
13805-09-12 misc/optget.c: reset opt_info.offset on error
139	 string/strtoi.h: strton() '.' multiplier only if m>1
140	 string/fmtesc.c: add unadvertized FMT_PARM for FMT_SHELL
14105-09-09 string/fmtesc.c: fix FMT_SHELL logic w.r.t. [$`]
14205-08-11 string/strerror.c: fix { sys_errlist sys_nerr } prototypes
14305-08-03 sfio: snarf sfvaprints sfaprints
14405-07-21 port/astconf.c: retain most recent synthesized lookup
14505-07-20 sfio/sfsetbuf.c: default file io size now 64K on all systems
14605-07-17 ccmap*: add microfocus cobol EBCDIC_U
14705-06-29 regex/regcomp.c: fix the A & B inline flag logic
14805-06-15 include/recfmt.h: add fs format flag to fmtrec()
14905-06-14 error.c: add ERROR_OPTIONS { break count match }
15005-06-07 features/stdio: drop FEATURE/limits to fix bootstrap circular dep
15105-06-02 features/*,Makefile: drop vestigel iffeio.h bootstrap workaround
15205-05-31 string/fmtbuf.c: unlock (spin) before each return -- doh
15305-05-30 sfio/sfpkrd.c: work around macos 10.4 recv(MSG_PEEK) bug
15405-05-27 regex: add REX_NEST (?%[S.][T.][OT])
155	 magic.tab: ammend bsd db magic
15605-05-23 regex: REX_NEST (?%[D.][E.][L.][Q.][oc]...)
15705-05-21 regex: state.fold[] is now locale specific -- doh
15805-05-19 regex: add REX_NEST (?%\\()<>[]""...) %(...) nested match
15905-05-15 recfmt.h: add recstr() reclen() fmtrec()
16005-05-13 optget.c: allow boolean options to take numeric values
16105-05-12 recfmt.c: add to recfmt.h, adjust Recfmt_t encodings
16205-04-30 sfio: add sfmaxr(), default 64K
16305-04-22 comp/omitted.c: fix magic() logic for files < 512 bytes
16405-04-20 cdt: snarf update from kpv; void* Dt_t.user added
165	 misc/error.c: library => ERROR_LIBRARY
16605-04-19 regex/regcomp.c: handle REG_SHELL [^...] == [!...]
16705-04-11 tm/tmxscan.c: handle yyy.mm.dd[-+.]hh.mm.ss.nnnnnn
16805-04-07 regex/regnexec.c: fix out of bounds boundary check -- ouch
169	 features/align.c: add jmp_buf to the alignment mix (ia64)
170	 vmalloc/vmhdr.h: add jmp_buf to the alignment mix (ia64)
17105-03-31 misc/optget.c: fix option { - _ } separator matching
17205-03-30 misc/glob.c: eliminate superfluous GLOB_NOMATCH stat() calls
17305-03-24 port/astwinsize.c: include <sys/ioctl.h> if possible
17405-03-23 string/ccmap.c: add ebcdic-m mvs cobol table
17505-03-11 comp/omitted.c: handle utime[s](const,const)
176	 comp/conf.tab: fix linux PID_MAX probe
17705-03-10 comp/setlocale.c: LC_* value "" => unset -- doh
178	 misc/optget.c: reorder _PACKAGE_astsa code for msgcc
17905-03-08 misc/optget.c: delete leading space in STYLE_nroff output
18005-03-07 sfio/sfhdr.h: drop extern _sfdscan -- clashes with sfvscanf.c static
18105-03-01 tm/tminit.c: add tmlocaltime() for tzset() getenv() override workaround
18205-02-20 features/tvlib: tmsettimeofday only for systems that have settimeofday
183	 features/float: fix mvs.s390 NaN tests
18405-02-18 tm/tmxmake.c: fix <0 west of GMT bug that warped to 1800's -- wow
18505-02-11 port/mnt.c: handle lynxos MOUNTED=/etc/fstab
18605-02-08 features/float,sfio.h,sfcvt.c,sftable.c: add INF and fix NAN
18705-02-04 features/lib: add _std_strtol (for lynxos)
188	 include/ast_std.h: add _std_strtol tests
189	 comp/strtod.c: #define S2F_function strtod
190	 misc/signal.c: fix ancient bsd SV_INTERRUPT vs. SV_ABORT clash
19105-01-11 sfio/sfmove.c: try to seek(fr) when fw==0
192	 comp/omitted.c: intercept utimes() too
193	 comp/omitted.c: add DOSPATHVARS env var path value conversions
194	 features/tvlib,tm/tvtouch.c: check for utimets()
195	 misc/optget.c: handle '-' or '_' option word separators
196	 sfio/_sfopen.c: allow stream mode changes after initialization
197	 sfio: sync with kpv: SF_SYNCED fix for ksh input loss bug
19805-01-09 tm/tmxfmt.c: fix %6N for n<100000000
19905-01-08 regex/regcomp.c: conj() => con() to avoid C99 clash
20005-01-05 tm/*: fix { %U %V %W } logic -- my head hurts
20104-12-30 tm/tmxtime.c: fix tm_isdst<0 loop
20204-12-23 vmalloc/vmbest.c: fix vmresize bug that didn't 0 new data
20304-12-19 misc/optget.c: broaden - long option match
20404-12-09 string/strtoi.h: fix terabyte 't' suffix math
205	 string/strmatch.c: flush cache on locale change
20604-12-01 tm/tmsleep.c: add
207	 tv.h,tv*.c,tv.3: move from pax
208	 tmx.h,tmx*.c,tmx.3: add high resolution tm(3) counterparts
209	 features/lib: add *another* sgi linux.ia64 memccpy bug check
21004-10-31 Makefile: __OBSOLETE__ now computed <6 months ago year>0101
211	 ccode.h,ccmapid.c: add ccmaplist(Ccmap_t*) iterator
212	 option.h,optesc.c: add 3rd arg, 1 => quote '?' too
213	 misc/magic.c: fix bug that terminated `string \0a' at \0
214	 misc/magic.c: handle vcodex() via decompose()
215	 misc/magic.tab: add vcodex magic
216	 features/stdio: handle _LARGEFILE64_SOURCE -- oops
217	 stdio/(fseek|ftell|fseeko|fsetpos|fgetpos|ftello).c: oops^2
21804-10-28 string/swapop.c: size==-4 => size=4 and extend op=3 to op=7
219	 tm/tmfix.c: fix tm_mon<0 logic
22004-10-22 tm/tmdate.c: handle 'final day feb 2004'
221	 port/astlicense.c: add query=all|id|${...}${...}
222	 port/astlicense.c: "free" => "mit"
223	 comp/omitted.c: revert to the open source license
224	 string/stropt.c: drop siz==0 => tab is hash table
225	 include/sfio.h: incorporate <sfstr.h>
226	 include/sfstr.h: drop
227	 disc/sfstrtmp.c: drop -- use sfstrbuf()
22804-10-20 misc/magic.tab: update tar magic
22904-10-18 ufc-crypt.h,crypt_util.c: drop GPL code
230	 crypt.c: add BSD code
231	 pathpath.c: disable { $0 $_ $PWD } related root search
23204-10-01 normalize ident stamps
233	 port/astlicense.c: add type=cpl -- yeah
23404-09-25 string/swapop.c: return op < size -- duh
23504-09-23 comp/spawnveg.c: :NOOPTIMIZE: -- volatile sometimes ignored
23604-09-21 comp/spawnveg.c: exec_errno_ptr is volatile -- duh
23704-09-14 tm/tmscan.c: add %| alternation and %& => tmdate()
23804-09-08 misc/optget.c: add :!value: omitted optional arg value
239	 misc/optget.c: fix --noNAME ambiguous option logic
24004-08-26 string/strperm.c: add who^mode to propagate least restrictive up
241	 astmath.c: add { frexpl ldexpl } checks for ast.req
242	 port/astlicense.c: ignore first option if non-assignment
243	 include/ast_dir.h: move d_fileno map before struct defs -- duh
24404-08-24 vmalloc/vmbest.c: add {VM_region} VMCHECK=+r for region segment checks
245	 misc/recfmt.c,include/recfmt.h: add
24604-08-23 vmalloc/vmbest.c: add {VM_primary VM_secondary} VMCHECK=-s for primary
247	 features/common: punt to <stdarg.h> for unknown va_list
24804-08-11 vmalloc: sync _UWIN libposix hooks
24904-07-27 features/common,features/limits.c: ULL suffix for unsigned _ast_int8_t
25004-07-22 include/ast.h,comp/eaccess.c: add eaccess() for effective access()
25104-07-19 comp/open.c,sfio/_sfopen.c: { O_RDONLY O_WRONLY O_RDWR } are values
25204-06-28 misc/error.c: check level after error_info.auxilliary
25304-06-24 string/strmatch.c: strgrpmatch() match[] now variable size array
25404-06-17 features/common: change _DLL null define to (the standard ast) 1
25504-06-11 misc/optget.c: allow optional [-|+|--|++] optstr() option prefix
256	 misc/optget.c: reset optstr() state on 0 return
257	 misc/optget.c: text()=>textout() linux.ppc symbol hijack workaround
25804-05-31 sfio/sfreserve.c: no side buffer if user buffer is large enough
25904-05-27 string/fmtbuf.c: handle one concurrent buf > sizeof(buf)
26004-05-24 regcomp.c: fix no-advance initialization
26104-05-05 conf.tab,conf.sh: update to align with standards
262	 magic.tab: ms suffix update
26304-05-04 port/lcgen.c: fix territory initialization
26404-04-15 tm/tmdate.c,include/tm.h: fix specific and ordinal days
26504-04-08 astconf: retain { HOSTTYPE LIBPATH LIBPREFIX LIBSUFFIX } strict vals
26604-04-07 vmalloc/vmbest.c: fix alpha tiny block bug
267	 vmalloc/malloc.c: re-enable on alpha
26804-03-30 tm/tminit.c: GMT => UCT only if tz.daylight not defined
26904-03-25 vmalloc/malloc.c: _AST_std_malloc=1 for __alpha
270	 path/pathprobe.c: per-user probe dir => $HOME/.probe/$HOSTTYPE
27104-03-23 regex/reglib.h: fix isw*() redefines
27204-03-17 features/stdio: no __FILE override for __CYGWIN_ (sys/reent.h clash)
273	 sfio/sfhdr.h,sfio/sfsetbuf.c: lower sfmove() default buf size 4x
27404-02-29 comp/omitted.c: move env trace after PATH fixup
275	 comp/omitted.c: cygwin spawn _P_DETACH => _P_NOWAIT+setpgid(pid,0)
276	 misc/optget.c: fix html mailto: match
277	 port/astlicense.c: add type=test for fixed 2001 date
278	 features/float: check local NaNQ first
279	 vmalloc/vmhdr.h: fix _vmextern_ vm_truncate return type
280	 misc/magic.tab: add elf s390 index=22
28104-02-26 vmalloc: VMCHECK a:assertions c:arena-check w:warn-instead-of-abort
282	 sfio/sfvscanf.c: fix extf arg selection
28304-02-24 features/dirent: set nodefine to avoid ast_std.h _typ_off64_t undef
284	 disc/sfkeyprintf.c: only case pattern must be ()[] balanced
28504-02-14 include/sfio_t.h: add SF_DCDOWN, SFDCNEXT(), SFDCPREV()
28604-02-13 string/strmatch.c: fix bug that didn't save one-time sub[] size
287	 vmalloc: -g: export VMCHECK=1 enable malloc/free checks
288	 vmalloc: -g: free(0) to check and disable malloc/free checks
289	 vmalloc: -g: free(1) to check and enable malloc/free checks
29004-02-11 Makefile: add :P=A: to conf and lcgen exec for cross-compile
291	 regex: use MBSIZE() instead of mbsize() to grab 1 char on err
292	 vmalloc/vmbest.c: updated to do more comprehensive DEBUG tests
29304-02-04 sfio/sfraise.c: add sfraise(0,a,b) to iterate over all streams
29404-02-01 vmalloc/vmbest.c: _BLD_DEBUG free(0) checks the arena
29504-01-31 features/vmalloc: fix typo that missed _mmap_zero
29604-01-23 string/strerror.c: handle real strerror() return value overwrite
29704-01-11 path/pathpath.c: fix size vs. sizeof(buf) typo
29803-12-22 misc/magic.tab: dos EXE tweaks
29903-12-05 vmalloc: sync with kpv, adding exceptf announcements
30003-12-04 port/astlicense.c: fix expand() loop sentinel bug
30103-12-02 include/ast.h: mbchar() advances by 1 on mbtowc() error
302	 misc/fts.c: increase MINNAME to 32
30303-11-21 vmalloc/vmbest.c: export VMCHECK=1 to enable $(CC.DEBUG) vmcheck()
304         vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT
305	 misc/magic.c: add { cobol copybook pl1 } and suffix preference
30603-11-12 features/stdio: drop cuserid,getopt for SUSV3
30703-11-11 vmalloc/*: merge kpv update -- this should stomp the compaction bug
30803-10-23 comp/iconv.c: fix sfreserve lock fallback
30903-10-20 sfio/_sfopen.c: add to allow user sfopen() intercept
31003-10-17 regnexec.c: fix exec time REG_LEFT, \x.... => wctomb()
31103-10-12 string/strtoi.h: fix strton '.' overconsumption
31203-10-12 comp/iconv.c: identity is always (iconv_t)0
31303-10-09 string/fmtesc.c: fix FMT_SHELL to check for all shell magic chars
31403-10-01 port/astlicense.c: unknown authors copied verbatim (instead of ignored)
31503-09-30 string/chresc.c: handle \u..., \x... consumes all trailing hex digits
316	 string/stresc.c: \u... and \x... > UCHAR_MAX => wctomb()
31703-09-29 fnv.h: add
31803-09-23 modedata.c: table is for external modes, so no arch specific hacks
319	 optget.c: fix option prefix match translation bug
320	 optget.c: add `<length> <name>=<value>\n' to optstr()
321	 features/lib: add memcmp() test for sgi optimzation bug
32203-09-22 regex.h,regcomp.c: add regncomp()
323	 regclass.c: fix for loop dangling ; in regaddclass()
32403-09-20 sftable.c,sfvprintf.c: fix SFFMT_CHAR handling to match extf api
32503-09-19 sfmode.c: update release to kpv's
32603-09-17 regcomp.c: add pedantic backref error checks
32703-09-16 regnexec.c: exec time REG_LEFT => don't advance past initial position
328	 regclass.c: add regaddclass() for user defined [:class:]
329	 regexec.h: REG_VERSION_N2X, add redisc_t {re_map} ccode map
330	 regstat.c: add regstat_t
33103-09-11 optget.c: --n:=v sets opt_info.assign=':', opt_info.number enabled
33203-09-09 disc/sfkeyprintf.c: *pn on lookup is arg separator; lookup "" arg too
33303-09-05 optget.c: [f:l*?] preserves user long name past '*' in opt_info.name[]
33403-09-03 sfstr.h: add sfstrpend() for #pending bytes in read buffer
33503-08-25 regex: add REG_FIRST, optimize bm
336	 features/lib: _AST_no_spawnveg==1 falls back to fork/exec
33703-08-22 features/stdio,stdio/asprintf.c,stdio/vasprintf.c: add
33803-08-21 path/pathnative.c,path/pathposix.c: interix updates
339	 features/botched: add cygwin _stat => _stat64
34003-08-15 include/ast.h: map out bsd strmode()
341	 features/common: add interix _ast_intmax_t workarounds
342	 misc/fs3d.c: 3d mount test now uses "" instead of NiL (or cygwin dumps)
34303-08-11 string/fmtesc.c: fix optional quoting checks
344	 tm/tmdate.c: fix > 1 year of seconds arithmetic
345	 tm/tmfix.c: fix leap year adjustments
34603-08-01 features/lib: beef up sock_peek test for interix
34703-07-29 features/float: add -lm to frexp... test
348	 Makefile: fix -lm astmath test sense
34903-07-26 features/mem.c: favor _mem_sbrk over _mem_mmap_*
35003-07-22 vmalloc/vmbest.c: fall back to sbrk() if mmap() fails
351	 features/mem.c: _mem_sbrk means sbrk() and brk() work
35203-07-17 regex/regcomp.c: fix bug that treated KRE X{n,m} like {n,m}(X)
353	 misc/magic.c: check MAGIC_VERBOSE for all load() messages
35403-07-14 misc/optget.c: handle [...]{[...]\f...\f...}
35503-06-21 misc/sigcrit.c: block SIGCHLD if _lib_sigprocmask || _lib_sigsetmask
356	 comp/spawnveg.c,sfio/sfmode.c: use sigcritical() SIG_REG_* macros
357	 comp/spawnveg.c: drop ENOEXEC logic
358	 vmalloc/*: snarf kpv KPVCOMPACT() fix
359	 vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT (just in case)
360	 string/strdup.c: drop __strdup() etc. intercepts -- malloc gets it
361	 features/mem: define _mem_method and _mem_* possible values
362	 vmalloc/malloc.c: _AST_mem_method==_mem_* to force mem get method
363	 sfio/sfputr.c: __ia64 memccpy is bogus -- how many tries do they get?
364	 path/pathshell.c: verify abs path and access(path,X_OK) -- duh
365	 vmalloc/vmhdr.h: add private _Vmessage() for non-sfio ASSERT()
366	 port/astconf.c: fix bug that always returned the minmax value
36703-06-11 comp/*.c: reorder macro hding for mvs.390 and <ast_map.h>
368	 features/vmalloc: add _lib_brk and _lib_sbrk verification
369	 include/ast_std.h,etc.: add _map_malloc for malloc => _ast_malloc
370	 comp/conf.sh: fix SI_* and *_SI_* macro redefs
371	 ast.h: VMDEBUG or _BLD_DEBUG enable <vmalloc.h> and VMFL tracing
372	 vmalloc/vmtrace.c: _PACKAGE_ast __FUNCTION__ is a string
373	 vmalloc/vmtrace.c: set trace file fd FD_CLOEXEC
374	 vmalloc/vmbest.c: set /dev/zero mmap fd FD_CLOEXEC
375	 features/mmap: fix ancient read() vs. mmap() time arithmetic typo
376	 vmalloc/malloc.c: _AST_std_malloc==1 to force standard malloc
37703-06-09 comp/omitted.c: add _imp__FUNCTION sybols for __CYGWIN__ static link
378	 vmalloc/vmbest.c: handle systems with sbrk() but no brk()
37903-06-04 port/astconf.c: drop non-standard diagnostics
38003-06-03 comp/conf.sh: rework symbol collision logic
38103-05-30 conf.tab,conf.sh,astconf.c: add <sys/systeminfo.h> sysinfo() SI_*
38203-05-29 ccode.h: rework for extensibility, drop obsolete mematoe(), memetoa()
38303-05-28 regex/*: recode to use isw*() directly when needed, is*() otherwise
38403-05-27 features/vmalloc: fix _std_malloc test
38503-05-25 misc/optget.c: fix optstr() ???* internal options
38603-05-24 misc/optget.c: fix (ancient) argv null dereference
38703-05-23 comp/getcwd.c: don't intercept on _WINIX -- unreliable st_ino
38803-05-22 sfio/sfsprintf.c: n<0 => don't append '\0'
38903-05-18 misc/fts.c: re-stat FTS_DP to update nlink/times
390	 misc/fts.c: add FTSENT.stack to eliminate getlist() recursion
391	 regex/ucs_names.h: use "..." catenation to placate some cc's
39203-05-11 string/strtoi.h: handle "-" "+" "0x" "11#"
39303-05-09 vmalloc/vmbest.c: large memory allocation tweaks
39403-05-06 misc/optget.c: fix getopt_long() prefix==1 bug that missed short flags
39503-04-27 comp/system.c: handle <ast_map.h>
39603-04-24 vmalloc/vmmopen.c: drop dup <unistd.h>
39703-04-21 tm/tmdate.c: fix next hour/min logic
39803-04-15 vmalloc/malloc.c: intercept __malloc() along with __libc_malloc()
399	 string/strdup.c: intercept __strdup() along with __libc_strdup()
400	 features/mmap: consolidate from features/(lib|sfio|vmalloc)
401	 add _NO_MMAP==1 to disable all mmap()/munmap() calls
402	 path/pathposix.c: add
40303-04-14 comp/setlocale.c: fix debug_mbtowc() return value for *s==0 || n < 1
404	 comp/iconv.c: fix error return errno values
40503-04-11 misc/stk.c: fix stkgrow() realloc bug
40603-04-05 string/tok.c: support readonly single token input strings
407	 disc/sfdcdio.c: fix F_DIOINFO and FDIRECT #ifdef's
408	 include/ast_std.h: allow _LARGEFILE64_SOURCE on __hppa
409	 features/common: fix `tst _foo_' => `tst foo_' typo
410	 features/float: fix `tst _foo_' => `tst foo_' typo
411	 features/float: add FLTMAX_(UINTMAX_MAX,INTMAX_MAX,INTMAX_MIN)
412	 comp/omitted.c: fix pathconf => _pathconf => _ast_pathconf loop
41303-04-03 features/float: add _ast_no_um2fm: no usinged intmax => floatmax cast
414	 vmalloc/vmbest.c: add getenv("VMCHECK") to initialize Vmcheck
41503-03-28 include/ast_dir.h: add D_TYPE; { D_FILENO D_TYPE } must be #ifdef'd
416	 misc/fts.c|getcwd.c|glob.c,preroot/getpreroot.c: add D_FILENO #ifdef's
417	 Makefile: make sure _BLD_ast is defined for all compiles
41803-03-27 ast_vfork.h: generate from features/vfork to pick up headers/pragmas
41903-03-25 comp/omitted.c: drop free() of live environ
420	 path/pathshell.c: allow trailing .exe -- pox on that
421	 string/strtoi.h: fix bug leading 3 digits before thousands sep bug
422	 string/(fmt|str)[gu]id.c: we know root when we see it
42303-03-24 misc/optget.c: handle : and ? in := default value
42403-03-21 ast_std.h: drop all spawn*() but spawnveg()
425	 obsolete/spawn.c: add for dropped spawn*()
426	 features/lib: _use_spawnveg if spawnveg() is a win over fork()/exec()
427	 features/lib: drop NutForkExecve() and _map_spawnve
428	 features/lib: fix memccpy test to clean up /tmp droppings
429	 comp/spawnveg.c: call posix_spawn() if implemented
430	 comp/omitted.c: add spawnve() intercept
431	 comp/getoptl.c: set getopt_long() optind even if no options
432	 tm/tmfmt.c: add %Q<delim>recent<delim>distant<delim>
433	 misc/optget.c: fix trailing '*' for option and option args
434	 sfio/sfmode.c: getenv("_AST_SFIO_OPTIONS") [,]SF_LINE[,] for fd {0,1,2}
435	 vmalloc/*: kpv sync for uwin build independent of libast
43603-03-18 port/astconf.c: switch to dynamic string values (saves 7K data/bss)
437	 string/strmatch.c: switch to dynamic regex cache (saves 3K data/bss)
438	 regex/regcoll.c,ucs_names.h: initialize rw tables from smaller ro data
439	 features/lib: add vfork test for passing SIG_IGN across exec
440	 features/lib: add spawn test for passing SIG_IGN across spawn
44103-03-17 comp/omitted.c: unlink() renames to .deleted dir in case file open
442	 sfio/sfpopen.c: handle mode "" for spawn with no pipe
443	 features/float,comp/frexp.c,comp/frexpl.c: add pow2() table alternative
44403-03-12 features/lib: fix linux.ia64 memccpy() tests -- now its their turn
445	 features/vmalloc: fix /dev/zero test
446	 features/align: _ast_intmax_t and _ast_fltmax_t join the union
447	 misc/stk.c: fix struct frame size to align data
448	 disc/sfdcdos.c: change sfslen() => sfvalue(f)
44903-03-10 misc/optget.c: handle [f\f:x:lll\f?ddd]
45003-03-07 port/astconf.c: uninitialized CONFORMANCE + POSIXLY_CORRECT => standard
45103-03-05 comp/omitted.c: make sure at least /bin is in PATH to find cygwin dlls
45203-03-02 path/pathshell.c: write access to /bin is effectively root
45303-02-28 features/float: add (FLT|DBL|LDBL)_U?(LONG|LONGLONG|INTMAX)_(MIN|MAX)
45403-02-25 features/lib: change vfork() test to use _exit() instead of exit()
45503-02-23 include/error.h: update ERROR_VERSION for error_info.number space
45603-02-22 comp/conf.sh: wrap ksh check in eval to avoid premature exit
45703-02-21 misc/fts.c: verify chdir(..) to avoid malicious dir rename()
45803-02-19 string/strtoip4.c: isspace() instead of ' '||'\t'
45903-02-17 regex/regcomp.c: fix stats.l REX_REP logic that botched REX_BM
46003-02-13 string/base64.c: handle catenated encodings
46103-02-11 features/libpath.sh: change LIBPATH to <dir>[:<env>[:<pat>]][,...]
46203-02-07 path/pathfind.c: allow "/dev/null" to be PATH_REGULAR
46303-02-06 include/ast.h,fmtquote.c: add FMT_ALWAYS|FMT_ESCAPED|FMT_SHELL|FMT_WIDE
46403-02-05 tm/tmdate.c,tm/tmword.c,string/strelapsed.c: '_' treated like ' '
46503-02-01 string/strelapsed.c: handle ps style [day-][hour:]min:sec
46603-01-31 port/astlicense.c: fix author=* match
46703-01-30 include/tm.h: add tmisleapyear() macro
46803-01-29 comp/getopt.h,comp/getoptl.c: add gnu getopt_long(), getopt_long_only()
469	 include/ast_getopt.h: for non-gnu part of comp/getopt.h
470	 include/ast_std.h: include <ast_getopt.h> instead of <getopt.h>
47103-01-28 ast.h,string/base64.c: add base64encode() and base64decode()
472	 path/pathfind.c: verify S_ISREG()
47303-01-24 path/pathexists.c: fix abs dir bug and deal with case ignorance
47403-01-23 path/pathpath.c: honor PATH_ABSOLUTE for the easy case too
47503-01-22 path/pathprobe.c: fix search to find both the probe script and command
47603-01-17 misc/magic.tab: application/zip => appplication/(gzip|pzip|zip)
47703-01-14 misc/optget.c: change href="" to href="."
47803-01-10 include/ast_std.h: strtold() import hackery for static __CYGWIN__
47903-01-03 include/regex.h,regex/regcomp.h: add REG_SHELL_GROUP
480	 include/ast.h,string/strmatch.c: add STR_GROUP for REG_SHELL_GROUP
48102-12-15 include/error.h: errorcontext => Error_context_s (compatible til 2004)
48202-12-06 misc/sigdata.c: add NoF(sigdadata) -- why nmake was uninterruptable!
48302-12-03 comp/omitted.c,features/omitted: handle cygwin alarm() return botch
48402-11-27 misc/swapop.c: op=3,size=4 => op=7
485	 string/strlcat.c,strlcpy.c: fix uwin decl clash
48602-11-26 sfio/sfvprintf.c: fix sfsprintf() '\0' termination bug
48702-11-22 misc/glob.c: move static struniq() to libast extern
488	 string/fmtversion.c,include/ast.h: add fmtversion
48902-11-18 string/strncopy.c: add
490	 misc/magic.tab: list size for magicid.h magic
49102-11-14 sfio/sfvprintf.c: add %#c for C escapes
492	 include/error.h: add ERROR_NOTIFY context flag for builtin commands
49302-11-11 string/strtoi.h: add S2I_size for strnto*() size_t 2nd arg
494	 sfio/sfstrtof.h: add S2I_size for strnto*() size_t 2nd arg
495	 comp/putenv.c: add setenv() and unsetenv() wrappers for setenviron()
49602-10-31 path/pathfind.c: add dir of including file to the pathinclude() list
497	 misc/optesc.c: add
49802-10-30 string/strtoip4.c: set next char pointer even on error
49902-10-29 comp/resolvepath.c: add (size_t version of realpath())
500	 misc/mime.c: fix mimehead() to ignore null content values
50102-10-28 misc/glob.c: add GLOB_STARSTAR for /**/ and GLOB_NOTDIR optimization
50202-10-27 string/struniq.c: add
50302-10-23 features/common: fix off-by-one loop check
50402-10-18 include/ast_std.h: avoid off_t,ftruncate,lseek,truncate redefinitions
50502-10-17 misc/mime.c: handle type/* match, fix bogus header parse
50602-10-04 sfio/sfstrtof.h: S2F_static <0:export =0:private >0:static
50702-10-02 features/common: don't define _WIN32; define _WINIX => unix on windows
508	 features/tty: finally stomp the bsd _POSIX_VDISABLE redefinition
509	 misc/fastfind.c: add more specific findwrite() error messages
510	 comp/omitted.c: fix cygwin utime() to update st_ctime
511	 comp/strtol.c,strtoul.c: __CYGWIN__ static link workaround XXX
512	 string/fmtls.c,fmttime.c: tmform() => tmfmt()
51302-09-22 port/astconf.c: return values in fmtbuf() buffer instead of stack
514	 port/mnt.c: don't set MNT_REMOTE for win32 ?:\* paths
515	 sfio/sfvscanf.c: _sfdscan() is library global (not static)
51602-09-21 path/pathkey.c: add tool arg for mamake compatible hash
517	 features/fcntl.c: handle iffe _hdr_lcl_* => _lcl_* change
51802-09-15 comp/conf.sh: fix enum vs. macro test
519	 cdt: kpv sync
52002-09-11 ast.h,features/common: move _WIN32 macro init to features/common
521	 features/common: enable __EXTERN__ and __DEFINE__ for _WIN32&!_UWIN
522	 features/float: add -lm to _ast_*_nan_init tests
523	 vmalloc: kpv sync with vmresizef => vmgetmem
524	 features/iconv: must have both <iconv.h> and iconv_open()!
525	 features/vmalloc: alloca test must compile *and* link
526	 sfio/sfvscanf.c,sfstrtof.h: add flag arg to char get, fix NaN loop
52702-09-10 vmalloc/vmhdr.h: enable getpagesize() and sbrk() prototypes
528	 features/fcntl.c: enable mmap64() prototype
529	 include/ast_windows.h: windows.h wrapper with ast namespace workarounds
53002-09-07 misc/mime.c: fix quoted value parse bug that ate the whole line
53102-09-05 features/vmalloc: add free() to _std_malloc test
532	 include/ast.h: NoF(x) now defines _DATA_x for !_BLD_DLL too
533	 tm/tmlocale.c: { C POSIX en } == unix dadgummit
53402-08-29 path/pathfind.c: initialize Dir_t.next=0
53502-08-28 uwin/rint.c: update
536	 features/libpath.sh: "bin" is now the default value
53702-08-22 vmtrace.h: add for debugging
53802-08-20 misc/magic.c: convert to use <cdt.h>
539	 vmalloc/vmresizef.c: add for generic discipline resizef default
540	 string/strelapsed.c: allow long time component names
54102-08-19 misc/optget.c: add `.fp 5 CW' to --nroff output
542	 string/(fmtfs|fmtuid|fmtgid|strgid|struid).c: convert to use <cdt.h>
543	 include/dt.h,cdt/dtnew.c: add for dtopen() in specific vm region
54402-08-13 comp/omitted.c: fix bzero logic for e.g. unixware.i386
545	 include/ast.h: add fmtbase->fmtbasell; swap in 2003-09-01
54602-08-12 regex/regnexec.c: fix REG_MINIMAL REX_DOT mb bug
54702-08-08 features/iconv: <ast_common.h> instead of <sys/types.h> <ast_common.h>
54802-08-07 regex/regcomp.c: recognize anchors in BRE subexpressions
54902-08-06 comp/iconv.c: handle win32 cpNNNN == windows-NNNN aliases
55002-08-05 cdt/*: sync with kpv src
55102-08-02 features/iconv: include sys/types.h for ast_types.h
55202-08-01 misc/magic.c: magic file "." names the default
553	 misc/magic.c: handle addr type (from irix string)
554	 features/lib: move malloc tests to features/vmalloc
555	 features/vmalloc: snarf tests from features/lib
556	 vmalloc/*: sync with kpv src
557	 comp/libc.c: dropped -- __libc_* intercepts moved to vmalloc/malloc.c
55802-07-30 features/lib: handle __libc_malloc() in _std_malloc test
559	 vmalloc/malloc.c: add gnu pvalloc()
560	 features/vmalloc: fix alloca check
56102-07-29 features/limits.c: handle netbsd guards
56202-07-27 sfio/sfpoll.c: handle rw pipes
56302-07-25 features/iconv: include ast_types.h for size_t in ast_iconv.h
56402-07-18 apply LARGEFILE64 header prototype clash patches
565	 misc/optget.c: __EXTERN__ _opt_info_ instead of opt_info
56602-07-17 ast_std.h: memzero() now defaults to memset() instead of bzero()
56702-07-16 ast_std.h: add ast.env_serial
568	 misc/setenviron.c: increment ast.env_serial
569	 include/tm.h: tmset() now calls tminit() directly
570	 tm/tminit.c: check ast.env_serial for env change
571	 tm/tmfix.c: speed up for large values of tm_mday
57202-07-15 comp/fnmatch.c: fix memory leak caused by missing regfree()
573	 comp/strstr.c: fix broken interpretation and implementation
574	 comp/iconv.c: intercept (but no-op) null to and from buffer pointers
57502-06-27 ast_std.h: map _sysconf => _ast_sysconf for sun
57602-06-26 cdt,sfio,vmalloc: kpv sync -- is this ever easy?
57702-06-24 sfio: kpv sync, vfwscanf(),fputw() fix (wcslen(x)*sizeof(wchar_t)!!)
578	 misc/fts.c: fix symlink chdir() optimzation bug
57902-06-11 sfio/sfwrite.c: string to file fix
580	 Makefile: __OBSOLETE__==20020101
58102-06-01 regex/regcomp.c: REG_DELIMITED now consumes the delimiter
58202-05-31 regex/reglib.h,regcomp.c,regnexec.c: null subexpression fixes
58302-05-24 misc/fts.c: disable dir link counts in 3d
584	 misc/magic.c: fix "*(mkfile)" sh pattern to "*@(mkfile)"
58502-05-20 regex.h,regex/regsubcomp.c,regex/regsubexec.c: add
586	 regex/regsub.c: deprecate
58702-05-16 tm/tmfix.c: fix '60+n min/sec ago' bug for n min/sec after the hour
58802-05-14 regex/regsub.c: fix (^|x) null match early termination bug
58902-05-13 dir/dirlib.h: drop errant extern==__EXPORT__
590	 features/uwin: add uwin lib tests
591	 uwin/*.c: check features/uwin for stubs
592	 features/float: add nan representation generation
593	 sfio/sftable.h: used _ast_*_nan_init for huge values
59402-05-09 misc/fts.c: fix virtual top to force ``child'' stat()
595	 features/common: define va_copy() only if not in <stdarg.h>
59602-05-01 string/strtoip4.c: cisco inverted quad mask must have 4 parts
59702-04-30 misc/magic.tab: fix pzip version check
59802-04-19 string/strtoip4.c: handle cisco inverted quad mask n.n.n.n/i.i.i.i
59902-04-18 misc/fts.c: add chdir() verification stat() optimizations
600	 path/pathkey.c: check PROBE_ATTRIBUTES for list of vars
60102-04-12 port/astlicense.c: type=open tweak, fix author list spacing
60202-04-11 regex/regcomp.c: check for pattern number overflow
60302-04-05 tm/tmfmt.c: add %u
60402-04-04 sfkeyprintf.c: fix %c numeric value
605	 path/pathpath.c: check plain path first -- duh
60602-04-03 misc/fts.c: fix (FTS_PHYSICAL|FTS_NOSTAT) stat optimizations
607	 ftwalk.c: only clear FTW_DELAY if FTW_CHILDREN
608	 ftwalk.h: add FTW_NSOK for FTW_DELAY
60902-03-29 ast.h: drop strerror() prototype -- already in <ast_std.h>
610	 features/stdio: check for _SFIO_H redundant _Sfstd* declarations
61102-03-26 misc/glob.c: fix GLOB_LIST gl_flags values
61202-03-24 port/mnt.c: update bsd fstype name and mount option logic
61302-03-23 Makefile: add ast_wchar.h to the .check.hdr list (for mamake)
61402-03-17 features/stdio: hack around g++ 3.* clashes
615	 Makefile: add ast_nl_types.h to the .check.hdr list (for mamake)
616	 string/strtoip4.c: fix validity check bug that only checked last part
61702-03-14 misc/optget.c: fix --keys to not expand inline \f...\f
61802-03-12 port/astlicense.c: add type=free
619	 path/pathaccess.c: sibling ".." search ignores relative dirs
620	 sfio/sfvscanf.c: sfstrtof get() must return 0 on eof
62102-03-11 path/pathexists.c: check path by pairs checking {ENOTDIR,ENOENT}
62202-02-14 features/float: copy local min/max macros to avoid printf roundoff
623	 features/wchar: include <ast_common.h>, not <ast_std.h>
624	 misc/magic.c: match[]=>matches[] to fix K&R match() macro conflict
625	 include/vmalloc.h: include <stdlib.h> for !_PACKAGE_ast
626	 uwin/mini.sym: add sprintf (now required by features/common)
627	 regex/regnexec.c: truncate wide chars for <ctype.h> functions
628	 Makefile: fix MAM ast_common.h sequencing bug by making it first
629	 cdt/dthash.c: fix DT_DELETE memory leak (DT_DETACH typo)
630	 cdt/dthash.c: fix DT_DELETE double free (dt->data->here typo)
631	 regex/regcomp.c: fix recomb() to reject RE with backref
632	 features/iffeio: explicitly generate stdio.lcl
633	 stdio: add {fcloseall,f(get|put)s_unlocked,fmemopen,getdelim,getline}
634	 tmmake,tmtime: allow negative time_t if native localtime/gmtime do
635	 tmdate: allow years before 1969
636	 fmtfmt: add
637	 include/ast.h: add { PATH_TOUCH_CREATE PATH_TOUCH_VERBATIM }
638	 Makefile: add std/*.h for std header iffe overrides
639	 comp/iconv.c: fix non-C win32 sfreserve() loop
64002-02-11 features/common: separate long long / long double tests
641	 features/common: verify printf handles long long / long double
64202-02-02 include/ast_std.h,sfio/sfhdr.h: drop _hdr_locale tests -- always on now
643	 include/ast_std.h: trust _UWIN <unistd.h>
64402-01-31 port/mnt.c: add aix options field
64502-01-30 comp/strstr.c: add for ancient s5
646	 stdio/_flsbuf.c: only on systems that transfer to native (e.g., uwin)
647	 string/strtoi.h: cat min/max error return values
64802-01-28 features/tty: add cf[gs]et[io]speed macros for <termio.h>
649	 comp/rename.c: punt to (ancient) /usr/lib/mv_dir on EISDIR
65002-01-24 sigcrit.c: fix SIGCLD!=SIGCHLD interrupt loop
651	 sfvprintf.c: convert fast io macros to functions for uts.390 cc
652	 string/strtoi.h: drop #pragma prototyped for standalone sfio
653	 sfdcsubstr.c: rename from sfdcsubstream.c for 14 char fs
65402-01-22 execlp,execvp,execvpe,spawnlp,spawnvp,spawnvpe: fix __EXPORT__
655	 spawnlp,spawnve,spawnvp,spawnvpe: handle ms mode arg -- barf
656	 sftable.c: ifdef hacks for _WIN32&_ALPHA_ fp exception
657	 _stdfun.c: add _UWIN&_ALPHA_ iob map
65802-01-18 sfio/sfstrtof.h: drop #pragma prototyped for standalone sfio
65902-01-17 features/hdr: don't include <stddef.h> after it doesn't check out!
66002-01-16 misc/magic.c: add version type for YYYYMMDD or [a.][b.]c.d
661	 misc/magic.c: recode mime %s parse -- sensible and no buffer overflow
66202-01-15 misc/magic.tab,magicid.h: add generic binary magic number and header
66302-01-12 tm/tmlocale.c: override win32 default date for {C,POSIX,en} locales
664	 comp/omitted.c: fix cygwin workaround logic bugs
66502-01-09 stdio/fseeko.c,ftello.c: add from UNIX98
66602-01-08 comp/conf.sh: use $cc instead of cc
66702-01-07 string/strlcat.c,string/strlcpy.c: add bsd api
66801-12-18 comp/conf.tab: fix LFS_CFLAGS default for sun _CS_LFS_CFLAGS botch
669	 features/common: add hdr stdarg test
670	 tm/tmdate.c: handle YYYY/MM/DD
67101-12-10 misc/magic.tab: add generic 0x00010203 binary magic
67201-12-03 path/pathprobe.c: return HOME relative path if readonly/non-suid fs
67301-11-30 misc/optget.c: add simple cache for repeat offenders (like ksh read)
674	 sfio/sfhdr.h: preserve errno across SFMMSEQON-SFMMSEQOFF
67501-11-29 magic.tab: fix GIF version number listing
67601-11-28 string/fmtbase.c: p!=0 => base always included in output
67701-11-26 misc/fts.c: empty path is an error
67801-11-14 misc/optget.c: fix --?+SECTION queries to include paragraphs
67901-11-20 regex/regnexec.c: fix REG_MINIMAL character class match bug
68001-11-19 features/lib: retain _lib_confstr for all solaris releases
68101-11-16 comp/setlocale.c: fix !_lib_setlocale typo
68201-10-31 regex/ucs_names.h: add string catenation to keep line length low
683	 misc/fastfind.c: handle gnu slocate db read
684	 misc/optget.c: add --?+SECTION queries
685	 comp/fnmatch.h: add FNM_NOSYS
68601-10-30 tm/tmdate.c: fix cron specs when both wday and mday are specified
68701-10-20 misc/glob.c: fix bug that called \ trim() twice on same path
688	 misc/glob.c: fix \ trim() bug that restored / to wrong position
689	 string/fmtre.c: fix { ^ . $ } translations
690	 misc/optget.c: use original string if translation fails -- duh
691	 sfio/sfhdr.h: assume <errno.h> assigns proper atttibutes to errno
692	 comp/regcmp.c: __ia64 workaround fixed by proper CC.DLL probe
693	 comp/getdate.c: __ia64 workaround fixed by proper CC.DLL probe
694	 features/lib: add lib getdate
69501-10-18 features/lib: check for strtod static link collision
696	 features/float: add another signed cast for old bsd cc
697	 features/wchar: add <stdlib.h> <stdio.h> before <wchar.h> for old bsd
69801-10-17 sfio/sfcvt.c: limit max precision to { FLT_DIG DBL_DIG LDBL_DIG }
699	 sfio/sfcvt.c: fix %[aA] format to always have leading 0[xX]1.
700	 sfio/sfvprintf.c: handle %C %lc %S %ls for wchar_t args
701	 sfio/sfvscanf.c: handle %C %lc %S %ls for wchar_t args
702	 string/fmtmode.c: fix bug that omitted trailing '\0'
70301-10-12 misc/optget.c: . => \&. for --??nroff
704	 comp/wc.c: fix mbstate_t initialization typo
705	 features/float: fix max integer / float loop termiation
706	 features/float: fix LDBL_UINTMAX_MAX typo that did DBL_UINTMAX_MAX
70701-10-11 include/sfio.h: fix _Sfstd* import/export
708	 features/common: fix _UWIN __DYNAMIC__() definition
70901-10-06 features/fcntl.c: { O_BINARY O_TEXT } default to 0
710	 features/omitted: add for comp/omitted.c
711	 sfio/sfopen.c: O_BINARY default for _WIN32&&!_UWIN
71201-10-05 misc/glob.c: fix `\(x/*' GLOB_NOMATCH bug that returned `(x'
713	 misc/optget.c: fix localization lookup that didn't drop doubled : ? ]
71401-10-04 comp/setlocale.c: handle sizeof(wchar_t)!=4 in debug locale
715	 comp/conf.sh: handle sytems where _SC_* is both an enum and a macro
71601-09-25 astconf: add LIBPREFIX
71701-09-20 features/common: add __DYNAMIC__() for dll externs
71801-09-19 cdt: kpv update
719	 mb*() macros: update for ksh conversion, extend debug locale
72001-09-16 tm/tmlocale.c: add compiled in defaults for C locale
721	 misc/glob.c: add gl_nextdir callback for GLOB_COMPLETE
72201-08-14 clarify _WIN32 vs. _UWIN vs. __CYGWIN__
723	 tminit: fix standard & daylight initialization
72401-09-11 pathnative.c: add for native fs representation
725	 regex.h: fix regerror_t prototype
72601-09-04 regex/regnexec.c: fix REG_ICASE for multi-char collating elements
727	 tm/tmlocale.c: fix old ascii LC_TIME load
728	 locale*: add new LC_* categories
729	 comp/omitted.c: add CYGWIN workarounds
730	 features/lib: add CYGWIN workarounds
73101-08-11 features/common: some compilers have long long but no LL constants!
732	 features/lib: add mmap64 implementation test (for linux.s390)
733	 regex/regcomp.c: fix \ in [...] parse
734	 setlocale: retain user locale spelling in setlocale() return value
735	 features/limits.c: don't include ./limits.h -- duh
736	 fmtesc: don't escape multibyte chars
737	 tm/tmlocale.c: fix native C locale default
73801-08-08 features/float: some compilers (msdev) forget long long vs. double
73901-07-31 misc/optget.c: handle suboptions
74001-07-27 cdt.h: add DTDISC()
74101-07-17 iffeio.h: move to include for stdio bootstrap iffe workarounds
74201-06-25 regex: perl extensions added and tested
74301-06-21 misc/error: add ERROR_OPTIONS=prefix=string for message processing
74401-06-15 string/chresc: only 2 hex digits max for \xxx
745	 regex/regsub: handle REG_SHELL ~(nnn) rhs backrefs
74601-06-11 regex: handle embedded \0 in pattern and subject string
747	 regex: add (?nnn) for backrefs > 9
748	 comp/fnmatch: add FNM_LEADING_DIR for gnu compatibility
749	 features/float: _ast_flt_unsigned_max_t for bsd.i386 omission
75001-06-06 misc/optget.c: add o option for old ps,ar,tar with optional leading -
751	 regex/regcomp.c: REG_LENIENT|REG_DELIMITED \<newline> => <newline>
752	 regex/regcomp.c: REG_LENIENT \000 => NUL
75301-06-04 features/dirent: replace Makefile hack with iffe semi-hack
754	 regex/regnexec.c: negation must also check REG_SHELL_DOT
75501-06-03 sprintf.c: change buf size from SF_BUFSIZE to INT_MAX
75601-05-31 glob: fix gl_fignore to ignore leading . by default
757	 features/lib: add botch_d_ino_dirent64 for linux botch
75801-05-25 port/lc.tab: add a few missing language_territory's
75901-05-23 string/chresc: \C[.collation-element.]
760	 fmtmatch,fmtre: update for <regex.h> syntax extensions
76101-05-21 regex: add perl extensions, unicode names for collation elements
76201-05-11 string/chresc: \e == \E == escape, \cX == control X, \x{..} == \x..
76301-05-09 path/pathtemp.c: pathtemp(0,0,0,"/private",0) for mode S_IRUSR|S_IWUSR
764	 port/touch.c: handle utime(2) EPERM to fix bug that truncated
765	 regex: change REG_MINIMAL to avoid negation -- much faster now
76601-05-08 *.h: add some off_t macro guards for suse linux
76701-05-03 regcomp.c: optimize ((x)!)* to ((x)!)
768	 wchar: add <wchar.h> and stdio wchar routines
76901-05-02 feaures/wchar: add <wchar.h> intercept, add stdio wchar functions
77001-05-01 string/strtoi.h: signed strtoi accepts qualified unsigned constants
77101-04-30 comp/setlocale.c: fix code that relied on 2 simultaneous getenv()'s
772	 tm/tmlocale.c: check for UTF-8 encoded LC_TIME files
773	 misc/magic.tab: add utf-8 and utf-16 U+FEFF magic
77401-04-26 features/common: some cc's have _ast_int8_t but not LL constants
77501-04-24 features/lib: add _std_strtod for mac os X
77601-04-23 ccode: add CC_sub for ms embedded EOF char on ebcdic -- no joke
77701-04-20 iconv: handle ebcdic<=>utf
778	 mc.h,mc.c: add mcindex()
779	 ast_std.h: add AST_MESSAGE_SET
78001-04-18 features/libpath.sh: fix mvs probe
781	 *: sundry mvs fixes
782	 glob: fix GLOB_NOCHECK to avoid stat() and properly trim patterns
78301-04-01 strtod,strtold: add
784	 strtol,strtoul,strtoll,strtoull,strton,strtonl: handle locale & ERANGE
785	 sfvprintf,sfvscanf: handle locale decimal_point,thousands_sep
786	 sfvprintf,sfvscanf: handle %a,%A
787	 setlocale: add LC_NUMERIC decimal_point,thousands_sep init
788	 ast_std.h: __OPTIMIZE_SIZE__==1 to disable non-std __GNUC__ inlines
789	 pathexists: path cache to cut down pathpath() access(2) calls
790	 features/stdio: __FILE_TAG == _sfio_s for solaris
79101-03-23 iconv: fix iconv_move buffer boundary bug that stopped at 1 block
79201-03-19 glob: add GLOB_AUGMENTED
793	 regex: REG_SHELL syntax error implies REG_LITERAL match
794	 strto[ln][ll]: add overflow checks
79501-03-17 locale: reimplemented to provide canonical locale namespace
796	 locale: add LC_ALL=local for local system user default
797	 tm.h: TM_*_3 => TM_*_ABBREV
798	 tmfmt: handle standard E and O format modifiers
799	 tmlocale: consult nl_langinfo() if defined
800	 fmtquote("\"",1) => shell quote
80101-03-08 regex: handle multibyte chars and collation classes
802	 strmatch,strgrpmatch: now a wrapper on regex
803	 ast_std.h: add mb*() multibyte and collation support
804	 sfvscanf: handle locale decimal and thousand
805	 proc*,system: handle ignored SIGCHLD
806	 sfkeyprintf: handle %*C
80701-03-06 locale: add locale data cache for efficient multiple locale switching
808	 optget: fix LC_MESSAGES!=C --man bug
80901-03-01 Makefile: HEADEROPT is not optional for win32.*
810	 comp/syslog.h: comply with the de factos
811	 optget(): fix \f...\f stack bug that referenced data after pop
81201-02-27 *locale*: a batch of fixes for native LC_MESSAGE&LC_TIME hooks
81301-02-22 pathprobe: reprobe test now checks probe.ini too
814	 sfio_s.h: advertize public Sfio_t members with _ prefix
815	 sfio.h,features/stdio: add <sfio_s.h> reference
816	 sfhdr.h: map <sfio_s.h> _foo to foo
817	 sfio.h: SF_APPEND=>SF_APPENDWR, SF_CLOSE=>SF_CLOSING
81801-02-14 comp/conf.sh: probe <unistd.h> for _(CS|PC|SC)_* getconf symbols
819	 stdio/*: update for uwin stdio.dll binary compatibility
820	 sfread: finally fixed premature pipe read EOF bug
821	 fmtscale: format tenths for number > 0 && number < 10
82201-02-09 _sfmode(),_sftype(),_Sfextern: UWIN binary stdio compatibility exports
82301-02-08 sfgetm,sfputm,_sfputm: fix max clash with k&r max() macro
824	 setlocale: undef valid for sun4 k&r valid() macro
82501-02-07 catopen.c: don't do native catopen for the debug locale
82601-02-06 sfraise.c: add SF_FINAL check to avoid (posibly) freed disciplines
82701-01-01 features/common: fix uwin __DEFINE__
828	 sftable: initialize decimal and thousand
829	 magic.tab: add corel wordperfect document
830	 syslog: add LOG_LEVEL, add '\n' only if needed
831	 include/tm.h: #undef daylight for _WIN32
832	 sfio.h: add _SF_APPEND and _SF_CLOSE for native namespace incursion
833	 ast_std.h: add AST_LC_multibyte for MB_CUR_MAX>1
834	 setlocale: set AST_LC_multibyte
835	 strmatch: check AST_LC_multibyte
836	 features/limits.c: add _BITS_POSIX1_LIM_H guard for linux
837	 features/libpath.sh: fix for aix LIBPATH
838	 procopen,procclose: block SIGCHLD if PROC_FOREGROUND (e.g., system(3))
839	 optget.c: add enumerated option argument values
840	 optget.c: add <!--INTERNAL--> for private --html
841	 optget.c: fix memory leak that hit shell builtins hard
842	 sfio: drop sfread small chunk logic
84300-12-25 mnt.c: handle " and ' quoting for fstab
844	 sftmp.c: let pathtemp() open the fd O_EXCL
84500-12-15 conf.sh: add -v for verbose trace
846	 features/(limits|unistd).c: no FEATURE/types because of _POSIX_SOURCE
847	 features/time: add default for CLOCKS_PER_SEC
848	 features/lib: std_malloc now handles NeXT
84900-12-13 strton: recognize qualifier only if preceded by a digit
850	 features/lib: change return in vfork() test to exit() for linux sparc
851	 fmtquote: fix $'...' quote logic
85200-12-11 tmdate: fix cron format bug that mishandled months
85300-12-01 optget: handle $Id: ... $ in --?-version
854	 features/fcntl.c: fix _STDPP_ mmap munmap
85500-11-27 magic: drop dup sfclose() in load()
856	 optget: handle error_info.id==0
85700-11-22 features/stdio: add _FILEDEFED for sol9.sun4
858	 strton,stronll: handle [u|U][l|L][ll|LL] qualifiers
85900-10-31 tmdate: add TM_DATESTYLE and mmddHHMM[cc]yy
860	 astlicense.c: #include <hashkey.h> MAM workaround
861	 astlicense.c: check for non-empty CONTRIBUTORS
86200-10-26 features/stdio: add _FILE and __FILE for gnu
863	 misc/stk.c: fix stack pointer check off-by-one (dgk does it too!)
86400-10-23 syslog.h: sync with bsd values
86500-10-18 _STUB_* now functions instead of common symbols
866	 all extern data declared with definition to eliminate common symbols
867	 fastfind: add mac/bsd /var/db/locate.database
86800-10-17 features/lib: add apple osX (darwin.ppc) workarounds
86900-10-12 add: fmtbuf(), fmtclock(), fmtip4(), strtoip4()
870	 fmt*() now use fmtbuf() for tmp fmt buf allocation
87100-10-05 regex: add REG_DISCIPLINE and regdisc_t for alloc/error disc
87200-09-29 features/lib: pipe_rw==0 for sgi: boot rw == bin incompatibility
87300-09-21 astlicense: handle \' and \" in license values
87400-09-20 sfwrite: fix write() error in sfprintf() loop
87500-08-11 hdr,vmhdr.h: check/hide { getpagesize sbrk } prototypes
876	 astlicense: add noncommercial
87700-07-31 fflush: don't seek on pipes
878	 sfresize: add
879	 setlocale: fix bad newof() call
88000-06-01 strmatch: initialize match.current.beg[0] to avoid dump at line 670
881	 sfio/stdio: a few more errno tweaks
882	 astquery: sfstdin/sfstderr by default
88300-05-26 sfmode: errno=EBADF for invalid stream use
88400-05-22 rewind: fix for xopen test
88500-05-18 mcfind: returns absolute path
88600-05-16 optget: --keys must catch \f...\f too
887	 translate,mc: errno cleanup
88800-05-09 magic: add netbsd binary magic
889	 fts: PATH_RESOLVE!=logical => FTS_SEEDOTDIR
890	 ftwflags: call fts_flags()
891	 astconf: astconf(0,0,0) re-syncs with _AST_FEATURES
89200-05-08 optget: --usage & --keys for last -catalog group only
89300-05-02 iconv.c: add; use codes[] in ccmapid() and ccmapname(); "" for native
89400-05-01 pathtmp: copy env values (libshell or putenv may change)
89500-04-01 optget: drop bar from [-foo?bar] for --??keys
896	 sfvscanf: add %X -- duh
897	 features/common: fix va_listval() for power pc
898	 findopen: fix FIND_GENERATE codes file search
899	 magic: add ERROR_translate() and msgcat.key
900	 tmlocale: add for LC_TIME locale info
901	 tmlex: check tm_info.format and tm_data.format
902	 tmfix: fix for tm_wday special case (via nl_langinfo on LC_TIME fields)
903	 strftime: fix for nl_langinfo special case
904	 ast_std.h: provide LC_* defauls if not defined
905	 sfnew: check ${_AST_sfio_bufsize} -- don't tell kpv
906	 catopen,nl_types.h: add intercept to mc* routines
907	 magic.tab: add ast message catalog
908	 strerror: add _ast_strerror intercept with ERROR_translate("errno")
909	 fmtquote: escapes >0177 only if (flags&2)
91000-03-17 feof: stdio macro functions only for _UWIN
911	 optget: proper ERROR_translate() calls
912	 astgetconf: add for thread safe error message control
913	 astlicense: fix type=special but with non-null notice
914	 errorx: add for ERROR_translate() support
915	 ERROR_translate: add locale id args for alternate dictionary
916	 option.h: move _OPT_PRIVATE_ to pointer to avoid dll size mismatch
917	 ftwalk: fix FTW_CHILDREN bug that hit top level non-dirs twice
918	 translate.c: default error_info.translate
919	 astconf: fix dup loop thrash that never returns, add _AST_VERSION
92000-03-10 ast_std.h: do _LARGEFILE_SOURCE initialization before std headers
921	 fmtquote: handle $'...' quotes
92200-03-07 optget: fix numeric option support test
923	 sfkeyprintf: add %q for '...' quoting with ansi escapes
92400-03-06 features/stdio: fix _sfflsbuf prototype (dingold@gte.net)
92500-02-14 pathtmp: fix pid cache bug that sometimes repeated after ~10 attempts
926	 optget: "..." attribute quote
927	 pathfind: eliminate *: prefix in lib, not type
928	 proc: PROC_FOREGROUND for system(3) semantics (wait status return)
929	 pathtmp: fix mktemp() logic
930	 fts: fix FTS_NOSEEDOTDIR bug that botched ./* in top list
931	 include/ast/prototyped.h includes include/prototyped.h
932	 pathpath: fix strdup(0) bug
933	 optget: --html <foo@bar> => ...mailto:foo@bar...
934	 sscanf: fix sfsscanf => sfvsscanf typo
935	 magic.tab: strengthen tar recognition
93600-02-08 conf.sh: fix ifdef for systems that think sysconf(FOO) is const
93700-02-04 glob: fix globlist_t.gl_flags
93800-02-02 vm*: add NoF() for data only files
93900-01-27 fts: fix top level .==.. statp bug (thanks to dr. ek)
94000-01-25 conf.tab: fix LFS*_*LAGS typo
94100-01-24 astlicense: handle type=verbose, license.notice, author=*
94200-01-11 pathprobe: generate info for first probe script on PATH - duh
943	 ast.h: add NoF(x) for files that define no functions
944	 tmpfile: fix implementation
945	 global change for string ERROR_translate() dictionary names
946	 optget: fix new way but no long names off by one
947	 optget: handle [--dictionary?name]
94899-11-19 comp/conf.sh: `expr length XXX` is not universal
949	 drop sfstdio; stdio via functions everywhere
950	 drop Makefile conditionals (and follow our own advice for once)
951	 sfio: new stream after atexit() bug fix
952	 tm: Tm_zone_t.daylight=0 for standard time within zone
953	 stdio: fopen => _ast_fopen: only way short of binary compatibility
954	 Makefile: atmain.C falls back to atmain.c
955	 optget: add --keys, s<section> option
956	 stdio: _UWIN check for foreign stdio
95799-11-11 astlicense: add
95899-10-31 glob: fix regexec pattern; add PATH_ATTRIBUTES case check
959	 pathpath: path==0 means malloc space
96099-10-22 tmfmt: %C=2-digit-century, %k=date(1), %y=2-digit-year-in-century
96199-10-18 fastfind: expanded default db lookup
96299-08-11 magic: fix off by one registry malloc
963	 features/fs: add __RENAME checks for stat familiy (netbsd)
964	 features/fs: major()/minor() fixes for s5
965	 features/libpath.sh: netbsd fix -- ld.so not in std places
966	 misc/fastfind: fix codes path generation bug
967	 optget: beef up --?* description, fix <TR>...</TR> nesting
968	 pathprobe: check for override (writable key file) first
969	 features/time: int tmtimeofday(struct timeval*);
970	 optget: fix opt_info.num, even if opt_info.arg!=0
971	 fts: FTS_PHYSICAL => FTS_SEEDOTDIR, add FTS_CHOP
972	 fastfind: init dir tab with logical and physical name
973	 glob: add gnu GLOB_ALTDIRFUNC
97499-07-17 sfio: kpv update and sfhdr.h sync!
97599-06-24 stdio: fix fflush() to ignore sfseek(0) return value
97699-06-23 magic: '\r' is text not control to placate m$
97799-06-08 stdio: fix fseek,ftell semantics
978	 uwin stdio: fflush() => _doflsh() to avoid __cplusplus clash
979	 getopt: call liberror() to avoid error() conflict
980	 tmfmt,tmscan: %N zone type (nation code), %z zone minutes west offset
981	 tmfmt: - no pad _ space pad 0 leading 0 pad
98299-05-28 magic: fix 'x' == '*' for any number, magic.tab tweaks
983	 features/lib: verify that stat64 really works
98499-05-21 tm*: add TM_WINDOW==69 for consistent century windowing guard year
98599-05-18 tmtime: add century leap year calc anticipating unsigned time_t
98699-05-17 sfkeyprintf: handle %o and %x!!
98799-05-09 pathprobe: $HOME/.probe if not suid and st_uid!=geteuid()
98899-04-28 magic,magic.tab: add registry()
98999-04-24 regcomp: fix ksh pattern +! parse
990	 regfatalpat: add
991	 optget: make : ? ] double escape consistent in all contexts
99299-04-01 features: drop iffeio.h and stdio.h when only printf() used
993	 regex: fix stats() .l and .k count
994	 fmtquote: added; most general fmtesc() form
99599-03-22 fmtesc.c,ast.h: add fmtnesq()
996	 optget: --?x works for -x option flag
99799-03-17 features/limits.c: workaround solaris __EXTENSIONS__ _timespec bug
998	 workaround limits.h circular prereq with ignore stdio.h
999	 sfvprintf: %04e left-pad zero fixed
100099-03-03 fts: uncle already: add FTS_SEEDOTDIR to retain leading ./
1001	 regex: REG_MULTIPLE, BM for fixed string alternation
1002	 optget: embedded `-' optional in long options, prefix={0,1,2}
100399-02-14 fastfind: fix dir format bug that emitted wrong paths
1004	 astconf: fix redef off by one bug
100599-02-11 pathcanon(): don't cache astconf("PATH_LEADING_SLASHES", NiL, NiL)
100699-01-23 optget: move <old_opt.h> back into <option.h>, no open-close
1007	 optget: add "[index:long-name:description]" for --long-name
1008	 comp/gross: add weak __libc_attr for irix < 6.5 compatibility
1009	 features/limits.c: tweak the guards again
101099-01-11 fastfind: handle old format count byte order
1011	 magic.tab: fix elf to use real phdr offset
1012	 magic.c,magic.tab: fix | to act like switch/case
1013	 comp/fross.c,features/hack: for gross hacks
1014	 features/stdio: avoid sfio namespace pollution
101598-12-25 tmdate: yyyy.mm.dd
1016	 pathprobe: fix procrun() cmd path bug
1017	 fmtesq: add
1018	 features/common: win32.alpha va_list
1019	 magic: add pc alpha object
102098-11-11 strmatch: add STR_ICASE
1021	 pathprobe: punt to $HOME/.probe/<key+HOSTTYPE> if not S_ISUID
1022	 tmzone,tmdate: handle +-minutes, nn/MMM/yyyy
1023	 stropt: fix nested quote pop
1024	 tmfmt: add %K => %Y-%m-%d/%H:%M:%S
1025	 sfio/stdio: fix fseek() SF_PUBLIC omissions
1026	 fmtesc: catch '\\' (duh)
1027	 vmalloc: vmbest round bug fix
102898-11-01 fts.c: no pathcanon() if (fts_flags & FTS_PHYSICAL)
102998-10-01 features/stdio prototype fixes
1030	 optget: strton() instead of strtol() for #
103198-09-22 regcomp: add REG_DELIMITED and REG_ESCAPE delimited re support
103298-09-15 fix _LARGEFILE64_SOURCE stuff
1033	 ast_std.h: provide mmap() prototype
103498-08-11 fix sfpopen() to ignore SIGPIPE by ignoresig() for sfio but not stdio
1035	 fix procopen() to ignore SIGPIPE by ignoresig() for PROC_IGNORE
1036	 sfio sfpopen/popen update
1037	 magic.src: fix ustar entry
103898-07-17 fix ftwalk() short by one malloc()
1039	 add fts_notify()
104098-06-25 sfdcmore,sfdcprefix: add
104198-06-19 tokscan: add %f %g
104298-06-01 disc/sf*.c: memset(0) after disc malloc()
104398-05-11 strelapsed: y==Y
1044	 fts: pathcanon() top list
104598-04-01 error: error_info.time for all msgs, just after cmd id
1046	 error: no sfsync(sfstdin)
1047	 sfio: sfpool, Sffmt_t update
1048	 magic.tab: sgi core dumps -- why aren't these elf?
1049	 stropt: (v+n) for unknown option is option value if n!=0
1050	 procopen: fix setsid() for spawnveg() only
105198-03-19 malloc: add realloc foreign region check
1052	 sfdisc.h: rename to match kpv disciplines
1053	 fastfind: fix strcasecmp/strcmp directory prefix mixup
105498-03-17 features/fcntl.c,pathtmp,sftmp: add O_TEMPORARY
105598-03-01 pathcanon: fix PATH_LEADING_SLASHES to stat() both slashes
1056	 pathcanon: add PATH_VERIFIED
1057	 tmdate: add skip[] to expand separator char set
1058	 fastfind: FIND_OLD for old 7 bit db, FIND_TYPE for new 8 bit typed db
1059	 fastfind: default generates gnu LOCATE02 8 bit db
1060	 magic: handle %s in mime description
1061	 cdt: kpv update
1062	 sfio: kpv update
1063	 stdio: fpos64_t fseek64(), ftell64(), fgetpos64(), fsetpos64()
1064	 stdio: fseek() => sfseek(SF_PUBLIC) to avoid locking
1065	 fts: initialize parent stat[bp] from top level *after* statf done
1066	 astmath: add -lm requirement test
1067	 *: Astlong_t => _ast_*_t
1068	 regex: simplify regcollate() (from doug)
1069	 tmtime: preserve Tm_t*tm when calling tminit()
1070	 astconf: add readonly PATH_ATTRIBUTES=[cirw]
107198-02-14 fastfind: add FIND_ICASE to ignore case
1072	 tmdate,tmgoff: handle (+|-)hh[[:]mm[[:]ss]] absolute timezone
1073	 tmdate: `<n> <part>' now assumes `next <n> <part>' instead of `this'
1074	 tmfix: fix leap year bug that forgot to add 1900
1075	 proc: add PROC_ZOMBIE
107698-02-06 strmatch() char class range bug fix
1077	 regex char class range bug fix
107898-01-23 _WIN32: changed the #if logic again to accomodate _GNUC_
1079	 mnt: grab the mount options too
1080	 ast_std.h: hide getopt,getsubopt from stdlib.h
1081	 features/limits.c: add gnu guard macros to avoid limits.h recursion
1082	 features/mode.c: include "limits.h" instead of "FEATURE/limits.lcl"
108398-01-11 sfio.h: use Astlong_t, move Sfio_t Sfdisc_t typedef to top for stdio.h
1084	 sfhdr.h: #undef SETLOCAL for hpux
1085	 sfvprintf,sfvscanf: %I*x for sizeof(int_arg)
1086	 handle ftruncate64 and truncate64
1087	 dtopen.c: __hppa dll needs Dtset Dtlist Dttree refs here
108897-12-18 fmtnum: add
108997-12-11 magic: handle sgi 64 bit core dumps
109097-12-07 pathtmp: add override for TMPPATH,TMPDIR and cycling
109197-11-11 tm: handle 0 return from gmtime(),localtime() (dos negative time_t)
1092	 features/stdio: fix fflush() macro to do physical sync
109397-10-31 astconf PATH_RESOLVE is logical if 3d&&!std, metaphysical otherwise
1094	 magic: fix #! mime bug
1095	 tm: tmtime() now calls tmfix() and adjusts tm_isdst too=>mtime() works
109697-10-11 dllfind,dlfcn: move to separate -ldll so -last can link static, duh
1097	 Makefile,state.c: move forced header generation state.c => Makefile
1098	 sfio: update including SF_WHOLE
109997-10-01 sfdostext: add \r\n => \n sfio discipline
1100	 stropt: NiL table => p=name for all name=value
110197-08-11 pathtmp: check pid to note forks
1102	 procopen: FD_CLOEXEC rfd && wfd
1103	 fts: fts_close() after fts_children() with no fts_read() now works
110497-07-17 error: sfsync(sfstdin,sfstdout,sfstderr) instead of sfsync(NiL)
1105	 _sfcvinit: add sfio internal interface to base conversion tables
1106	 strton: use _Sfcv* base conversion tables instead of sfsscanf()
1107	 sfvscanf: use _Sfcv* base conversion tables
1108	 mime: x- permutations now matched if exact fails
1109	 mime: original- stripped from content-* headers
1110	 tmdate: add yyyy-jjj, yyyy-mm-dd
1111	 dllfind: add
1112	 ccmapid: fix buf copy loop limit
1113	 ccmapname,ccmapcpy: add
1114	 sfstrtmp: add
111597-05-09 streval: fix up casts for pseudo-ansi cc
1116	 features/types: use _ast_int_8 vars to verify support
1117	 string/modedata: check for mvs.390 S_IFMT
1118	 include/ast(_std).h: add #define __FILE_typedef
1119	 magic: add ccode text check
1120	 include/ftwalk.h: FTW_PATH=>FTS_NOCHDIR to avoid FTS_AGAIN (duh)
1121	 fts: clear status for FTS_AGAIN (fixes rm -r bug)
1122	 mnt: add mvs openedition w_getmntent()
1123	 sfhdr: _hdr_float && <float.h> for correct MAXDOUBLE
1124	 vmalloc/vmbest: if _std_malloc then use malloc()/free() not sbrk()
1125	 remove: check _std_remove
1126	 procopen: handle pio[{0,1}]=={0,1}
1127	 setenviron,features/uinstd: test for mvs.390 dll environ hacks
112896-12-25 <sfio_p.h> -> <ast_common.h>
1129	 __EXTERN__(type,object)
1130	 __DEFINE__(type,object,value)
1131	 magic: check strings in !CC_NATIVE code set too
1132	 system: cmd==0 means check for shell access (xopen)
1133	 sfhdr.h: fix sfrsrv prototype
1134	 add __libc_malloc etc for gnu/linux
1135	 astconf(NiL,path,name) == astconf(name,path,NiL) + no liberror
1136	 fts_open: if toplist() stat fails return 0
1137	 ftwalk: handle fts_open()==0 via one phony userf() call
1138	 sfmode: S_ISFIFO default is SF_SHARE=0
1139	 features/lib: _WIN32 _lib_vfork=1 by default
1140	 unsigned<0 comparison and other fixes via sgi.mips4 cc
1141	 stk.c: use <align.h> ALIGN_BOUND for stkalloc()
1142	 features/lib,vfork: uwin fix
1143	 ast_std.h: fix strto[u]ll prototypes with features/types _ast_int_8
1144	 getsubopt: add for xopen 4.2 compatibility
1145	 drop function __IMPORT__
1146	 magic: more magic
1147	 change #define FILE from Sfio_t to struct _sfio_s
1148	 state.c: add generated includes that may be hit by std for MAM
1149	 bytesex: forgot about sizeof(long)=>7; could we fix the name too?
1150	 vmalloc.h: fix vmnewof() definition
1151	 sfio.h,stdio.h,ast_common.h: pollution cleanup
1152	 magic.c: add | op for switch
1153	 Makefile: stdio.h was on both HEADERSRC and HEADERGEN -- don't do that
1154	 drop pp:notice to get <sfio.h> ... <ast.h> to work
1155	 regex: add [[:<:]]==\< and [[:>:]]==\> for bsd compat
1156	 mime.c: ignore X-* headers while scanning for Content-*
1157	 magic.c: check for negative indirect offsets
1158	 magic.tab: fix dos entry that generated negative indirect offsets
1159	 vmalloc.h: add vmstrdup() prototype
1160	 hash.h: add hashgetbucket() macro
1161	 magic.c: MAGIFILE is now a : file list
1162	 mnt.c: another 4.4 bsd fix -- users must include <sys/crap.h>
1163	 common: fix _WIN32 chicken&egg with va_copy
1164	 sfio: forgot to set f->val along with _Sfi in sfexcept()
1165	 Makefile: add mini target for uwin libmini.a
1166	 sfcvt.c: workaround for flaky long double optimizers
1167	 features/common: fix to work with va_list==void*
1168	 regexec.c: fix REG_STARTEND subexpression offsets
1169	 strmatch.c: don't forget <wctype.h>
1170	 regrexec.c: fix REG_INVERT end boundary bug that missed last record
1171	 astconf.c: notify(0,0,"a=b") called for each setenviron("a=b")
1172	 pathcanon.c: check astconf(PATH_LEADING_SLASHES) to preserve //*
117396-11-28 _LARGEFILE64_SOURCE by default if possible: NOTE: assumes xopen
1174	 regerror: fix for xopen
1175	 getopt: fix for xopen
1176	 magic: add ciao virtual database
1177	 astconf: posix/strict/xopen implies "standard" conformance
1178	 fs3d.h: hide mount prototype
1179	 ast_std.h,mnt.c,features/fs: ncr port tweaks
118096-10-31 version 5.0
1181	 add strtoll() strtoull()
1182	 sfkeyprintf: upgrade to int_max args
1183	 ast.h: add ssizeof() to work around unsigned botch
1184	 conf.sh: add shell actions to conf.tab
1185	 _DLL*: drop for _BLD_<lib> + __EXPORT__ + __IMPORT__
1186	 sfio,cdt,vmalloc: kpv update
118796-10-11 <ccode.h>: add character code map support
1188	 procclose: return shell style exit status
1189	 features/fs: pun statvfs.f_basetype to statvfs.f_reserved7 for mvs
1190	 uwin: add subdir for uwin additions
1191	 ast_std.h: swab() is from <stdlib.h>
1192	 sfio.h: <ast_std.h> if _PACKAGE_ast
1193	 magic.tab: add mips[1-4], 64-bit
1194	 port tweaks for sol.sun4 and sun4
119596-09-06 strerror: add
1196	 fmterror: uses strerror
1197	 str*search: use sfiso646() order
1198	 strpsearch: add
1199	 magic: add Magic_t.mime mime type return for magictype()
1200	 mime.h: add
1201	 strton: use sfsscanf()
1202	 strperm: factor in umask() if no who
1203	 pathtmp: add TMPPATH check
1204	 libevent: add
1205	 magic: add discipline to magicopen()
1206	 mime: add discipline to mimeopen()
120796-08-31 regex: fix BM fail table generator
120896-08-11 mntread: fix mnt.type for SCO variant
1209	 conf.tab: add SCO KERNEL_* sysconf() vars
1210	 fastfind: add findwrite(), fix findread() FF_OFF omission
1211	 ftwalk: reimplement on top of fts
1212	 fnmatch,re_comp,regexp: reimplement on top of regex
1213	 basename,dirname,fmtmsg,fts,ftw,getdate,getsubopt,glob: add
1214	 hsearch,nftw,realpath,strftime,strptime,swab,tempnam: add
1215	 tsearch,wordexp: add
1216	 getcwd: cache last path for easy test
121796-07-17 error: sfsync(NiL) ... write ... sfsync(sfstderr)
1218	 astconf: handle readonly *(DEV|DIR) vars
121996-04-01 swapop: fix stupid return value bug
1220	 features/int.c: fix int_swap generation bug
1221	 regnexec,regrexec: fix unsigned underflow init error
1222	 ls.h: fix iblocks() to be in units of LS_BLOCKSIZE
122396-02-29 magic: space before function is definition with no call
1224	 hash: drop hash_info from public interface
1225	 hash: OBSOLETE hashlast()
1226	 hash: add Hash_root_t.Hash_last_t to public interface
1227	 add strsearch() and strnsearch() to complement strlook()
1228	 add hashkey.h for keyword->long hash
1229	 pathpath: pathpath(0,0,"",0) disables $0 $_ $PWD relative search
1230	 sfio: sfstrtod+sfhdr update
1231	 regex: fix REG_LENIENT to map BRE \[+?|] to ERE [+?|]
1232	 change _std_malloc iffe test so it doesn't hang on alpha
1233	 sfhdr.h: features/sfio generates _lib_cvt instead of _i386_cvt
1234	 ast_hdr.h: add va_copy(a,b) to copy va_list b to a
1235	 getopt: fix stupid getopt() -> optget() bug
1236	 sfvprintf: %h? now downcasts
1237	 regex: handle strto?l() errno in regcomp()
1238	 sfstrtod: _Sfstrtod_already_defined -> _STUB_sfstrtod
1239	 ast_std.h: hide valloc() and ignore <strings.h>
1240	 sfkeyprintf: pass phony va_list for '2'
1241	 regex: change HIT var type from int to size_t in special()
1242	 ast.h: add EXIT_STATUS(x) to convert wait() status to sh exit status
124396-02-14 regex: add _ to \<...\> isalnum test
1244	 regex: fix BM inner loop breakout
1245	 features/types: size_t is signed on some systems! => _ast_size_t
1246	 sfio: sfrd discipline peek optimization
1247	 vmalloc: vmalloc.h malloc family macro upgrade
1248	 tokopen: fix newline bug for non-restore open
1249	 sfio: no inline for gcc until it emits for -g too
125096-02-12 sfio: internal upgrade
125196-02-09 regex: Boyer-Moore boundary fix
1252	 vmalloc: snarf latest
125396-02-06 regex: add regrecord() and regrexec() for Boyer-Moore record filtering
1254	 regex: rearrange regnexec() args to match buffer,count arg style
125596-01-31 stk: add STK_NULL to stk.h and stk.c
1256	 regex: privatize regex.h and fix min re length computation
1257	 workaround lazy strdup() implementations in features/lib _std_malloc
1258	 fix stkclose() to free(stream) -- purify missed because of sfio links
1259	 unused var cleanup
1260	 port/mnt.c must include <ls.h> to get <ast_fs.h>
1261	 add SF_FINAL to sfio and stk
1262	 sfio reads now on natural block boundaries
1263	 add #!!! <level> <message> !!! to tokline()
1264	 add REX_BM pre-filter to regcomp/regnexec
126596-01-22 add regcomp env.paren overflow checks
126696-01-11 add Doug McIlroy's regex (converted to C from C++ by gsf)
1267	 AT&T Research now
1268	 sfgetr optimization
1269	 regex buglets
127096-01-05 tweak magic.tab for win32
127195-12-25 add !(...) -> (...)! to fmtre()
1272	 nt tweaks -- functions with no header proto must be defined extern
127395-11-24 version 4.1
1274	 add mnt.h mntopen mntread mntclose
1275	 convert fmtfs to mnt.h
1276	 add RE_LEFTANCHOR and RE_RIGHTANCHOR
1277	 gcc inlines must also have global library function instantiation!
1278	 add hashview()
1279	 fix strtape() internal buffer flow
1280	 fix mntread() fs/dir transposition for uts mnttab
128195-10-31 change features/unistd.c includes to break limits-param cycle
1282	 add cdt from kpv
1283	 sfio snarf from kpv
1284	 add [ht]search for _WIN32
128595-10-11 clarify PARANOID pathcheck() warning
1286	 fix procopen() LIB_SPAWN environ bug with setenviron() cache
1287	 fix setenviron() bug that forgot to reset environ if == 0
1288	 add %Z '\0' output format to sfkeyprintf()
1289	 sfio snarf for sfvprintf fix
1290	 allow multiple hashscan() with scope caveat
1291	 add comp/fakelink.h to synthesize a few symlink text patterns
1292	 add !<xxx> magic to misc/magic.tab
1293	 add FTW_TOP to inhibit recursion (for ftw side effects on top level)
1294	 add memfatal() common malloc fatal exception message
1295	 add dos \r\n test to misc/magic.c/cklang()
1296	 sftmp() O_EXCL+random to avoid collisions
1297	 pathtemp() uses sftmp() randomizing
1298	 features/fs uses SF_APPENDWR
1299	 sftmp() uses pathtemp() -- don't worry, its not circular
1300	 a few more _WIN32 compatibility additions
1301	 realloc fixed to use VM_RSCOPY|VM_RSMOVE instead of obsolete 1
1302	 add hashlook(tab, oldname, HASH_RENAME, newname)
1303	 a few more tweaks to satisfy port warnings
1304	 add _SFIO_INLINE_PRIVATE to provide real function too
1305	 fix <dirent.h> installation test
1306	 oops object / shared library compat with _sfgetl2 _sfgetu2
130795-09-11 add getopt() compatibility
1308	 add fstat,lstat,mknod,stat fixes for _x versions in sys/stat.h
1309	 add getconf CONFORMANCE - posix for things that aren't ast default
1310	 sfio_t.h: #ifndef _SFIO_H #include "sfio.h" #endif
1311	 snarf vmalloc from kpv
131295-08-11 fix malloc bug in magic
1313	 update linux and bsd 386 magic entries
1314	 error_info.auxilliary returns new level, |=ERROR_OUTPUT if msg done
1315	 drop fnmatch from strmatch for sparc (solaris) until it collates
131695-07-17 fix port/astconf universe initialization
1317	 fix misc/optget opt_info.nopt initialization
1318	 drop tmset() TZ=... because it only worked when TZ=... was ignored
131995-05-09 mongo <ast.h> namespace cleanup
1320	 drop > 2 year old obsolete interfaces
1321	 sfvprintf.c fix for (char:8 short:16 int:32 long:64) architectures
1322	 TMP_MAX back into conf.tab
1323	 pathbin() and pathshell() now use astconf()
1324	 fix pathtemp() to not cache getenv("TMPDIR")
1325	 fix ftwalk() metaphysical to handle non-dirs too
1326	 initialize *_info = { 0 }; for ancient ld semantics (NeXT)
1327	 fix magic() to do vmfree()
1328	 astconf(X_OK) must prefix lines with "getconf"
1329	 use <wchar.h> and wctype in strmatch() if available
1330	 _lib_utime_now checks utime(path,0)
1331	 _lib_poll_notimer checks poll(x,0,timeout)
1332	 add another _lib_utime_now check to port/touch.c
1333	 fix dd_buf cast in dir/opendir.c
1334	 split getconf.h into conftab.h and conftab.c for :READONLY:
1335	 use mbtowc() only if MB_LEN_MAX>1
1336	 sfio char* -> Void_t* cleanup
1337	 handle old syntax in misc/magic.c
1338	 sigdata.c holds readonly signal strings
1339	 pathcheck() does AT&T checks for tools matching PARANOID - yuk
1340	 unused var cleanup
1341	 deprecate hash_info in favor of hashlast()
1342	 fix bad conf.sh ksh integer interactions
1343	 dll cleanup
1344	 magic.c falls back to malloc for now
1345	 add environ to <ast.h> -- C library global data syms are *RESERVED*
1346	 sfhdr.h memccpy(1,2,3,size_t) prototype
134795-04-01 version 4.0
1348	 convert to vmalloc
1349	 allow sigcritical() nesting mismatch to work around vfork() bug
1350	 add strexpr() primitive for streval() with user handle (like ftwalk)
1351	 add <magic.h> and magic.c file command magic interface
1352	 update magic mail message entry
1353	 fix keyprintf() invisible char count nesting bug
1354	 add sfstrnew(SF_READ|SF_WRITE) for alternate sfstropen() modes
1355	 sfstrnew(SF_READ) but reading requires sfseek(), sfreserve()
1356	 add conf.tab and conf.sh to nail C/POSIX limits/unistd macros
1357	 add getconf() string interface to *conf*
1358	 _DLL_INTERMEDIATE_DATA for systems that require indirect globals
1359	 _DLL for building shared libraries with _DLL_INTERMEDIATE_DATA
1360	 vecfile() restricted to S_ISREG()
1361	 add spawnveg() for job control
1362	 convert procopen() PROC_PGRP(id) to spawnveg()
1363	 fmterror() returns error text given errno (strerror() does same)
1364	 fmtsignal() returns signal text given errno (strsignal() does same)
1365	 {sig_name,sig_text,SIG_MAX} -> sig_info.{name,text,sigmax}
1366	 liberror("",...) omits [%s library] prefix
1367	 update features/signal.c table
1368	 add vmdisc() and change vmnewof() to use vmresize()
1369	 fix conf.sh to allow refs to previously defined limits
1370	 fix undefined entries in getconf()
1371	 magic data in magic.tab
1372	 fix stropt() pointer cast
1373	 vmalloc() exception handler replaces nomalloc()
1374	 merge sigdata.c into fmtsignal.c -- sun link needs function w/ data!
1375	 sftmp() bug fix
1376	 drop local <unistd.h> even with _POSIX_SOURCE
1377	 fix vmstrdup() macro arg miscount
1378	 fix conf.sh to handle enum'd symbolic constants in unistd.h
1379	 drop malloc() et.al. prototypes from vmalloc.h
1380	 fix sfvprintf() %d argument reference
1381	 add OSF/1 AES symbol(s) to conf.tab
1382	 determine standards prefix from conf.tab
1383	 add _CS_SHELL to conf.tab
1384	 getpath() default is confstr(_CS_PATH)
1385	 getshell() default is confstr(_CS_SHELL)
1386	 unify keyprintf user function args (should have learned by now!)
1387	 add quad type to magic
1388	 add astfeature() to unify universe style dynamic features
1389	 add ftwflags() to determine FTW_* flags from astfeature()
139095-03-11 fix stropt() to not modify its *const* arg
1391	 handle "'\ quotes and chresc() in stropt() values
1392	 , treated like :space: between stropt() options
1393	 fix procopen() fd dup to ignore self-dups
1394	 add library id[] to misc/state.c
1395	 add ftwalk(FTW_METAPHYSICAL) for posix -H
1396	 sfvprintf() now handles balanced () in %()
1397	 add tmfmt() with buffer size check to replace tmform()
1398	 add fmttime() calling tmfmt() to fit fmt*() mold
1399	 add <keyprintf.h> and keyprintf() to support %(...)? in commands
1400	 add Hash_table_t for size==0 in stropt()
1401	 add EXTTYPE extended header to tar.h
140295-02-14 sfmove() buffer size overflow fix
1403	 add _SFSTDIO_H to sfio.h
1404	 rename setenv() to setenviron() -- posix finally decided
1405	 rename <option.h> opt_* to opt_info.*
1406	 update features/unistd.c for _SC_* and _PC_* posix additions
140795-01-19 (char*)uchar cast in fmtesc()
1408	 fix hash bucket memory leak in hashlook() [via John Mocenigo]
1409	 update strings/strtape()
1410	 fix optget()/optjoin() to handle leading +
1411	 add ALIGN_ prefix to <align.h> identifiers
141295-01-11 change tm/*.c tmset(0) to tmset(tm_info.zone) to keep user setting
1413	 fix tmform() %Z null pointer dereference
141495-01-01 add this RELEASE file
1415	 fix strperm() to properly handle "644 file"
1416	 fix tokline() to return last '\0' terminated line in string
1417	 fix tokscan() to properly handle \\n splice
1418	 add fmtesc() to complement stresc()
1419	 add LS_NUMBER to fmtls()
1420	 drop spurious optusage() ' '
1421