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