1*34f9b3eeSRoland Mainz09-10-05 _sfopen.c: add but ignore 'F' flags for stdio compatibility 2*34f9b3eeSRoland Mainz09-09-28 fts.h,ftwalk.h,fts.c: promote { namelen pathlen level } to (s)size_t 3*34f9b3eeSRoland Mainz09-09-28 locales: add AST_LC_LANG for $LANG 4*34f9b3eeSRoland Mainz09-09-28 setlocale.c: fix logic for dynamic { LANG LC_ALL LC_* } changes 5*34f9b3eeSRoland Mainz09-09-17 include/sfio.h,sfio/sfwalk.c: add sfwalk() 6*34f9b3eeSRoland Mainz09-09-09 sfio/sfputr.c: add SIGPIPE hang fix 7*34f9b3eeSRoland Mainz09-08-24 sfio/sfreserve.c: fix SF_UNBOUND logic with pushed streams 8*34f9b3eeSRoland Mainz09-08-18 include/ast_std.h,ast.h: add ast.mb_sync to sync mbchar() after error 9*34f9b3eeSRoland Mainz09-08-17 comp/setlocale.c: add AST_LC_utf8 and { utf8_mbtowc() utf8_mblen() } 10*34f9b3eeSRoland Mainz09-08-11 comp/setlocale.c: treat "en"/"en_US" AST_LC_MESSAGES as "C"/"POSIX" 11*34f9b3eeSRoland Mainz09-08-10 vmalloc/vmhdr.h: add user-defined _AST_PAGESIZE and computed VMHEAPINCR 12*34f9b3eeSRoland Mainz09-08-09 comp/conf.tab: add NPROCESSORS_MAX 13*34f9b3eeSRoland Mainz09-07-29 astlicense.c: fix first name=value logic error 14*34f9b3eeSRoland Mainz09-07-22 string/fmtip6.c: don't drop trailing 0 in 44::1:0:0 15*34f9b3eeSRoland Mainz09-06-30 port/astconf.c: standard PATH_RESOLVE is "physical" (not "metaphysical") 16*34f9b3eeSRoland Mainz09-06-19 vmalloc: sync with kpv 17*34f9b3eeSRoland Mainz09-06-19 include/shcmd.h: add sh_context(p) cast 18*34f9b3eeSRoland Mainz09-06-11 misc/magic.tab: differentiate pc 386 32/64 bit dll/exe/obj 19*34f9b3eeSRoland Mainz09-06-06 port/astconf.c: fix look->name null pointer reference 20*34f9b3eeSRoland Mainz09-06-05 port/astconf.c: fix 'UNIVERSE = value' synthesize logic 21*34f9b3eeSRoland Mainz09-05-25 tm/tmxduration.c: add 22*34f9b3eeSRoland Mainz09-05-08 comp/syslog.c: add _UWIN /var/log/syslog preference 23*34f9b3eeSRoland Mainz09-05-01 comp/setlocale.c: fix _UWIN intercepts to return NiL on unknown locales 24*34f9b3eeSRoland Mainz09-04-27 sfio/sfpool.c: fix bug that did not return pool on delete 25*34f9b3eeSRoland Mainz09-04-22 include/regex.h,regex/regcomp.c: add REG_REGEXP <regexp.h> compatibility 26*34f9b3eeSRoland Mainz09-04-15 tm/tmxdate.c: handle "4th thursday in november" 27*34f9b3eeSRoland Mainz09-03-31 string/strvcmp.c,string/strnvcmp.c: add version strcmp(3) 28*34f9b3eeSRoland Mainz09-03-31 string/strpcmp.c,string/strnpcmp.c: add path prefix strcmp(3) 29*34f9b3eeSRoland Mainz09-03-29 misc/optget.c: clean up num = number casts 30*34f9b3eeSRoland Mainz09-03-04 tm/tmxmake.c: add tmxtm() with zone override 31*34f9b3eeSRoland Mainz09-03-03 tm/tmxfmt.c: add %(...)<c>, specifically %(...)z for output zone 32*34f9b3eeSRoland Mainz09-02-22 tm/tmxdate.c: add iso P... durations 33*34f9b3eeSRoland Mainz09-02-02 path/pathprog.c: add 34*34f9b3eeSRoland Mainz09-02-02 misc/opthdr.h,optget.c: fix flags mixup, handle old '-' as option 35*34f9b3eeSRoland Mainz09-02-02 sfio/sfprints.c: fix sfvaprints() return value to not count trailing '\0' 36*34f9b3eeSRoland Mainz09-02-02 misc/cmdarg.c: handle !defined(ARG_MAX) 37*34f9b3eeSRoland Mainz09-02-02 port/astconf.c: fix UNIVERSE overwrite of null[] value! 38*34f9b3eeSRoland Mainz09-01-31 features/sys: drop header sys/localedef.h 39*34f9b3eeSRoland Mainz09-01-28 include/fs3d.h,misc/fs3d.c: mount() => fs3d_mount() for diff std prototypes 40*34f9b3eeSRoland Mainz09-01-14 misc/fts_open.c: delay top list reorder until first fts_read() 41*34f9b3eeSRoland Mainz09-01-14 include/ls.h: LS_W_INUMBER => 9 to accomodate large st_ino 42*34f9b3eeSRoland Mainz09-01-14 misc/optget.c: expand STYLE_usage input text 43*34f9b3eeSRoland Mainz09-01-09 features/uwin,stdio/_stdfun.c: iffe for _p__iob and __p__iob 44*34f9b3eeSRoland Mainz09-01-09 misc/magic.tab: add ISO filesystem image entries 45*34f9b3eeSRoland Mainz09-01-07 string/strtoi.c: strtol() etc. do not consume [lLuU] suffix -- thanks jkf 46*34f9b3eeSRoland Mainz09-01-07 sfio/sfstrtof.h: strtod() etc. do not consume [fFlL] suffix -- thanks jkf 47*34f9b3eeSRoland Mainz09-01-05 string/strlcat.c: fix logic to match docs (not that easy) 48*34f9b3eeSRoland Mainz08-12-30 tm/tmxdate.c,include/tm.h: add TM_WORK { "workday" "working" "work" } 49*34f9b3eeSRoland Mainz08-12-28 sfio/sfcvt.c: fix 'a' format rounding 50*34f9b3eeSRoland Mainz08-12-21 tm/tmdata.c: add 2008-12-31+23:59:60-0000 leap second event 51*34f9b3eeSRoland Mainz08-12-19 tm/tmxdate.c: check for dates near the epoch rolling back to the future 52*34f9b3eeSRoland Mainz08-12-19 tm/tmxfmt.c: change %s for now==0 to be the epoch 53*34f9b3eeSRoland Mainz08-12-07 include/ast_std.h,misc/getenv.c: no _ast_getenv for uwin ast54 compatibility 54*34f9b3eeSRoland Mainz08-12-07 tm/tmxfmt.c: add %[_][EO]K for [space pad] [full|long] iso 55*34f9b3eeSRoland Mainz08-12-07 sfio/sfvscanf.c: fix ok[] short by one allocation 56*34f9b3eeSRoland Mainz08-12-07 comp/setlocale.c: fix off by one composite initialition loop test 57*34f9b3eeSRoland Mainz08-12-07 path/pathkey.c: fix off by one loop test 58*34f9b3eeSRoland Mainz08-12-04 vmalloc/vmbest.c: catch sbrk() wraparound 59*34f9b3eeSRoland Mainz08-12-04 comp/spawnveg.c: clean up attrs on failure too 607c2fbfb3SApril Chin08-11-04 regex/regcomp.c: fix locale [!-...] and [^-...] re-initialization 617c2fbfb3SApril Chin08-11-04 stdio: add flockfile.c ftrylockfile.c funlockfile.c 627c2fbfb3SApril Chin08-10-24 port/astconf.c: handle multiple/trailing '/' in universe initialization 637c2fbfb3SApril Chin08-09-10 misc/magic.c: handle old vcodex() indices 647c2fbfb3SApril Chin08-09-10 sfio/sfvprintf.c: drop SF_WCWIDTH, use %Lc or %Ls instead 657c2fbfb3SApril Chin08-09-05 Makefile: ibm.risc joins the :NOOPTIMIZE: crowd 667c2fbfb3SApril Chin08-09-04 regex/regnexec.c: fix nested delimiter match beyond end of subject 677c2fbfb3SApril Chin08-08-20 misc/fts.c: fix st_nlink stat() optimization logic 687c2fbfb3SApril Chin08-08-19 sfio/sfpkrd.c: workaround macosx recv(PEEK) data consumption on non-socket 697c2fbfb3SApril Chin08-08-19 strn?tol?d: handle long double with smaller exponent range than double 707c2fbfb3SApril Chin08-08-18 sfio/sfcvt.c: eliminate excessive multiplies and integral overprecision 717c2fbfb3SApril Chin08-08-11 tm/tmxfmt.c: handle %10N and %010N 727c2fbfb3SApril Chin08-08-06 include/shcmd.h: add 'int invariant;' for builtin invarinat arg count 737c2fbfb3SApril Chin08-08-05 features/ndbm: favor sleepycat ndbm compatibility 747c2fbfb3SApril Chin08-07-21 include/glob.h,misc/glob.c: GLOB_STARSTAR only forces lstat on chdir 757c2fbfb3SApril Chin08-07-17 sfio: sync with kpv 767c2fbfb3SApril Chin08-07-17 misc/optget.c: call astwinsize() each time terminal width required 777c2fbfb3SApril Chin08-07-16 sfio/sfvscanf.c: fix %% to skip leading space per posix 787c2fbfb3SApril Chin08-07-16 vmalloc/vmbest.c: add VMCHECK=m, VM_mmap to favor mmap() alloc 797c2fbfb3SApril Chin08-07-16 features/stdio,stdio/f(read|write).c: size_t return value!! ouch 807c2fbfb3SApril Chin08-06-24 tm/tmxfmt.c: fix %z to handle tm_isdst -- doh 817c2fbfb3SApril Chin08-06-24 misc/astintercept.c,misc/getenv.c: split from misc/setenviron.c 827c2fbfb3SApril Chin08-06-17 misc/setenviron.c: add { astintercept() getenv() } 837c2fbfb3SApril Chin08-06-09 tm/tmlocale.c: use _DATE_FMT if defined for TM_DEFAULT 847c2fbfb3SApril Chin08-06-06 misc/optget.c: handle sub-component about details 857c2fbfb3SApril Chin08-06-04 misc/optget.c: fix [-n?\n...\n] version parse 867c2fbfb3SApril Chin08-06-04 include/debug.h,misc/debug.c: merge with kpvdebug.h 877c2fbfb3SApril Chin08-06-02 features/ndbm: add to tame dbmlib.iffe replication 887c2fbfb3SApril Chin08-06-01 comp/resolvepath.c,realpath.c: fix resolvepath() return value type 897c2fbfb3SApril Chin08-05-22 tm/tmxdate.c: fix a few ordinal/last/this/next bugs 907c2fbfb3SApril Chin08-05-18 string/fmtre.c: fix omitted stack var initialization bug 917c2fbfb3SApril Chin08-05-14 regex/regcomp.c,regcoll.c: fix UTF-8 collation sequence logic 927c2fbfb3SApril Chin08-05-11 tm/tmxfmt.c: :NOOPTIMIZE:, otherwise %Q/../../ fails 937c2fbfb3SApril Chin08-05-01 tm/tmxdate.c: mon 1..12 => mon[13] -- doh 947c2fbfb3SApril Chin08-04-30 misc/glob.c,reegex/regcomp.c: ~(R) => ~(O) to avoid pcre clash 957c2fbfb3SApril Chin08-04-24 port/astconf.c: 'name = value' does assignment without system init 967c2fbfb3SApril Chin08-04-15 port/astconf.c: SC#N treated like 'SC(N)' 977c2fbfb3SApril Chin08-04-14 misc/optget.c: clean up nroff output 987c2fbfb3SApril Chin08-04-01 port/astconf.c: add RELEASE => /proc/version fallback 997c2fbfb3SApril Chin08-03-30 misc/optget.c: [-n]... to enable -number & +number options 1007c2fbfb3SApril Chin08-03-06 misc/optget.c: ---* and +++* are now operands 1017c2fbfb3SApril Chin08-03-06 misc/errorx.c: fix old error_info.translate workaround 1027c2fbfb3SApril Chin08-02-05 regex/regcomp.c: allow REG_SHELL {,n}... => {0,n}... 1037c2fbfb3SApril Chin08-02-27 misc/stk.c: top element during allocation relocated to top 1047c2fbfb3SApril Chin08-02-18 include/ip6.h,string/strtoip6.c,fmtip6.c: add ipv6 addr support 1057c2fbfb3SApril Chin08-02-14 regex/regsubexec.c: fix null match (tricky) 1067c2fbfb3SApril Chin08-02-14 regex/regsubcomp.c: fix SRE to match ksh 1077c2fbfb3SApril Chin08-02-11 comp/spawnveg.c: return proper errno on [v]fork() failure 1087c2fbfb3SApril Chin08-02-11 tm/tmxdate.c,tmdata.c: handle more ISO 8601:2000 forms 1097c2fbfb3SApril Chin08-02-02 regex/reglib.h: add REGMULTIREF to REG_COMP 1107c2fbfb3SApril Chin08-02-02 string/strmatch.c: fix str="" pat="" sub values 1117c2fbfb3SApril Chin08-01-31 comp/conf.sh,conf.tab: handle /bin/sh \ in read data, redir subshell 1127c2fbfb3SApril Chin08-01-18 misc/magic.tab: amd-x68, 64-bit => x86-64 1137c2fbfb3SApril Chin08-01-18 string/strnton.c,strntonll.c: add 1147c2fbfb3SApril Chin07-12-10 string/strelapsed.c: "0" is a valid elapsed time! 1157c2fbfb3SApril Chin07-12-02 sfio/sfreserve.c: preserve SF_SHARE sfrd() via sfreserve(f,0,0) 1167c2fbfb3SApril Chin07-11-21 comp/setlocale.c: add sjis_mbtowc() to work around [\~] translation 1177c2fbfb3SApril Chin07-11-15 features/signal.c: RT(1) .. RT(MAX-1) => RTMIN+1 .. RTMAX-1 1187c2fbfb3SApril Chin07-11-14 features/float: favor sscanf() due to gnu strto[l]d() nan bugs 1197c2fbfb3SApril Chin07-10-31 regex/regcomp.c: fix REX_COLL_CLASS node allocation size 1207c2fbfb3SApril Chin07-10-31 sfio/sfcvt.c: use signbit() if available 1217c2fbfb3SApril Chin07-10-31 features/isoc99: _ISOC99_SOURCE tests 1227c2fbfb3SApril Chin07-10-31 port/astmath.c: add -DN=8 for signbit() 1237c2fbfb3SApril Chin07-10-31 sfio/sfstrtod.h: don't forget about -0.0 1247c2fbfb3SApril Chin07-10-26 features/map.c: add { optopt optarg optind opterr } 1257c2fbfb3SApril Chin07-10-26 features/stdio: add _filbuf => _ast__filbuf 1267c2fbfb3SApril Chin07-10-26 comp/getsubopt.c: fix #undef that interfered with <ast_map.h> 1277c2fbfb3SApril Chin07-10-26 regex/regcomp.c: fix bug that missed ')' in ~(F)... 1287c2fbfb3SApril Chin07-10-12 port/astconf.c: fix CONF_ALLOC 16 bit overflow 1297c2fbfb3SApril Chin07-10-12 misc/fts.c: fix fts_close() to free the handle -- doh 1307c2fbfb3SApril Chin07-10-11 comp/setlocale.c: second and subsequent setlocale(*,"") reverts to previous 1317c2fbfb3SApril Chin07-10-11 path/pathprobe.c: add vfs ST_NOSUID check 1327c2fbfb3SApril Chin07-10-10 comp/conf.tab: add a few more xpg6 deferrals 1337c2fbfb3SApril Chin07-09-28 astsa: update to share with mainline src via _PACKAGE_astsa 1347c2fbfb3SApril Chin07-09-25 sfio/sfgetr.c: no limit on string stream line size 1357c2fbfb3SApril Chin07-09-25 sfio/sfextern.c: increase _Sfmaxr to 256*1024 1367c2fbfb3SApril Chin07-09-18 misc/procopen.c: tighten up SIGCHLD logic between parent/child 1377c2fbfb3SApril Chin07-09-18 misc/signal.c: unblock SIG_DFL after setting handler, sig<0 => don't unblock 1387c2fbfb3SApril Chin07-09-13 misc/fs3d.c: no $LD_PRELOAD => no 3d and avoids invalid mount(2) call 1397c2fbfb3SApril Chin07-09-11 vmalloc: vmstat(0,0)==1 => region in use, drop VM_primary|VM_secondary 1407c2fbfb3SApril Chin07-09-05 misc/recstr.c: handle [lL] gobbled by strtol() -- ouch 1417c2fbfb3SApril Chin07-08-17 path/pathprobe.c: handle '\r' in VERSION string 1427c2fbfb3SApril Chin07-07-17 regex/regcache.c: regcache(0,n,0) extends cache to size n (no shrinking) 1437c2fbfb3SApril Chin07-07-16 tm/tmdata.c: add 2005-12-31, drop 1999-12-31 (where did that come from?) 1447c2fbfb3SApril Chin07-05-21 tm/tmxfmt.c,tmxscan.c: %F => %L (TM_DEFAULT); %F => %Y-%m-%d 1457c2fbfb3SApril Chin07-05-15 sfio/sfvprintf.c: %h? and SFFMT_SHORT => raw bytes 1467c2fbfb3SApril Chin07-05-09 features/signal.c,features/siglist: use kill -l & strsignal() 1477c2fbfb3SApril Chin07-04-25 misc/optctx.c: add for opt_info switching 1487c2fbfb3SApril Chin07-04-24 misc/cmdarg.c,include/cmdarg.h: add CMD_CHECKED, CMD_SILENT 1497c2fbfb3SApril Chin07-04-24 misc/procopen.c,include/proc.h: add PROC_CHECK 1507c2fbfb3SApril Chin07-04-24 misc/procrun.c: add flags arg (current use PROC_ARGMOD) 1517c2fbfb3SApril Chin07-04-24 misc/cmdarg.c,include/cmdarg.h: move from src/cmd/tw 1527c2fbfb3SApril Chin07-04-20 port/(lclang.h|lc.c|mc.c|lclib.h|lcgen.c): separate lctab.c 1537c2fbfb3SApril Chin07-04-20 comp/conf.sh: defer to systems without 'grep -q' -- sigh 1547c2fbfb3SApril Chin07-04-20 comp/conf.sh: probe for LL integer constant initializer suffix 1557c2fbfb3SApril Chin07-04-20 include/syslog.h: <namval.h> => <ast_namval.h> for win32 1567c2fbfb3SApril Chin07-04-20 ast_namval.h: add as copy of include/namval.h for win32 1577c2fbfb3SApril Chin07-04-19 comp/conf.tab: fix SVID SI entries to probe SI_* (not _SI_*) 158da2e3ebdSchin07-04-13 tm/tmxdate.c,tm/tmzone.c: handle [-+]0000 UTC zone offset 159da2e3ebdSchin07-04-11 sfio/sfvprintf.c: add %F, propagate SFFMT_UPPER 160da2e3ebdSchin07-04-11 sfio/sfcvt.c: handle SFFMT_UPPER => nan/inf vs. NAN/INF 161da2e3ebdSchin07-04-02 comp/conf.tab,comp/conf.sh: add C/POSIX <stdint.h> symbols 162da2e3ebdSchin07-03-28 misc/optget.c: fix l10n --?- 163da2e3ebdSchin07-03-25 features/common: fix { ast_std.h ast_map.h stdint.h } logic 164da2e3ebdSchin07-03-21 error.h: move from error_info to (*_error_data_) 1657c2fbfb3SApril Chin07-03-21 misc/error.c: add errorctx() for error_info switching 166da2e3ebdSchin07-03-21 option.h: move from opt_info to (*_opt_data_) 167da2e3ebdSchin07-03-19 regex/regdecomp.c: fix REX_ONECHAR escapes and add REX_KMP 168da2e3ebdSchin07-03-11 tm/tmxscan.c,regex/regnexec.c: fix strict-alias transgressions 169da2e3ebdSchin07-02-27 comp/conf.sh: handle native getconf invalid numeric values 170da2e3ebdSchin07-02-21 comp/conf.sh,comp/conf.tab: handle SSIZE_MAX vs _POSIX_SSIZE_MAX 171da2e3ebdSchin07-02-20 sfio/sfvprintf.c: handle SF_WCWIDTH justification 172da2e3ebdSchin07-02-14 features/common: cover <stdint.h>, move to int_(bits)_t 173da2e3ebdSchin07-02-14 include/int.h: drop 174da2e3ebdSchin07-02-14 include/sfio.h: add SF_WCWIDTH 175da2e3ebdSchin07-02-12 comp/conf.sh: fix CONF_LIMIT bug that missed ULONG_MAX etc. 176da2e3ebdSchin07-02-12 comp/conf.tab: *LONGLONG* => *LLONG* to match posix 177da2e3ebdSchin07-02-12 features/float: *LONGLONG* => *LLONG* to match posix 178da2e3ebdSchin07-02-12 port/astconf.c: handle CONF_LIMITS_DEF with no deferral 179da2e3ebdSchin07-02-12 stdio/vasprintf.c: add trailing '\0' -- doh 180da2e3ebdSchin07-02-04 string/fmtelapsed.c: fix naive multi month/year logic 181da2e3ebdSchin07-02-02 misc/optget.c: add --??posix for getopts(1)/getopt(3) 182da2e3ebdSchin07-01-26 string/chresc.c: use mbchar() 183da2e3ebdSchin07-01-26 misc/optget.c: handle "o:-:" usage for old-style long options 184da2e3ebdSchin07-01-22 sfio/sfdisc.c,sfpool.c: handle push on streams with pending peek 185da2e3ebdSchin07-01-22 include/sfio.h: mv Sfieee_t to sfio/sfhdr.h 186da2e3ebdSchin07-01-17 tm/tmxfmt.c: fix terminating nil logic which clobbered size-1 187da2e3ebdSchin07-01-11 misc/stk.c: a 2 day marathon bug fix (can we release now dr ek?) 188da2e3ebdSchin07-01-05 comp/spawnveg.c: posix_spawnattr_setflags(POSIX_SPAWN_SETPGROUP) 189da2e3ebdSchin07-01-05 misc/error.c: fix multibyte vs. printable logic 190da2e3ebdSchin07-01-01 comp/conf.sh: LC_ALL=C 191da2e3ebdSchin06-12-26 tm/tmxdate.c: handle nn*.nnnn* == sec.ns 192da2e3ebdSchin06-12-20 features/libpath.sh: generalize sol.* LIBPATH patterns 193da2e3ebdSchin06-12-18 comp/setlocale.c: include ast_standards.h and ast_wchar.h ! 194da2e3ebdSchin06-12-12 string/strperm.c: octal modes are absolute! 195da2e3ebdSchin06-12-11 comp/conf.tab: always defer ARG_MAX 196da2e3ebdSchin06-12-07 Makefile: fix conftab.c generation CCFLAGS to match build - doh 197da2e3ebdSchin06-12-04 sfio/sfcvt.c: fix (int) vs. (long) cast mismatches 198da2e3ebdSchin06-12-01 comp/conf.tab: add changes to cover solaris { bin xpg4 xpg6 } 199da2e3ebdSchin06-12-01 regex/reginit.c: adjust { SRE KRE } escaped (){}*? inside [...] 200da2e3ebdSchin06-12-01 sfio/sfcvt.c: add signbit/copysign tests 201da2e3ebdSchin06-11-22 comp/spawnveg.c: fix _real_vfork logic to work with 3d 202da2e3ebdSchin06-11-20 features/common: bias _ast_int8_t "long long" before "__int64" 203da2e3ebdSchin06-11-20 string/strperm.c: fix X to work with all ops (not just +) 204da2e3ebdSchin06-11-15 astconf.c,conf.tab: add CONF_DEFER_* for variable constants 205da2e3ebdSchin06-11-11 port/astconf.c: validate path arg w.r.t. underlying calls 206da2e3ebdSchin06-11-11 comp/conf.sh: fix S CONF_STANDARD bug, add D to defer to native 207da2e3ebdSchin06-11-11 comp/conf.tab: add D to defer to native 208da2e3ebdSchin06-11-01 include/vmalloc.h: avoid VM_FLAGS sys/v*.h clash 209da2e3ebdSchin06-11-01 include/ast.h: add FMT_PARAM for fmtquote() 210da2e3ebdSchin06-10-31 disc/sfdcseekable.c: add SFSK_DISCARD for seekable window control 211da2e3ebdSchin06-10-31 comp/spawnveg.c,features/lib: handle posix_spawn exit status 127 212da2e3ebdSchin06-10-30 features/lib: fix posix_spawn() fork() prototype conflicts 213da2e3ebdSchin06-10-30 string/fmtscale.c: fix 1024 rounding bugs 214da2e3ebdSchin06-10-27 disc/sfkeyprintf.c: handle 'i' (=='d') -- oops 215da2e3ebdSchin06-10-26 sfio/sfvprintf.c: %#d => fmtscale(1000), %#i => fmtscale(1024) 216da2e3ebdSchin06-10-26 features/map.c: _map_libc cleanup 217da2e3ebdSchin06-10-26 features/fcntl: add to the circle of trust 218da2e3ebdSchin06-10-26 features/sys: add <sys/socket.h> socklen_t 219da2e3ebdSchin06-10-26 include/regex.h: handle include before <ast_map.h> 220da2e3ebdSchin06-10-25 astconf "SHELL" => "SH" to avoid _POSIX_SHELL conflict 221da2e3ebdSchin06-10-25 comp/conf.*: drop no-op duplicate conftab.c entries 222da2e3ebdSchin06-10-18 string/fmtscale.c: 1000: n[.]n[n](kMGTPE), 1024: n[.]n[n](KMGTPE)i 223da2e3ebdSchin06-10-11 ast_std.h: now implies <sys/stat.h> (did on most before anyway) 224da2e3ebdSchin06-10-11 strtoi.h: ignore sign for 0, validate scale shift 225da2e3ebdSchin06-10-11 strdup.c,vmstrdup.c: handle 0 arg 226da2e3ebdSchin06-10-11 add sfstruse()/sfstropen() error checks 227da2e3ebdSchin06-10-10 misc/procopen.c: envv==environ => don't modify environ 228da2e3ebdSchin06-10-10 misc/procclose.c: return valid exit(1) status 229da2e3ebdSchin06-10-06 port/astconf.c,comp/conf.sh,comp/conf.tab: play nice with getconf(1) 230da2e3ebdSchin06-10-01 comp/conf.tab: SHELL default checks { _CS_PATH } X { ksh ksh93 sh } 231da2e3ebdSchin06-10-01 comp/conf.sh: export CONF_getconf to shell actions 232da2e3ebdSchin06-10-01 comp/putenv.c: always enable setenv() for procopen() 233da2e3ebdSchin06-10-01 misc/procopen.c: use pathshell() or astconf("SHELL",0,0) if PARANOID 234da2e3ebdSchin06-10-01 path/pathshell.c: localize the shell path patterns and accept ksh93 235da2e3ebdSchin06-09-28 Makefile: avoid ast <stdio.h> vix iffe -X ast -- doh 236da2e3ebdSchin06-09-27 regex/regdecomp.c: add 237da2e3ebdSchin06-09-26 regex/regcomp.c: handle KRE ~(...)<invalid-kre> 238da2e3ebdSchin06-09-25 reorganize to avoid native header intercepts 239da2e3ebdSchin06-09-15 uwin/crypt.c: _UWIN only! 240da2e3ebdSchin06-09-14 Makefile: tweak the ast_common.h bootstrap again (finally?) 241da2e3ebdSchin06-09-14 misc/optget.c: noncommercial => OPT_proprietary 242da2e3ebdSchin06-09-12 string/strelapsed.c: fix multi-char qualifier parse 243da2e3ebdSchin06-09-12 string/strtoi.h: drop [cClLqQwW] multipliers 244da2e3ebdSchin06-09-11 misc/optget.c: add numeric arg validity check 245da2e3ebdSchin06-09-07 misc/optget.c,tm/tmfix.c: fix uninitialzed var refs 246da2e3ebdSchin06-09-05 path/pathprobe.c: add version header verification 247da2e3ebdSchin06-08-01 Makefile: handle iffe vs FEATURE/common vs ast_common.h 248da2e3ebdSchin06-08-31 Makefile: add ast_map.h to the bootstrap list 249da2e3ebdSchin06-08-30 misc/glob.c: fix ~(E)re bug that stripped ~(E) before regcomp 250da2e3ebdSchin06-08-30 include/ast.h: add { integralof(x) pointerof(x) } 251da2e3ebdSchin06-08-27 string/strelapsed.c: fix off-by-one (too little) parse bug 252da2e3ebdSchin06-08-25 misc/optget.c: 0*<n>.* numeric option args => <n>.* 253da2e3ebdSchin06-08-22 misc/glob.c: handle ~(...) pattern options 254da2e3ebdSchin06-08-16 string/strelapsed.c: fix off-by-one (too far) parse bug 255da2e3ebdSchin06-08-16 regex/regcomp.c: accept but ignore ~(N) 256da2e3ebdSchin06-08-14 features/libpath.sh: add solaris LD_LIBRARY_PATH_64 check 257da2e3ebdSchin06-08-05 sfio/sfpool.c: pool SF_READ|SF_WRITE loop fix 258da2e3ebdSchin06-08-02 misc/fts.c: fix FTS_NOSTAT optimization to check for .. 259da2e3ebdSchin06-07-28 include/glob.h: add gl_extra for user globlist_t expansion 260da2e3ebdSchin06-07-27 features/common: #include "ast_map.h" 261da2e3ebdSchin06-07-26 comp/fnmatch.[ch]: allow <ast_map.h> to map fnmatch() 262da2e3ebdSchin06-07-22 cdt: snarf from kpv 263da2e3ebdSchin06-07-17 string/strperm.c: perm==-1 skips umask(1) 264da2e3ebdSchin06-07-17 sfio/sfvprintf.c: handle format invalid mb seq 265da2e3ebdSchin06-07-17 regex/regcomp.c: inline REG_SHELL => anchored, otherwise not 266da2e3ebdSchin06-07-17 regex/regcomp.c: inline B|G:basic E:REG_EXTENDED F|L:REG_LITERAL 267da2e3ebdSchin06-07-17 regex/regcomp.c: inline l:REG_LEFT r:REG_RIGHT 268da2e3ebdSchin06-07-17 regex/regcomp.c: inline a:REG_LEFT|REG_RIGHT p:~REG_LENIENT 269da2e3ebdSchin06-07-17 string/chresc.c: add \Uxxxxxxxx 270da2e3ebdSchin06-07-17 sfio/sfstrtof.h: ignore thousands sep after decimal 271da2e3ebdSchin06-07-17 string/tokline.c: splice() => spliceline() for bsd 272da2e3ebdSchin06-06-27 features/float,sfio/sfcvt.c: fix Nan logic 273da2e3ebdSchin06-06-27 port/astmath.c: fix long double isnan() test 274da2e3ebdSchin06-06-27 features/map.c: _map_libc for std => _ast_std 275da2e3ebdSchin06-06-25 string/strperm.c: handle posix = w.r.t. umask 276da2e3ebdSchin06-06-19 port/mnt.c,features/fs: handle netbsd getmntent api change 277da2e3ebdSchin06-06-18 regex/regstat.c: add REG_LITERAL check 278da2e3ebdSchin06-06-11 cdt/dtview.c: update from kpv 279da2e3ebdSchin06-05-31 sfio/sfhdr.h: fix _SFOPEN() typo 280da2e3ebdSchin06-05-09 comp/conf.sh: add native getconf -a names to the mix 281da2e3ebdSchin06-04-28 misc/optget.c: add solaris long option name compatibility 282da2e3ebdSchin06-03-09 string/strmatch.c: add REG_ADVANCE => REG_* flags 283da2e3ebdSchin06-02-14 comp/iconv.c: fix uwin iconv_list() /reg/ generator 284da2e3ebdSchin06-02-10 port/astconf.c: relax standard prefix filter 285da2e3ebdSchin06-02-08 sfrd.c,sfsync.c: lock logic bug fix 286da2e3ebdSchin06-02-01 port/astlicense.c: add { parent incorporation } 287da2e3ebdSchin06-01-26 port/astconf.c: fix { LIBPREFIX LIBSUFFIX } length 288da2e3ebdSchin06-01-06 features/lib: change _UNIV_DEFAULT probe to use cross{...} 289da2e3ebdSchin06-01-04 misc/stk.c: fix n**2 realloc behavior 290da2e3ebdSchin06-01-01 include/sfio.h: export { _Sfi _Sfmaxr } 291da2e3ebdSchin05-12-13 string/chresc.c: handle \C-X => control-X, \M- => ESC 292da2e3ebdSchin05-11-22 regex/regcache.c: add, convert string/strmatch.c to regcache() 293da2e3ebdSchin05-10-06 string/ccmap.c: update ebcdic-u to be idempotent 294da2e3ebdSchin05-09-28 vmalloc: snarf from kpv; fixes large block brk() thrashing 295da2e3ebdSchin05-09-26 misc/magic.c,misc/magic.tab: handle latest vcodex header 296da2e3ebdSchin05-09-12 misc/optget.c: reset opt_info.offset on error 297da2e3ebdSchin string/strtoi.h: strton() '.' multiplier only if m>1 298da2e3ebdSchin string/fmtesc.c: add unadvertized FMT_PARM for FMT_SHELL 299da2e3ebdSchin05-09-09 string/fmtesc.c: fix FMT_SHELL logic w.r.t. [$`] 300da2e3ebdSchin05-08-11 string/strerror.c: fix { sys_errlist sys_nerr } prototypes 301da2e3ebdSchin05-08-03 sfio: snarf sfvaprints sfaprints 302da2e3ebdSchin05-07-21 port/astconf.c: retain most recent synthesized lookup 303da2e3ebdSchin05-07-20 sfio/sfsetbuf.c: default file io size now 64K on all systems 304da2e3ebdSchin05-07-17 ccmap*: add microfocus cobol EBCDIC_U 305da2e3ebdSchin05-06-29 regex/regcomp.c: fix the A & B inline flag logic 306da2e3ebdSchin05-06-15 include/recfmt.h: add fs format flag to fmtrec() 307da2e3ebdSchin05-06-14 error.c: add ERROR_OPTIONS { break count match } 308da2e3ebdSchin05-06-07 features/stdio: drop FEATURE/limits to fix bootstrap circular dep 309da2e3ebdSchin05-06-02 features/*,Makefile: drop vestigel iffeio.h bootstrap workaround 310da2e3ebdSchin05-05-31 string/fmtbuf.c: unlock (spin) before each return -- doh 311da2e3ebdSchin05-05-30 sfio/sfpkrd.c: work around macos 10.4 recv(MSG_PEEK) bug 312da2e3ebdSchin05-05-27 regex: add REX_NEST (?%[S.][T.][OT]) 313da2e3ebdSchin magic.tab: ammend bsd db magic 314da2e3ebdSchin05-05-23 regex: REX_NEST (?%[D.][E.][L.][Q.][oc]...) 315da2e3ebdSchin05-05-21 regex: state.fold[] is now locale specific -- doh 316da2e3ebdSchin05-05-19 regex: add REX_NEST (?%\\()<>[]""...) %(...) nested match 317da2e3ebdSchin05-05-15 recfmt.h: add recstr() reclen() fmtrec() 318da2e3ebdSchin05-05-13 optget.c: allow boolean options to take numeric values 319da2e3ebdSchin05-05-12 recfmt.c: add to recfmt.h, adjust Recfmt_t encodings 320da2e3ebdSchin05-04-30 sfio: add sfmaxr(), default 64K 321da2e3ebdSchin05-04-22 comp/omitted.c: fix magic() logic for files < 512 bytes 322da2e3ebdSchin05-04-20 cdt: snarf update from kpv; void* Dt_t.user added 323da2e3ebdSchin misc/error.c: library => ERROR_LIBRARY 324da2e3ebdSchin05-04-19 regex/regcomp.c: handle REG_SHELL [^...] == [!...] 325da2e3ebdSchin05-04-11 tm/tmxscan.c: handle yyy.mm.dd[-+.]hh.mm.ss.nnnnnn 326da2e3ebdSchin05-04-07 regex/regnexec.c: fix out of bounds boundary check -- ouch 327da2e3ebdSchin features/align.c: add jmp_buf to the alignment mix (ia64) 328da2e3ebdSchin vmalloc/vmhdr.h: add jmp_buf to the alignment mix (ia64) 329da2e3ebdSchin05-03-31 misc/optget.c: fix option { - _ } separator matching 330da2e3ebdSchin05-03-30 misc/glob.c: eliminate superfluous GLOB_NOMATCH stat() calls 331da2e3ebdSchin05-03-24 port/astwinsize.c: include <sys/ioctl.h> if possible 332da2e3ebdSchin05-03-23 string/ccmap.c: add ebcdic-m mvs cobol table 333da2e3ebdSchin05-03-11 comp/omitted.c: handle utime[s](const,const) 334da2e3ebdSchin comp/conf.tab: fix linux PID_MAX probe 335da2e3ebdSchin05-03-10 comp/setlocale.c: LC_* value "" => unset -- doh 336da2e3ebdSchin misc/optget.c: reorder _PACKAGE_astsa code for msgcc 337da2e3ebdSchin05-03-08 misc/optget.c: delete leading space in STYLE_nroff output 338da2e3ebdSchin05-03-07 sfio/sfhdr.h: drop extern _sfdscan -- clashes with sfvscanf.c static 339da2e3ebdSchin05-03-01 tm/tminit.c: add tmlocaltime() for tzset() getenv() override workaround 340da2e3ebdSchin05-02-20 features/tvlib: tmsettimeofday only for systems that have settimeofday 341da2e3ebdSchin features/float: fix mvs.s390 NaN tests 342da2e3ebdSchin05-02-18 tm/tmxmake.c: fix <0 west of GMT bug that warped to 1800's -- wow 343da2e3ebdSchin05-02-11 port/mnt.c: handle lynxos MOUNTED=/etc/fstab 344da2e3ebdSchin05-02-08 features/float,sfio.h,sfcvt.c,sftable.c: add INF and fix NAN 345da2e3ebdSchin05-02-04 features/lib: add _std_strtol (for lynxos) 346da2e3ebdSchin include/ast_std.h: add _std_strtol tests 347da2e3ebdSchin comp/strtod.c: #define S2F_function strtod 348da2e3ebdSchin misc/signal.c: fix ancient bsd SV_INTERRUPT vs. SV_ABORT clash 349da2e3ebdSchin05-01-11 sfio/sfmove.c: try to seek(fr) when fw==0 350da2e3ebdSchin comp/omitted.c: intercept utimes() too 351da2e3ebdSchin comp/omitted.c: add DOSPATHVARS env var path value conversions 352da2e3ebdSchin features/tvlib,tm/tvtouch.c: check for utimets() 353da2e3ebdSchin misc/optget.c: handle '-' or '_' option word separators 354da2e3ebdSchin sfio/_sfopen.c: allow stream mode changes after initialization 355da2e3ebdSchin sfio: sync with kpv: SF_SYNCED fix for ksh input loss bug 356da2e3ebdSchin05-01-09 tm/tmxfmt.c: fix %6N for n<100000000 357da2e3ebdSchin05-01-08 regex/regcomp.c: conj() => con() to avoid C99 clash 358da2e3ebdSchin05-01-05 tm/*: fix { %U %V %W } logic -- my head hurts 359da2e3ebdSchin04-12-30 tm/tmxtime.c: fix tm_isdst<0 loop 360da2e3ebdSchin04-12-23 vmalloc/vmbest.c: fix vmresize bug that didn't 0 new data 361da2e3ebdSchin04-12-19 misc/optget.c: broaden - long option match 362da2e3ebdSchin04-12-09 string/strtoi.h: fix terabyte 't' suffix math 363da2e3ebdSchin string/strmatch.c: flush cache on locale change 364da2e3ebdSchin04-12-01 tm/tmsleep.c: add 365da2e3ebdSchin tv.h,tv*.c,tv.3: move from pax 366da2e3ebdSchin tmx.h,tmx*.c,tmx.3: add high resolution tm(3) counterparts 367da2e3ebdSchin features/lib: add *another* sgi linux.ia64 memccpy bug check 368da2e3ebdSchin04-10-31 Makefile: __OBSOLETE__ now computed <6 months ago year>0101 369da2e3ebdSchin ccode.h,ccmapid.c: add ccmaplist(Ccmap_t*) iterator 370da2e3ebdSchin option.h,optesc.c: add 3rd arg, 1 => quote '?' too 371da2e3ebdSchin misc/magic.c: fix bug that terminated `string \0a' at \0 372da2e3ebdSchin misc/magic.c: handle vcodex() via decompose() 373da2e3ebdSchin misc/magic.tab: add vcodex magic 374da2e3ebdSchin features/stdio: handle _LARGEFILE64_SOURCE -- oops 375da2e3ebdSchin stdio/(fseek|ftell|fseeko|fsetpos|fgetpos|ftello).c: oops^2 376da2e3ebdSchin04-10-28 string/swapop.c: size==-4 => size=4 and extend op=3 to op=7 377da2e3ebdSchin tm/tmfix.c: fix tm_mon<0 logic 378da2e3ebdSchin04-10-22 tm/tmdate.c: handle 'final day feb 2004' 379da2e3ebdSchin port/astlicense.c: add query=all|id|${...}${...} 380da2e3ebdSchin port/astlicense.c: "free" => "mit" 381da2e3ebdSchin comp/omitted.c: revert to the open source license 382da2e3ebdSchin string/stropt.c: drop siz==0 => tab is hash table 383da2e3ebdSchin include/sfio.h: incorporate <sfstr.h> 384da2e3ebdSchin include/sfstr.h: drop 385da2e3ebdSchin disc/sfstrtmp.c: drop -- use sfstrbuf() 386da2e3ebdSchin04-10-20 misc/magic.tab: update tar magic 387da2e3ebdSchin04-10-18 ufc-crypt.h,crypt_util.c: drop GPL code 388da2e3ebdSchin crypt.c: add BSD code 389da2e3ebdSchin pathpath.c: disable { $0 $_ $PWD } related root search 390da2e3ebdSchin04-10-01 normalize ident stamps 391da2e3ebdSchin port/astlicense.c: add type=cpl -- yeah 392da2e3ebdSchin04-09-25 string/swapop.c: return op < size -- duh 393da2e3ebdSchin04-09-23 comp/spawnveg.c: :NOOPTIMIZE: -- volatile sometimes ignored 394da2e3ebdSchin04-09-21 comp/spawnveg.c: exec_errno_ptr is volatile -- duh 395da2e3ebdSchin04-09-14 tm/tmscan.c: add %| alternation and %& => tmdate() 396da2e3ebdSchin04-09-08 misc/optget.c: add :!value: omitted optional arg value 397da2e3ebdSchin misc/optget.c: fix --noNAME ambiguous option logic 398da2e3ebdSchin04-08-26 string/strperm.c: add who^mode to propagate least restrictive up 399da2e3ebdSchin astmath.c: add { frexpl ldexpl } checks for ast.req 400da2e3ebdSchin port/astlicense.c: ignore first option if non-assignment 401da2e3ebdSchin include/ast_dir.h: move d_fileno map before struct defs -- duh 402da2e3ebdSchin04-08-24 vmalloc/vmbest.c: add {VM_region} VMCHECK=+r for region segment checks 403da2e3ebdSchin misc/recfmt.c,include/recfmt.h: add 404da2e3ebdSchin04-08-23 vmalloc/vmbest.c: add {VM_primary VM_secondary} VMCHECK=-s for primary 405da2e3ebdSchin features/common: punt to <stdarg.h> for unknown va_list 406da2e3ebdSchin04-08-11 vmalloc: sync _UWIN libposix hooks 407da2e3ebdSchin04-07-27 features/common,features/limits.c: ULL suffix for unsigned _ast_int8_t 408da2e3ebdSchin04-07-22 include/ast.h,comp/eaccess.c: add eaccess() for effective access() 409da2e3ebdSchin04-07-19 comp/open.c,sfio/_sfopen.c: { O_RDONLY O_WRONLY O_RDWR } are values 410da2e3ebdSchin04-06-28 misc/error.c: check level after error_info.auxilliary 411da2e3ebdSchin04-06-24 string/strmatch.c: strgrpmatch() match[] now variable size array 412da2e3ebdSchin04-06-17 features/common: change _DLL null define to (the standard ast) 1 413da2e3ebdSchin04-06-11 misc/optget.c: allow optional [-|+|--|++] optstr() option prefix 414da2e3ebdSchin misc/optget.c: reset optstr() state on 0 return 415da2e3ebdSchin misc/optget.c: text()=>textout() linux.ppc symbol hijack workaround 416da2e3ebdSchin04-05-31 sfio/sfreserve.c: no side buffer if user buffer is large enough 417da2e3ebdSchin04-05-27 string/fmtbuf.c: handle one concurrent buf > sizeof(buf) 418da2e3ebdSchin04-05-24 regcomp.c: fix no-advance initialization 419da2e3ebdSchin04-05-05 conf.tab,conf.sh: update to align with standards 420da2e3ebdSchin magic.tab: ms suffix update 421da2e3ebdSchin04-05-04 port/lcgen.c: fix territory initialization 422da2e3ebdSchin04-04-15 tm/tmdate.c,include/tm.h: fix specific and ordinal days 423da2e3ebdSchin04-04-08 astconf: retain { HOSTTYPE LIBPATH LIBPREFIX LIBSUFFIX } strict vals 424da2e3ebdSchin04-04-07 vmalloc/vmbest.c: fix alpha tiny block bug 425da2e3ebdSchin vmalloc/malloc.c: re-enable on alpha 426da2e3ebdSchin04-03-30 tm/tminit.c: GMT => UCT only if tz.daylight not defined 427da2e3ebdSchin04-03-25 vmalloc/malloc.c: _AST_std_malloc=1 for __alpha 428da2e3ebdSchin path/pathprobe.c: per-user probe dir => $HOME/.probe/$HOSTTYPE 429da2e3ebdSchin04-03-23 regex/reglib.h: fix isw*() redefines 430da2e3ebdSchin04-03-17 features/stdio: no __FILE override for __CYGWIN_ (sys/reent.h clash) 431da2e3ebdSchin sfio/sfhdr.h,sfio/sfsetbuf.c: lower sfmove() default buf size 4x 432da2e3ebdSchin04-02-29 comp/omitted.c: move env trace after PATH fixup 433da2e3ebdSchin comp/omitted.c: cygwin spawn _P_DETACH => _P_NOWAIT+setpgid(pid,0) 434da2e3ebdSchin misc/optget.c: fix html mailto: match 435da2e3ebdSchin port/astlicense.c: add type=test for fixed 2001 date 436da2e3ebdSchin features/float: check local NaNQ first 437da2e3ebdSchin vmalloc/vmhdr.h: fix _vmextern_ vm_truncate return type 438da2e3ebdSchin misc/magic.tab: add elf s390 index=22 439da2e3ebdSchin04-02-26 vmalloc: VMCHECK a:assertions c:arena-check w:warn-instead-of-abort 440da2e3ebdSchin sfio/sfvscanf.c: fix extf arg selection 441da2e3ebdSchin04-02-24 features/dirent: set nodefine to avoid ast_std.h _typ_off64_t undef 442da2e3ebdSchin disc/sfkeyprintf.c: only case pattern must be ()[] balanced 443da2e3ebdSchin04-02-14 include/sfio_t.h: add SF_DCDOWN, SFDCNEXT(), SFDCPREV() 444da2e3ebdSchin04-02-13 string/strmatch.c: fix bug that didn't save one-time sub[] size 445da2e3ebdSchin vmalloc: -g: export VMCHECK=1 enable malloc/free checks 446da2e3ebdSchin vmalloc: -g: free(0) to check and disable malloc/free checks 447da2e3ebdSchin vmalloc: -g: free(1) to check and enable malloc/free checks 448da2e3ebdSchin04-02-11 Makefile: add :P=A: to conf and lcgen exec for cross-compile 449da2e3ebdSchin regex: use MBSIZE() instead of mbsize() to grab 1 char on err 450da2e3ebdSchin vmalloc/vmbest.c: updated to do more comprehensive DEBUG tests 451da2e3ebdSchin04-02-04 sfio/sfraise.c: add sfraise(0,a,b) to iterate over all streams 452da2e3ebdSchin04-02-01 vmalloc/vmbest.c: _BLD_DEBUG free(0) checks the arena 453da2e3ebdSchin04-01-31 features/vmalloc: fix typo that missed _mmap_zero 454da2e3ebdSchin04-01-23 string/strerror.c: handle real strerror() return value overwrite 455da2e3ebdSchin04-01-11 path/pathpath.c: fix size vs. sizeof(buf) typo 456da2e3ebdSchin03-12-22 misc/magic.tab: dos EXE tweaks 457da2e3ebdSchin03-12-05 vmalloc: sync with kpv, adding exceptf announcements 458da2e3ebdSchin03-12-04 port/astlicense.c: fix expand() loop sentinel bug 459da2e3ebdSchin03-12-02 include/ast.h: mbchar() advances by 1 on mbtowc() error 460da2e3ebdSchin misc/fts.c: increase MINNAME to 32 461da2e3ebdSchin03-11-21 vmalloc/vmbest.c: export VMCHECK=1 to enable $(CC.DEBUG) vmcheck() 462da2e3ebdSchin vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT 463da2e3ebdSchin misc/magic.c: add { cobol copybook pl1 } and suffix preference 464da2e3ebdSchin03-11-12 features/stdio: drop cuserid,getopt for SUSV3 465da2e3ebdSchin03-11-11 vmalloc/*: merge kpv update -- this should stomp the compaction bug 466da2e3ebdSchin03-10-23 comp/iconv.c: fix sfreserve lock fallback 467da2e3ebdSchin03-10-20 sfio/_sfopen.c: add to allow user sfopen() intercept 468da2e3ebdSchin03-10-17 regnexec.c: fix exec time REG_LEFT, \x.... => wctomb() 469da2e3ebdSchin03-10-12 string/strtoi.h: fix strton '.' overconsumption 470da2e3ebdSchin03-10-12 comp/iconv.c: identity is always (iconv_t)0 471da2e3ebdSchin03-10-09 string/fmtesc.c: fix FMT_SHELL to check for all shell magic chars 472da2e3ebdSchin03-10-01 port/astlicense.c: unknown authors copied verbatim (instead of ignored) 473da2e3ebdSchin03-09-30 string/chresc.c: handle \u..., \x... consumes all trailing hex digits 474da2e3ebdSchin string/stresc.c: \u... and \x... > UCHAR_MAX => wctomb() 475da2e3ebdSchin03-09-29 fnv.h: add 476da2e3ebdSchin03-09-23 modedata.c: table is for external modes, so no arch specific hacks 477da2e3ebdSchin optget.c: fix option prefix match translation bug 478da2e3ebdSchin optget.c: add `<length> <name>=<value>\n' to optstr() 479da2e3ebdSchin features/lib: add memcmp() test for sgi optimzation bug 480da2e3ebdSchin03-09-22 regex.h,regcomp.c: add regncomp() 481da2e3ebdSchin regclass.c: fix for loop dangling ; in regaddclass() 482da2e3ebdSchin03-09-20 sftable.c,sfvprintf.c: fix SFFMT_CHAR handling to match extf api 483da2e3ebdSchin03-09-19 sfmode.c: update release to kpv's 484da2e3ebdSchin03-09-17 regcomp.c: add pedantic backref error checks 485da2e3ebdSchin03-09-16 regnexec.c: exec time REG_LEFT => don't advance past initial position 486da2e3ebdSchin regclass.c: add regaddclass() for user defined [:class:] 487da2e3ebdSchin regexec.h: REG_VERSION_N2X, add redisc_t {re_map} ccode map 488da2e3ebdSchin regstat.c: add regstat_t 489da2e3ebdSchin03-09-11 optget.c: --n:=v sets opt_info.assign=':', opt_info.number enabled 490da2e3ebdSchin03-09-09 disc/sfkeyprintf.c: *pn on lookup is arg separator; lookup "" arg too 491da2e3ebdSchin03-09-05 optget.c: [f:l*?] preserves user long name past '*' in opt_info.name[] 492da2e3ebdSchin03-09-03 sfstr.h: add sfstrpend() for #pending bytes in read buffer 493da2e3ebdSchin03-08-25 regex: add REG_FIRST, optimize bm 494da2e3ebdSchin features/lib: _AST_no_spawnveg==1 falls back to fork/exec 495da2e3ebdSchin03-08-22 features/stdio,stdio/asprintf.c,stdio/vasprintf.c: add 496da2e3ebdSchin03-08-21 path/pathnative.c,path/pathposix.c: interix updates 497da2e3ebdSchin features/botched: add cygwin _stat => _stat64 498da2e3ebdSchin03-08-15 include/ast.h: map out bsd strmode() 499da2e3ebdSchin features/common: add interix _ast_intmax_t workarounds 500da2e3ebdSchin misc/fs3d.c: 3d mount test now uses "" instead of NiL (or cygwin dumps) 501da2e3ebdSchin03-08-11 string/fmtesc.c: fix optional quoting checks 502da2e3ebdSchin tm/tmdate.c: fix > 1 year of seconds arithmetic 503da2e3ebdSchin tm/tmfix.c: fix leap year adjustments 504da2e3ebdSchin03-08-01 features/lib: beef up sock_peek test for interix 505da2e3ebdSchin03-07-29 features/float: add -lm to frexp... test 506da2e3ebdSchin Makefile: fix -lm astmath test sense 507da2e3ebdSchin03-07-26 features/mem.c: favor _mem_sbrk over _mem_mmap_* 508da2e3ebdSchin03-07-22 vmalloc/vmbest.c: fall back to sbrk() if mmap() fails 509da2e3ebdSchin features/mem.c: _mem_sbrk means sbrk() and brk() work 510da2e3ebdSchin03-07-17 regex/regcomp.c: fix bug that treated KRE X{n,m} like {n,m}(X) 511da2e3ebdSchin misc/magic.c: check MAGIC_VERBOSE for all load() messages 512da2e3ebdSchin03-07-14 misc/optget.c: handle [...]{[...]\f...\f...} 513da2e3ebdSchin03-06-21 misc/sigcrit.c: block SIGCHLD if _lib_sigprocmask || _lib_sigsetmask 514da2e3ebdSchin comp/spawnveg.c,sfio/sfmode.c: use sigcritical() SIG_REG_* macros 515da2e3ebdSchin comp/spawnveg.c: drop ENOEXEC logic 516da2e3ebdSchin vmalloc/*: snarf kpv KPVCOMPACT() fix 517da2e3ebdSchin vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT (just in case) 518da2e3ebdSchin string/strdup.c: drop __strdup() etc. intercepts -- malloc gets it 519da2e3ebdSchin features/mem: define _mem_method and _mem_* possible values 520da2e3ebdSchin vmalloc/malloc.c: _AST_mem_method==_mem_* to force mem get method 521da2e3ebdSchin sfio/sfputr.c: __ia64 memccpy is bogus -- how many tries do they get? 522da2e3ebdSchin path/pathshell.c: verify abs path and access(path,X_OK) -- duh 523da2e3ebdSchin vmalloc/vmhdr.h: add private _Vmessage() for non-sfio ASSERT() 524da2e3ebdSchin port/astconf.c: fix bug that always returned the minmax value 525da2e3ebdSchin03-06-11 comp/*.c: reorder macro hding for mvs.390 and <ast_map.h> 526da2e3ebdSchin features/vmalloc: add _lib_brk and _lib_sbrk verification 527da2e3ebdSchin include/ast_std.h,etc.: add _map_malloc for malloc => _ast_malloc 528da2e3ebdSchin comp/conf.sh: fix SI_* and *_SI_* macro redefs 529da2e3ebdSchin ast.h: VMDEBUG or _BLD_DEBUG enable <vmalloc.h> and VMFL tracing 530da2e3ebdSchin vmalloc/vmtrace.c: _PACKAGE_ast __FUNCTION__ is a string 531da2e3ebdSchin vmalloc/vmtrace.c: set trace file fd FD_CLOEXEC 532da2e3ebdSchin vmalloc/vmbest.c: set /dev/zero mmap fd FD_CLOEXEC 533da2e3ebdSchin features/mmap: fix ancient read() vs. mmap() time arithmetic typo 534da2e3ebdSchin vmalloc/malloc.c: _AST_std_malloc==1 to force standard malloc 535da2e3ebdSchin03-06-09 comp/omitted.c: add _imp__FUNCTION sybols for __CYGWIN__ static link 536da2e3ebdSchin vmalloc/vmbest.c: handle systems with sbrk() but no brk() 537da2e3ebdSchin03-06-04 port/astconf.c: drop non-standard diagnostics 538da2e3ebdSchin03-06-03 comp/conf.sh: rework symbol collision logic 539da2e3ebdSchin03-05-30 conf.tab,conf.sh,astconf.c: add <sys/systeminfo.h> sysinfo() SI_* 540da2e3ebdSchin03-05-29 ccode.h: rework for extensibility, drop obsolete mematoe(), memetoa() 541da2e3ebdSchin03-05-28 regex/*: recode to use isw*() directly when needed, is*() otherwise 542da2e3ebdSchin03-05-27 features/vmalloc: fix _std_malloc test 543da2e3ebdSchin03-05-25 misc/optget.c: fix optstr() ???* internal options 544da2e3ebdSchin03-05-24 misc/optget.c: fix (ancient) argv null dereference 545da2e3ebdSchin03-05-23 comp/getcwd.c: don't intercept on _WINIX -- unreliable st_ino 546da2e3ebdSchin03-05-22 sfio/sfsprintf.c: n<0 => don't append '\0' 547da2e3ebdSchin03-05-18 misc/fts.c: re-stat FTS_DP to update nlink/times 548da2e3ebdSchin misc/fts.c: add FTSENT.stack to eliminate getlist() recursion 549da2e3ebdSchin regex/ucs_names.h: use "..." catenation to placate some cc's 550da2e3ebdSchin03-05-11 string/strtoi.h: handle "-" "+" "0x" "11#" 551da2e3ebdSchin03-05-09 vmalloc/vmbest.c: large memory allocation tweaks 552da2e3ebdSchin03-05-06 misc/optget.c: fix getopt_long() prefix==1 bug that missed short flags 553da2e3ebdSchin03-04-27 comp/system.c: handle <ast_map.h> 554da2e3ebdSchin03-04-24 vmalloc/vmmopen.c: drop dup <unistd.h> 555da2e3ebdSchin03-04-21 tm/tmdate.c: fix next hour/min logic 556da2e3ebdSchin03-04-15 vmalloc/malloc.c: intercept __malloc() along with __libc_malloc() 557da2e3ebdSchin string/strdup.c: intercept __strdup() along with __libc_strdup() 558da2e3ebdSchin features/mmap: consolidate from features/(lib|sfio|vmalloc) 559da2e3ebdSchin add _NO_MMAP==1 to disable all mmap()/munmap() calls 560da2e3ebdSchin path/pathposix.c: add 561da2e3ebdSchin03-04-14 comp/setlocale.c: fix debug_mbtowc() return value for *s==0 || n < 1 562da2e3ebdSchin comp/iconv.c: fix error return errno values 563da2e3ebdSchin03-04-11 misc/stk.c: fix stkgrow() realloc bug 564da2e3ebdSchin03-04-05 string/tok.c: support readonly single token input strings 565da2e3ebdSchin disc/sfdcdio.c: fix F_DIOINFO and FDIRECT #ifdef's 566da2e3ebdSchin include/ast_std.h: allow _LARGEFILE64_SOURCE on __hppa 567da2e3ebdSchin features/common: fix `tst _foo_' => `tst foo_' typo 568da2e3ebdSchin features/float: fix `tst _foo_' => `tst foo_' typo 569da2e3ebdSchin features/float: add FLTMAX_(UINTMAX_MAX,INTMAX_MAX,INTMAX_MIN) 570da2e3ebdSchin comp/omitted.c: fix pathconf => _pathconf => _ast_pathconf loop 571da2e3ebdSchin03-04-03 features/float: add _ast_no_um2fm: no usinged intmax => floatmax cast 572da2e3ebdSchin vmalloc/vmbest.c: add getenv("VMCHECK") to initialize Vmcheck 573da2e3ebdSchin03-03-28 include/ast_dir.h: add D_TYPE; { D_FILENO D_TYPE } must be #ifdef'd 574da2e3ebdSchin misc/fts.c|getcwd.c|glob.c,preroot/getpreroot.c: add D_FILENO #ifdef's 575da2e3ebdSchin Makefile: make sure _BLD_ast is defined for all compiles 576da2e3ebdSchin03-03-27 ast_vfork.h: generate from features/vfork to pick up headers/pragmas 577da2e3ebdSchin03-03-25 comp/omitted.c: drop free() of live environ 578da2e3ebdSchin path/pathshell.c: allow trailing .exe -- pox on that 579da2e3ebdSchin string/strtoi.h: fix bug leading 3 digits before thousands sep bug 580da2e3ebdSchin string/(fmt|str)[gu]id.c: we know root when we see it 581da2e3ebdSchin03-03-24 misc/optget.c: handle : and ? in := default value 582da2e3ebdSchin03-03-21 ast_std.h: drop all spawn*() but spawnveg() 583da2e3ebdSchin obsolete/spawn.c: add for dropped spawn*() 584da2e3ebdSchin features/lib: _use_spawnveg if spawnveg() is a win over fork()/exec() 585da2e3ebdSchin features/lib: drop NutForkExecve() and _map_spawnve 586da2e3ebdSchin features/lib: fix memccpy test to clean up /tmp droppings 587da2e3ebdSchin comp/spawnveg.c: call posix_spawn() if implemented 588da2e3ebdSchin comp/omitted.c: add spawnve() intercept 589da2e3ebdSchin comp/getoptl.c: set getopt_long() optind even if no options 590da2e3ebdSchin tm/tmfmt.c: add %Q<delim>recent<delim>distant<delim> 591da2e3ebdSchin misc/optget.c: fix trailing '*' for option and option args 592da2e3ebdSchin sfio/sfmode.c: getenv("_AST_SFIO_OPTIONS") [,]SF_LINE[,] for fd {0,1,2} 593da2e3ebdSchin vmalloc/*: kpv sync for uwin build independent of libast 594da2e3ebdSchin03-03-18 port/astconf.c: switch to dynamic string values (saves 7K data/bss) 595da2e3ebdSchin string/strmatch.c: switch to dynamic regex cache (saves 3K data/bss) 596da2e3ebdSchin regex/regcoll.c,ucs_names.h: initialize rw tables from smaller ro data 597da2e3ebdSchin features/lib: add vfork test for passing SIG_IGN across exec 598da2e3ebdSchin features/lib: add spawn test for passing SIG_IGN across spawn 599da2e3ebdSchin03-03-17 comp/omitted.c: unlink() renames to .deleted dir in case file open 600da2e3ebdSchin sfio/sfpopen.c: handle mode "" for spawn with no pipe 601da2e3ebdSchin features/float,comp/frexp.c,comp/frexpl.c: add pow2() table alternative 602da2e3ebdSchin03-03-12 features/lib: fix linux.ia64 memccpy() tests -- now its their turn 603da2e3ebdSchin features/vmalloc: fix /dev/zero test 604da2e3ebdSchin features/align: _ast_intmax_t and _ast_fltmax_t join the union 605da2e3ebdSchin misc/stk.c: fix struct frame size to align data 606da2e3ebdSchin disc/sfdcdos.c: change sfslen() => sfvalue(f) 607da2e3ebdSchin03-03-10 misc/optget.c: handle [f\f:x:lll\f?ddd] 608da2e3ebdSchin03-03-07 port/astconf.c: uninitialized CONFORMANCE + POSIXLY_CORRECT => standard 609da2e3ebdSchin03-03-05 comp/omitted.c: make sure at least /bin is in PATH to find cygwin dlls 610da2e3ebdSchin03-03-02 path/pathshell.c: write access to /bin is effectively root 611da2e3ebdSchin03-02-28 features/float: add (FLT|DBL|LDBL)_U?(LONG|LONGLONG|INTMAX)_(MIN|MAX) 612da2e3ebdSchin03-02-25 features/lib: change vfork() test to use _exit() instead of exit() 613da2e3ebdSchin03-02-23 include/error.h: update ERROR_VERSION for error_info.number space 614da2e3ebdSchin03-02-22 comp/conf.sh: wrap ksh check in eval to avoid premature exit 615da2e3ebdSchin03-02-21 misc/fts.c: verify chdir(..) to avoid malicious dir rename() 616da2e3ebdSchin03-02-19 string/strtoip4.c: isspace() instead of ' '||'\t' 617da2e3ebdSchin03-02-17 regex/regcomp.c: fix stats.l REX_REP logic that botched REX_BM 618da2e3ebdSchin03-02-13 string/base64.c: handle catenated encodings 619da2e3ebdSchin03-02-11 features/libpath.sh: change LIBPATH to <dir>[:<env>[:<pat>]][,...] 620da2e3ebdSchin03-02-07 path/pathfind.c: allow "/dev/null" to be PATH_REGULAR 621da2e3ebdSchin03-02-06 include/ast.h,fmtquote.c: add FMT_ALWAYS|FMT_ESCAPED|FMT_SHELL|FMT_WIDE 622da2e3ebdSchin03-02-05 tm/tmdate.c,tm/tmword.c,string/strelapsed.c: '_' treated like ' ' 623da2e3ebdSchin03-02-01 string/strelapsed.c: handle ps style [day-][hour:]min:sec 624da2e3ebdSchin03-01-31 port/astlicense.c: fix author=* match 625da2e3ebdSchin03-01-30 include/tm.h: add tmisleapyear() macro 626da2e3ebdSchin03-01-29 comp/getopt.h,comp/getoptl.c: add gnu getopt_long(), getopt_long_only() 627da2e3ebdSchin include/ast_getopt.h: for non-gnu part of comp/getopt.h 628da2e3ebdSchin include/ast_std.h: include <ast_getopt.h> instead of <getopt.h> 629da2e3ebdSchin03-01-28 ast.h,string/base64.c: add base64encode() and base64decode() 630da2e3ebdSchin path/pathfind.c: verify S_ISREG() 631da2e3ebdSchin03-01-24 path/pathexists.c: fix abs dir bug and deal with case ignorance 632da2e3ebdSchin03-01-23 path/pathpath.c: honor PATH_ABSOLUTE for the easy case too 633da2e3ebdSchin03-01-22 path/pathprobe.c: fix search to find both the probe script and command 634da2e3ebdSchin03-01-17 misc/magic.tab: application/zip => appplication/(gzip|pzip|zip) 635da2e3ebdSchin03-01-14 misc/optget.c: change href="" to href="." 636da2e3ebdSchin03-01-10 include/ast_std.h: strtold() import hackery for static __CYGWIN__ 637da2e3ebdSchin03-01-03 include/regex.h,regex/regcomp.h: add REG_SHELL_GROUP 638da2e3ebdSchin include/ast.h,string/strmatch.c: add STR_GROUP for REG_SHELL_GROUP 639da2e3ebdSchin02-12-15 include/error.h: errorcontext => Error_context_s (compatible til 2004) 640da2e3ebdSchin02-12-06 misc/sigdata.c: add NoF(sigdadata) -- why nmake was uninterruptable! 641da2e3ebdSchin02-12-03 comp/omitted.c,features/omitted: handle cygwin alarm() return botch 642da2e3ebdSchin02-11-27 misc/swapop.c: op=3,size=4 => op=7 643da2e3ebdSchin string/strlcat.c,strlcpy.c: fix uwin decl clash 644da2e3ebdSchin02-11-26 sfio/sfvprintf.c: fix sfsprintf() '\0' termination bug 645da2e3ebdSchin02-11-22 misc/glob.c: move static struniq() to libast extern 646da2e3ebdSchin string/fmtversion.c,include/ast.h: add fmtversion 647da2e3ebdSchin02-11-18 string/strncopy.c: add 648da2e3ebdSchin misc/magic.tab: list size for magicid.h magic 649da2e3ebdSchin02-11-14 sfio/sfvprintf.c: add %#c for C escapes 650da2e3ebdSchin include/error.h: add ERROR_NOTIFY context flag for builtin commands 651da2e3ebdSchin02-11-11 string/strtoi.h: add S2I_size for strnto*() size_t 2nd arg 652da2e3ebdSchin sfio/sfstrtof.h: add S2I_size for strnto*() size_t 2nd arg 653da2e3ebdSchin comp/putenv.c: add setenv() and unsetenv() wrappers for setenviron() 654da2e3ebdSchin02-10-31 path/pathfind.c: add dir of including file to the pathinclude() list 655da2e3ebdSchin misc/optesc.c: add 656da2e3ebdSchin02-10-30 string/strtoip4.c: set next char pointer even on error 657da2e3ebdSchin02-10-29 comp/resolvepath.c: add (size_t version of realpath()) 658da2e3ebdSchin misc/mime.c: fix mimehead() to ignore null content values 659da2e3ebdSchin02-10-28 misc/glob.c: add GLOB_STARSTAR for /**/ and GLOB_NOTDIR optimization 660da2e3ebdSchin02-10-27 string/struniq.c: add 661da2e3ebdSchin02-10-23 features/common: fix off-by-one loop check 662da2e3ebdSchin02-10-18 include/ast_std.h: avoid off_t,ftruncate,lseek,truncate redefinitions 663da2e3ebdSchin02-10-17 misc/mime.c: handle type/* match, fix bogus header parse 664da2e3ebdSchin02-10-04 sfio/sfstrtof.h: S2F_static <0:export =0:private >0:static 665da2e3ebdSchin02-10-02 features/common: don't define _WIN32; define _WINIX => unix on windows 666da2e3ebdSchin features/tty: finally stomp the bsd _POSIX_VDISABLE redefinition 667da2e3ebdSchin misc/fastfind.c: add more specific findwrite() error messages 668da2e3ebdSchin comp/omitted.c: fix cygwin utime() to update st_ctime 669da2e3ebdSchin comp/strtol.c,strtoul.c: __CYGWIN__ static link workaround XXX 670da2e3ebdSchin string/fmtls.c,fmttime.c: tmform() => tmfmt() 671da2e3ebdSchin02-09-22 port/astconf.c: return values in fmtbuf() buffer instead of stack 672da2e3ebdSchin port/mnt.c: don't set MNT_REMOTE for win32 ?:\* paths 673da2e3ebdSchin sfio/sfvscanf.c: _sfdscan() is library global (not static) 674da2e3ebdSchin02-09-21 path/pathkey.c: add tool arg for mamake compatible hash 675da2e3ebdSchin features/fcntl.c: handle iffe _hdr_lcl_* => _lcl_* change 676da2e3ebdSchin02-09-15 comp/conf.sh: fix enum vs. macro test 677da2e3ebdSchin cdt: kpv sync 678da2e3ebdSchin02-09-11 ast.h,features/common: move _WIN32 macro init to features/common 679da2e3ebdSchin features/common: enable __EXTERN__ and __DEFINE__ for _WIN32&!_UWIN 680da2e3ebdSchin features/float: add -lm to _ast_*_nan_init tests 681da2e3ebdSchin vmalloc: kpv sync with vmresizef => vmgetmem 682da2e3ebdSchin features/iconv: must have both <iconv.h> and iconv_open()! 683da2e3ebdSchin features/vmalloc: alloca test must compile *and* link 684da2e3ebdSchin sfio/sfvscanf.c,sfstrtof.h: add flag arg to char get, fix NaN loop 685da2e3ebdSchin02-09-10 vmalloc/vmhdr.h: enable getpagesize() and sbrk() prototypes 686da2e3ebdSchin features/fcntl.c: enable mmap64() prototype 687da2e3ebdSchin include/ast_windows.h: windows.h wrapper with ast namespace workarounds 688da2e3ebdSchin02-09-07 misc/mime.c: fix quoted value parse bug that ate the whole line 689da2e3ebdSchin02-09-05 features/vmalloc: add free() to _std_malloc test 690da2e3ebdSchin include/ast.h: NoF(x) now defines _DATA_x for !_BLD_DLL too 691da2e3ebdSchin tm/tmlocale.c: { C POSIX en } == unix dadgummit 692da2e3ebdSchin02-08-29 path/pathfind.c: initialize Dir_t.next=0 693da2e3ebdSchin02-08-28 uwin/rint.c: update 694da2e3ebdSchin features/libpath.sh: "bin" is now the default value 695da2e3ebdSchin02-08-22 vmtrace.h: add for debugging 696da2e3ebdSchin02-08-20 misc/magic.c: convert to use <cdt.h> 697da2e3ebdSchin vmalloc/vmresizef.c: add for generic discipline resizef default 698da2e3ebdSchin string/strelapsed.c: allow long time component names 699da2e3ebdSchin02-08-19 misc/optget.c: add `.fp 5 CW' to --nroff output 700da2e3ebdSchin string/(fmtfs|fmtuid|fmtgid|strgid|struid).c: convert to use <cdt.h> 701da2e3ebdSchin include/dt.h,cdt/dtnew.c: add for dtopen() in specific vm region 702da2e3ebdSchin02-08-13 comp/omitted.c: fix bzero logic for e.g. unixware.i386 703da2e3ebdSchin include/ast.h: add fmtbase->fmtbasell; swap in 2003-09-01 704da2e3ebdSchin02-08-12 regex/regnexec.c: fix REG_MINIMAL REX_DOT mb bug 705da2e3ebdSchin02-08-08 features/iconv: <ast_common.h> instead of <sys/types.h> <ast_common.h> 706da2e3ebdSchin02-08-07 regex/regcomp.c: recognize anchors in BRE subexpressions 707da2e3ebdSchin02-08-06 comp/iconv.c: handle win32 cpNNNN == windows-NNNN aliases 708da2e3ebdSchin02-08-05 cdt/*: sync with kpv src 709da2e3ebdSchin02-08-02 features/iconv: include sys/types.h for ast_types.h 710da2e3ebdSchin02-08-01 misc/magic.c: magic file "." names the default 711da2e3ebdSchin misc/magic.c: handle addr type (from irix string) 712da2e3ebdSchin features/lib: move malloc tests to features/vmalloc 713da2e3ebdSchin features/vmalloc: snarf tests from features/lib 714da2e3ebdSchin vmalloc/*: sync with kpv src 715da2e3ebdSchin comp/libc.c: dropped -- __libc_* intercepts moved to vmalloc/malloc.c 716da2e3ebdSchin02-07-30 features/lib: handle __libc_malloc() in _std_malloc test 717da2e3ebdSchin vmalloc/malloc.c: add gnu pvalloc() 718da2e3ebdSchin features/vmalloc: fix alloca check 719da2e3ebdSchin02-07-29 features/limits.c: handle netbsd guards 720da2e3ebdSchin02-07-27 sfio/sfpoll.c: handle rw pipes 721da2e3ebdSchin02-07-25 features/iconv: include ast_types.h for size_t in ast_iconv.h 722da2e3ebdSchin02-07-18 apply LARGEFILE64 header prototype clash patches 723da2e3ebdSchin misc/optget.c: __EXTERN__ _opt_info_ instead of opt_info 724da2e3ebdSchin02-07-17 ast_std.h: memzero() now defaults to memset() instead of bzero() 725da2e3ebdSchin02-07-16 ast_std.h: add ast.env_serial 726da2e3ebdSchin misc/setenviron.c: increment ast.env_serial 727da2e3ebdSchin include/tm.h: tmset() now calls tminit() directly 728da2e3ebdSchin tm/tminit.c: check ast.env_serial for env change 729da2e3ebdSchin tm/tmfix.c: speed up for large values of tm_mday 730da2e3ebdSchin02-07-15 comp/fnmatch.c: fix memory leak caused by missing regfree() 731da2e3ebdSchin comp/strstr.c: fix broken interpretation and implementation 732da2e3ebdSchin comp/iconv.c: intercept (but no-op) null to and from buffer pointers 733da2e3ebdSchin02-06-27 ast_std.h: map _sysconf => _ast_sysconf for sun 734da2e3ebdSchin02-06-26 cdt,sfio,vmalloc: kpv sync -- is this ever easy? 735da2e3ebdSchin02-06-24 sfio: kpv sync, vfwscanf(),fputw() fix (wcslen(x)*sizeof(wchar_t)!!) 736da2e3ebdSchin misc/fts.c: fix symlink chdir() optimzation bug 737da2e3ebdSchin02-06-11 sfio/sfwrite.c: string to file fix 738da2e3ebdSchin Makefile: __OBSOLETE__==20020101 739da2e3ebdSchin02-06-01 regex/regcomp.c: REG_DELIMITED now consumes the delimiter 740da2e3ebdSchin02-05-31 regex/reglib.h,regcomp.c,regnexec.c: null subexpression fixes 741da2e3ebdSchin02-05-24 misc/fts.c: disable dir link counts in 3d 742da2e3ebdSchin misc/magic.c: fix "*(mkfile)" sh pattern to "*@(mkfile)" 743da2e3ebdSchin02-05-20 regex.h,regex/regsubcomp.c,regex/regsubexec.c: add 744da2e3ebdSchin regex/regsub.c: deprecate 745da2e3ebdSchin02-05-16 tm/tmfix.c: fix '60+n min/sec ago' bug for n min/sec after the hour 746da2e3ebdSchin02-05-14 regex/regsub.c: fix (^|x) null match early termination bug 747da2e3ebdSchin02-05-13 dir/dirlib.h: drop errant extern==__EXPORT__ 748da2e3ebdSchin features/uwin: add uwin lib tests 749da2e3ebdSchin uwin/*.c: check features/uwin for stubs 750da2e3ebdSchin features/float: add nan representation generation 751da2e3ebdSchin sfio/sftable.h: used _ast_*_nan_init for huge values 752da2e3ebdSchin02-05-09 misc/fts.c: fix virtual top to force ``child'' stat() 753da2e3ebdSchin features/common: define va_copy() only if not in <stdarg.h> 754da2e3ebdSchin02-05-01 string/strtoip4.c: cisco inverted quad mask must have 4 parts 755da2e3ebdSchin02-04-30 misc/magic.tab: fix pzip version check 756da2e3ebdSchin02-04-19 string/strtoip4.c: handle cisco inverted quad mask n.n.n.n/i.i.i.i 757da2e3ebdSchin02-04-18 misc/fts.c: add chdir() verification stat() optimizations 758da2e3ebdSchin path/pathkey.c: check PROBE_ATTRIBUTES for list of vars 759da2e3ebdSchin02-04-12 port/astlicense.c: type=open tweak, fix author list spacing 760da2e3ebdSchin02-04-11 regex/regcomp.c: check for pattern number overflow 761da2e3ebdSchin02-04-05 tm/tmfmt.c: add %u 762da2e3ebdSchin02-04-04 sfkeyprintf.c: fix %c numeric value 763da2e3ebdSchin path/pathpath.c: check plain path first -- duh 764da2e3ebdSchin02-04-03 misc/fts.c: fix (FTS_PHYSICAL|FTS_NOSTAT) stat optimizations 765da2e3ebdSchin ftwalk.c: only clear FTW_DELAY if FTW_CHILDREN 766da2e3ebdSchin ftwalk.h: add FTW_NSOK for FTW_DELAY 767da2e3ebdSchin02-03-29 ast.h: drop strerror() prototype -- already in <ast_std.h> 768da2e3ebdSchin features/stdio: check for _SFIO_H redundant _Sfstd* declarations 769da2e3ebdSchin02-03-26 misc/glob.c: fix GLOB_LIST gl_flags values 770da2e3ebdSchin02-03-24 port/mnt.c: update bsd fstype name and mount option logic 771da2e3ebdSchin02-03-23 Makefile: add ast_wchar.h to the .check.hdr list (for mamake) 772da2e3ebdSchin02-03-17 features/stdio: hack around g++ 3.* clashes 773da2e3ebdSchin Makefile: add ast_nl_types.h to the .check.hdr list (for mamake) 774da2e3ebdSchin string/strtoip4.c: fix validity check bug that only checked last part 775da2e3ebdSchin02-03-14 misc/optget.c: fix --keys to not expand inline \f...\f 776da2e3ebdSchin02-03-12 port/astlicense.c: add type=free 777da2e3ebdSchin path/pathaccess.c: sibling ".." search ignores relative dirs 778da2e3ebdSchin sfio/sfvscanf.c: sfstrtof get() must return 0 on eof 779da2e3ebdSchin02-03-11 path/pathexists.c: check path by pairs checking {ENOTDIR,ENOENT} 780da2e3ebdSchin02-02-14 features/float: copy local min/max macros to avoid printf roundoff 781da2e3ebdSchin features/wchar: include <ast_common.h>, not <ast_std.h> 782da2e3ebdSchin misc/magic.c: match[]=>matches[] to fix K&R match() macro conflict 783da2e3ebdSchin include/vmalloc.h: include <stdlib.h> for !_PACKAGE_ast 784da2e3ebdSchin uwin/mini.sym: add sprintf (now required by features/common) 785da2e3ebdSchin regex/regnexec.c: truncate wide chars for <ctype.h> functions 786da2e3ebdSchin Makefile: fix MAM ast_common.h sequencing bug by making it first 787da2e3ebdSchin cdt/dthash.c: fix DT_DELETE memory leak (DT_DETACH typo) 788da2e3ebdSchin cdt/dthash.c: fix DT_DELETE double free (dt->data->here typo) 789da2e3ebdSchin regex/regcomp.c: fix recomb() to reject RE with backref 790da2e3ebdSchin features/iffeio: explicitly generate stdio.lcl 791da2e3ebdSchin stdio: add {fcloseall,f(get|put)s_unlocked,fmemopen,getdelim,getline} 792da2e3ebdSchin tmmake,tmtime: allow negative time_t if native localtime/gmtime do 793da2e3ebdSchin tmdate: allow years before 1969 794da2e3ebdSchin fmtfmt: add 795da2e3ebdSchin include/ast.h: add { PATH_TOUCH_CREATE PATH_TOUCH_VERBATIM } 796da2e3ebdSchin Makefile: add std/*.h for std header iffe overrides 797da2e3ebdSchin comp/iconv.c: fix non-C win32 sfreserve() loop 798da2e3ebdSchin02-02-11 features/common: separate long long / long double tests 799da2e3ebdSchin features/common: verify printf handles long long / long double 800da2e3ebdSchin02-02-02 include/ast_std.h,sfio/sfhdr.h: drop _hdr_locale tests -- always on now 801da2e3ebdSchin include/ast_std.h: trust _UWIN <unistd.h> 802da2e3ebdSchin02-01-31 port/mnt.c: add aix options field 803da2e3ebdSchin02-01-30 comp/strstr.c: add for ancient s5 804da2e3ebdSchin stdio/_flsbuf.c: only on systems that transfer to native (e.g., uwin) 805da2e3ebdSchin string/strtoi.h: cat min/max error return values 806da2e3ebdSchin02-01-28 features/tty: add cf[gs]et[io]speed macros for <termio.h> 807da2e3ebdSchin comp/rename.c: punt to (ancient) /usr/lib/mv_dir on EISDIR 808da2e3ebdSchin02-01-24 sigcrit.c: fix SIGCLD!=SIGCHLD interrupt loop 809da2e3ebdSchin sfvprintf.c: convert fast io macros to functions for uts.390 cc 810da2e3ebdSchin string/strtoi.h: drop #pragma prototyped for standalone sfio 811da2e3ebdSchin sfdcsubstr.c: rename from sfdcsubstream.c for 14 char fs 812da2e3ebdSchin02-01-22 execlp,execvp,execvpe,spawnlp,spawnvp,spawnvpe: fix __EXPORT__ 813da2e3ebdSchin spawnlp,spawnve,spawnvp,spawnvpe: handle ms mode arg -- barf 814da2e3ebdSchin sftable.c: ifdef hacks for _WIN32&_ALPHA_ fp exception 815da2e3ebdSchin _stdfun.c: add _UWIN&_ALPHA_ iob map 816da2e3ebdSchin02-01-18 sfio/sfstrtof.h: drop #pragma prototyped for standalone sfio 817da2e3ebdSchin02-01-17 features/hdr: don't include <stddef.h> after it doesn't check out! 818da2e3ebdSchin02-01-16 misc/magic.c: add version type for YYYYMMDD or [a.][b.]c.d 819da2e3ebdSchin misc/magic.c: recode mime %s parse -- sensible and no buffer overflow 820da2e3ebdSchin02-01-15 misc/magic.tab,magicid.h: add generic binary magic number and header 821da2e3ebdSchin02-01-12 tm/tmlocale.c: override win32 default date for {C,POSIX,en} locales 822da2e3ebdSchin comp/omitted.c: fix cygwin workaround logic bugs 823da2e3ebdSchin02-01-09 stdio/fseeko.c,ftello.c: add from UNIX98 824da2e3ebdSchin02-01-08 comp/conf.sh: use $cc instead of cc 825da2e3ebdSchin02-01-07 string/strlcat.c,string/strlcpy.c: add bsd api 826da2e3ebdSchin01-12-18 comp/conf.tab: fix LFS_CFLAGS default for sun _CS_LFS_CFLAGS botch 827da2e3ebdSchin features/common: add hdr stdarg test 828da2e3ebdSchin tm/tmdate.c: handle YYYY/MM/DD 829da2e3ebdSchin01-12-10 misc/magic.tab: add generic 0x00010203 binary magic 830da2e3ebdSchin01-12-03 path/pathprobe.c: return HOME relative path if readonly/non-suid fs 831da2e3ebdSchin01-11-30 misc/optget.c: add simple cache for repeat offenders (like ksh read) 832da2e3ebdSchin sfio/sfhdr.h: preserve errno across SFMMSEQON-SFMMSEQOFF 833da2e3ebdSchin01-11-29 magic.tab: fix GIF version number listing 834da2e3ebdSchin01-11-28 string/fmtbase.c: p!=0 => base always included in output 835da2e3ebdSchin01-11-26 misc/fts.c: empty path is an error 836da2e3ebdSchin01-11-14 misc/optget.c: fix --?+SECTION queries to include paragraphs 837da2e3ebdSchin01-11-20 regex/regnexec.c: fix REG_MINIMAL character class match bug 838da2e3ebdSchin01-11-19 features/lib: retain _lib_confstr for all solaris releases 839da2e3ebdSchin01-11-16 comp/setlocale.c: fix !_lib_setlocale typo 840da2e3ebdSchin01-10-31 regex/ucs_names.h: add string catenation to keep line length low 841da2e3ebdSchin misc/fastfind.c: handle gnu slocate db read 842da2e3ebdSchin misc/optget.c: add --?+SECTION queries 843da2e3ebdSchin comp/fnmatch.h: add FNM_NOSYS 844da2e3ebdSchin01-10-30 tm/tmdate.c: fix cron specs when both wday and mday are specified 845da2e3ebdSchin01-10-20 misc/glob.c: fix bug that called \ trim() twice on same path 846da2e3ebdSchin misc/glob.c: fix \ trim() bug that restored / to wrong position 847da2e3ebdSchin string/fmtre.c: fix { ^ . $ } translations 848da2e3ebdSchin misc/optget.c: use original string if translation fails -- duh 849da2e3ebdSchin sfio/sfhdr.h: assume <errno.h> assigns proper atttibutes to errno 850da2e3ebdSchin comp/regcmp.c: __ia64 workaround fixed by proper CC.DLL probe 851da2e3ebdSchin comp/getdate.c: __ia64 workaround fixed by proper CC.DLL probe 852da2e3ebdSchin features/lib: add lib getdate 853da2e3ebdSchin01-10-18 features/lib: check for strtod static link collision 854da2e3ebdSchin features/float: add another signed cast for old bsd cc 855da2e3ebdSchin features/wchar: add <stdlib.h> <stdio.h> before <wchar.h> for old bsd 856da2e3ebdSchin01-10-17 sfio/sfcvt.c: limit max precision to { FLT_DIG DBL_DIG LDBL_DIG } 857da2e3ebdSchin sfio/sfcvt.c: fix %[aA] format to always have leading 0[xX]1. 858da2e3ebdSchin sfio/sfvprintf.c: handle %C %lc %S %ls for wchar_t args 859da2e3ebdSchin sfio/sfvscanf.c: handle %C %lc %S %ls for wchar_t args 860da2e3ebdSchin string/fmtmode.c: fix bug that omitted trailing '\0' 861da2e3ebdSchin01-10-12 misc/optget.c: . => \&. for --??nroff 862da2e3ebdSchin comp/wc.c: fix mbstate_t initialization typo 863da2e3ebdSchin features/float: fix max integer / float loop termiation 864da2e3ebdSchin features/float: fix LDBL_UINTMAX_MAX typo that did DBL_UINTMAX_MAX 865da2e3ebdSchin01-10-11 include/sfio.h: fix _Sfstd* import/export 866da2e3ebdSchin features/common: fix _UWIN __DYNAMIC__() definition 867da2e3ebdSchin01-10-06 features/fcntl.c: { O_BINARY O_TEXT } default to 0 868da2e3ebdSchin features/omitted: add for comp/omitted.c 869da2e3ebdSchin sfio/sfopen.c: O_BINARY default for _WIN32&&!_UWIN 870da2e3ebdSchin01-10-05 misc/glob.c: fix `\(x/*' GLOB_NOMATCH bug that returned `(x' 871da2e3ebdSchin misc/optget.c: fix localization lookup that didn't drop doubled : ? ] 872da2e3ebdSchin01-10-04 comp/setlocale.c: handle sizeof(wchar_t)!=4 in debug locale 873da2e3ebdSchin comp/conf.sh: handle sytems where _SC_* is both an enum and a macro 874da2e3ebdSchin01-09-25 astconf: add LIBPREFIX 875da2e3ebdSchin01-09-20 features/common: add __DYNAMIC__() for dll externs 876da2e3ebdSchin01-09-19 cdt: kpv update 877da2e3ebdSchin mb*() macros: update for ksh conversion, extend debug locale 878da2e3ebdSchin01-09-16 tm/tmlocale.c: add compiled in defaults for C locale 879da2e3ebdSchin misc/glob.c: add gl_nextdir callback for GLOB_COMPLETE 880da2e3ebdSchin01-08-14 clarify _WIN32 vs. _UWIN vs. __CYGWIN__ 881da2e3ebdSchin tminit: fix standard & daylight initialization 882da2e3ebdSchin01-09-11 pathnative.c: add for native fs representation 883da2e3ebdSchin regex.h: fix regerror_t prototype 884da2e3ebdSchin01-09-04 regex/regnexec.c: fix REG_ICASE for multi-char collating elements 885da2e3ebdSchin tm/tmlocale.c: fix old ascii LC_TIME load 886da2e3ebdSchin locale*: add new LC_* categories 887da2e3ebdSchin comp/omitted.c: add CYGWIN workarounds 888da2e3ebdSchin features/lib: add CYGWIN workarounds 889da2e3ebdSchin01-08-11 features/common: some compilers have long long but no LL constants! 890da2e3ebdSchin features/lib: add mmap64 implementation test (for linux.s390) 891da2e3ebdSchin regex/regcomp.c: fix \ in [...] parse 892da2e3ebdSchin setlocale: retain user locale spelling in setlocale() return value 893da2e3ebdSchin features/limits.c: don't include ./limits.h -- duh 894da2e3ebdSchin fmtesc: don't escape multibyte chars 895da2e3ebdSchin tm/tmlocale.c: fix native C locale default 896da2e3ebdSchin01-08-08 features/float: some compilers (msdev) forget long long vs. double 897da2e3ebdSchin01-07-31 misc/optget.c: handle suboptions 898da2e3ebdSchin01-07-27 cdt.h: add DTDISC() 899da2e3ebdSchin01-07-17 iffeio.h: move to include for stdio bootstrap iffe workarounds 900da2e3ebdSchin01-06-25 regex: perl extensions added and tested 901da2e3ebdSchin01-06-21 misc/error: add ERROR_OPTIONS=prefix=string for message processing 902da2e3ebdSchin01-06-15 string/chresc: only 2 hex digits max for \xxx 903da2e3ebdSchin regex/regsub: handle REG_SHELL ~(nnn) rhs backrefs 904da2e3ebdSchin01-06-11 regex: handle embedded \0 in pattern and subject string 905da2e3ebdSchin regex: add (?nnn) for backrefs > 9 906da2e3ebdSchin comp/fnmatch: add FNM_LEADING_DIR for gnu compatibility 907da2e3ebdSchin features/float: _ast_flt_unsigned_max_t for bsd.i386 omission 908da2e3ebdSchin01-06-06 misc/optget.c: add o option for old ps,ar,tar with optional leading - 909da2e3ebdSchin regex/regcomp.c: REG_LENIENT|REG_DELIMITED \<newline> => <newline> 910da2e3ebdSchin regex/regcomp.c: REG_LENIENT \000 => NUL 911da2e3ebdSchin01-06-04 features/dirent: replace Makefile hack with iffe semi-hack 912da2e3ebdSchin regex/regnexec.c: negation must also check REG_SHELL_DOT 913da2e3ebdSchin01-06-03 sprintf.c: change buf size from SF_BUFSIZE to INT_MAX 914da2e3ebdSchin01-05-31 glob: fix gl_fignore to ignore leading . by default 915da2e3ebdSchin features/lib: add botch_d_ino_dirent64 for linux botch 916da2e3ebdSchin01-05-25 port/lc.tab: add a few missing language_territory's 917da2e3ebdSchin01-05-23 string/chresc: \C[.collation-element.] 918da2e3ebdSchin fmtmatch,fmtre: update for <regex.h> syntax extensions 919da2e3ebdSchin01-05-21 regex: add perl extensions, unicode names for collation elements 920da2e3ebdSchin01-05-11 string/chresc: \e == \E == escape, \cX == control X, \x{..} == \x.. 921da2e3ebdSchin01-05-09 path/pathtemp.c: pathtemp(0,0,0,"/private",0) for mode S_IRUSR|S_IWUSR 922da2e3ebdSchin port/touch.c: handle utime(2) EPERM to fix bug that truncated 923da2e3ebdSchin regex: change REG_MINIMAL to avoid negation -- much faster now 924da2e3ebdSchin01-05-08 *.h: add some off_t macro guards for suse linux 925da2e3ebdSchin01-05-03 regcomp.c: optimize ((x)!)* to ((x)!) 926da2e3ebdSchin wchar: add <wchar.h> and stdio wchar routines 927da2e3ebdSchin01-05-02 feaures/wchar: add <wchar.h> intercept, add stdio wchar functions 928da2e3ebdSchin01-05-01 string/strtoi.h: signed strtoi accepts qualified unsigned constants 929da2e3ebdSchin01-04-30 comp/setlocale.c: fix code that relied on 2 simultaneous getenv()'s 930da2e3ebdSchin tm/tmlocale.c: check for UTF-8 encoded LC_TIME files 931da2e3ebdSchin misc/magic.tab: add utf-8 and utf-16 U+FEFF magic 932da2e3ebdSchin01-04-26 features/common: some cc's have _ast_int8_t but not LL constants 933da2e3ebdSchin01-04-24 features/lib: add _std_strtod for mac os X 934da2e3ebdSchin01-04-23 ccode: add CC_sub for ms embedded EOF char on ebcdic -- no joke 935da2e3ebdSchin01-04-20 iconv: handle ebcdic<=>utf 936da2e3ebdSchin mc.h,mc.c: add mcindex() 937da2e3ebdSchin ast_std.h: add AST_MESSAGE_SET 938da2e3ebdSchin01-04-18 features/libpath.sh: fix mvs probe 939da2e3ebdSchin *: sundry mvs fixes 940da2e3ebdSchin glob: fix GLOB_NOCHECK to avoid stat() and properly trim patterns 941da2e3ebdSchin01-04-01 strtod,strtold: add 942da2e3ebdSchin strtol,strtoul,strtoll,strtoull,strton,strtonl: handle locale & ERANGE 943da2e3ebdSchin sfvprintf,sfvscanf: handle locale decimal_point,thousands_sep 944da2e3ebdSchin sfvprintf,sfvscanf: handle %a,%A 945da2e3ebdSchin setlocale: add LC_NUMERIC decimal_point,thousands_sep init 946da2e3ebdSchin ast_std.h: __OPTIMIZE_SIZE__==1 to disable non-std __GNUC__ inlines 947da2e3ebdSchin pathexists: path cache to cut down pathpath() access(2) calls 948da2e3ebdSchin features/stdio: __FILE_TAG == _sfio_s for solaris 949da2e3ebdSchin01-03-23 iconv: fix iconv_move buffer boundary bug that stopped at 1 block 950da2e3ebdSchin01-03-19 glob: add GLOB_AUGMENTED 951da2e3ebdSchin regex: REG_SHELL syntax error implies REG_LITERAL match 952da2e3ebdSchin strto[ln][ll]: add overflow checks 953da2e3ebdSchin01-03-17 locale: reimplemented to provide canonical locale namespace 954da2e3ebdSchin locale: add LC_ALL=local for local system user default 955da2e3ebdSchin tm.h: TM_*_3 => TM_*_ABBREV 956da2e3ebdSchin tmfmt: handle standard E and O format modifiers 957da2e3ebdSchin tmlocale: consult nl_langinfo() if defined 958da2e3ebdSchin fmtquote("\"",1) => shell quote 959da2e3ebdSchin01-03-08 regex: handle multibyte chars and collation classes 960da2e3ebdSchin strmatch,strgrpmatch: now a wrapper on regex 961da2e3ebdSchin ast_std.h: add mb*() multibyte and collation support 962da2e3ebdSchin sfvscanf: handle locale decimal and thousand 963da2e3ebdSchin proc*,system: handle ignored SIGCHLD 964da2e3ebdSchin sfkeyprintf: handle %*C 965da2e3ebdSchin01-03-06 locale: add locale data cache for efficient multiple locale switching 966da2e3ebdSchin optget: fix LC_MESSAGES!=C --man bug 967da2e3ebdSchin01-03-01 Makefile: HEADEROPT is not optional for win32.* 968da2e3ebdSchin comp/syslog.h: comply with the de factos 969da2e3ebdSchin optget(): fix \f...\f stack bug that referenced data after pop 970da2e3ebdSchin01-02-27 *locale*: a batch of fixes for native LC_MESSAGE&LC_TIME hooks 971da2e3ebdSchin01-02-22 pathprobe: reprobe test now checks probe.ini too 972da2e3ebdSchin sfio_s.h: advertize public Sfio_t members with _ prefix 973da2e3ebdSchin sfio.h,features/stdio: add <sfio_s.h> reference 974da2e3ebdSchin sfhdr.h: map <sfio_s.h> _foo to foo 975da2e3ebdSchin sfio.h: SF_APPEND=>SF_APPENDWR, SF_CLOSE=>SF_CLOSING 976da2e3ebdSchin01-02-14 comp/conf.sh: probe <unistd.h> for _(CS|PC|SC)_* getconf symbols 977da2e3ebdSchin stdio/*: update for uwin stdio.dll binary compatibility 978da2e3ebdSchin sfread: finally fixed premature pipe read EOF bug 979da2e3ebdSchin fmtscale: format tenths for number > 0 && number < 10 980da2e3ebdSchin01-02-09 _sfmode(),_sftype(),_Sfextern: UWIN binary stdio compatibility exports 981da2e3ebdSchin01-02-08 sfgetm,sfputm,_sfputm: fix max clash with k&r max() macro 982da2e3ebdSchin setlocale: undef valid for sun4 k&r valid() macro 983da2e3ebdSchin01-02-07 catopen.c: don't do native catopen for the debug locale 984da2e3ebdSchin01-02-06 sfraise.c: add SF_FINAL check to avoid (posibly) freed disciplines 985da2e3ebdSchin01-01-01 features/common: fix uwin __DEFINE__ 986da2e3ebdSchin sftable: initialize decimal and thousand 987da2e3ebdSchin magic.tab: add corel wordperfect document 988da2e3ebdSchin syslog: add LOG_LEVEL, add '\n' only if needed 989da2e3ebdSchin include/tm.h: #undef daylight for _WIN32 990da2e3ebdSchin sfio.h: add _SF_APPEND and _SF_CLOSE for native namespace incursion 991da2e3ebdSchin ast_std.h: add AST_LC_multibyte for MB_CUR_MAX>1 992da2e3ebdSchin setlocale: set AST_LC_multibyte 993da2e3ebdSchin strmatch: check AST_LC_multibyte 994da2e3ebdSchin features/limits.c: add _BITS_POSIX1_LIM_H guard for linux 995da2e3ebdSchin features/libpath.sh: fix for aix LIBPATH 996da2e3ebdSchin procopen,procclose: block SIGCHLD if PROC_FOREGROUND (e.g., system(3)) 997da2e3ebdSchin optget.c: add enumerated option argument values 998da2e3ebdSchin optget.c: add <!--INTERNAL--> for private --html 999da2e3ebdSchin optget.c: fix memory leak that hit shell builtins hard 1000da2e3ebdSchin sfio: drop sfread small chunk logic 1001da2e3ebdSchin00-12-25 mnt.c: handle " and ' quoting for fstab 1002da2e3ebdSchin sftmp.c: let pathtemp() open the fd O_EXCL 1003da2e3ebdSchin00-12-15 conf.sh: add -v for verbose trace 1004da2e3ebdSchin features/(limits|unistd).c: no FEATURE/types because of _POSIX_SOURCE 1005da2e3ebdSchin features/time: add default for CLOCKS_PER_SEC 1006da2e3ebdSchin features/lib: std_malloc now handles NeXT 1007da2e3ebdSchin00-12-13 strton: recognize qualifier only if preceded by a digit 1008da2e3ebdSchin features/lib: change return in vfork() test to exit() for linux sparc 1009da2e3ebdSchin fmtquote: fix $'...' quote logic 1010da2e3ebdSchin00-12-11 tmdate: fix cron format bug that mishandled months 1011da2e3ebdSchin00-12-01 optget: handle $Id: ... $ in --?-version 1012da2e3ebdSchin features/fcntl.c: fix _STDPP_ mmap munmap 1013da2e3ebdSchin00-11-27 magic: drop dup sfclose() in load() 1014da2e3ebdSchin optget: handle error_info.id==0 1015da2e3ebdSchin00-11-22 features/stdio: add _FILEDEFED for sol9.sun4 1016da2e3ebdSchin strton,stronll: handle [u|U][l|L][ll|LL] qualifiers 1017da2e3ebdSchin00-10-31 tmdate: add TM_DATESTYLE and mmddHHMM[cc]yy 1018da2e3ebdSchin astlicense.c: #include <hashkey.h> MAM workaround 1019da2e3ebdSchin astlicense.c: check for non-empty CONTRIBUTORS 1020da2e3ebdSchin00-10-26 features/stdio: add _FILE and __FILE for gnu 1021da2e3ebdSchin misc/stk.c: fix stack pointer check off-by-one (dgk does it too!) 1022da2e3ebdSchin00-10-23 syslog.h: sync with bsd values 1023da2e3ebdSchin00-10-18 _STUB_* now functions instead of common symbols 1024da2e3ebdSchin all extern data declared with definition to eliminate common symbols 1025da2e3ebdSchin fastfind: add mac/bsd /var/db/locate.database 1026da2e3ebdSchin00-10-17 features/lib: add apple osX (darwin.ppc) workarounds 1027da2e3ebdSchin00-10-12 add: fmtbuf(), fmtclock(), fmtip4(), strtoip4() 1028da2e3ebdSchin fmt*() now use fmtbuf() for tmp fmt buf allocation 1029da2e3ebdSchin00-10-05 regex: add REG_DISCIPLINE and regdisc_t for alloc/error disc 1030da2e3ebdSchin00-09-29 features/lib: pipe_rw==0 for sgi: boot rw == bin incompatibility 1031da2e3ebdSchin00-09-21 astlicense: handle \' and \" in license values 1032da2e3ebdSchin00-09-20 sfwrite: fix write() error in sfprintf() loop 1033da2e3ebdSchin00-08-11 hdr,vmhdr.h: check/hide { getpagesize sbrk } prototypes 1034da2e3ebdSchin astlicense: add noncommercial 1035da2e3ebdSchin00-07-31 fflush: don't seek on pipes 1036da2e3ebdSchin sfresize: add 1037da2e3ebdSchin setlocale: fix bad newof() call 1038da2e3ebdSchin00-06-01 strmatch: initialize match.current.beg[0] to avoid dump at line 670 1039da2e3ebdSchin sfio/stdio: a few more errno tweaks 1040da2e3ebdSchin astquery: sfstdin/sfstderr by default 1041da2e3ebdSchin00-05-26 sfmode: errno=EBADF for invalid stream use 1042da2e3ebdSchin00-05-22 rewind: fix for xopen test 1043da2e3ebdSchin00-05-18 mcfind: returns absolute path 1044da2e3ebdSchin00-05-16 optget: --keys must catch \f...\f too 1045da2e3ebdSchin translate,mc: errno cleanup 1046da2e3ebdSchin00-05-09 magic: add netbsd binary magic 1047da2e3ebdSchin fts: PATH_RESOLVE!=logical => FTS_SEEDOTDIR 1048da2e3ebdSchin ftwflags: call fts_flags() 1049da2e3ebdSchin astconf: astconf(0,0,0) re-syncs with _AST_FEATURES 1050da2e3ebdSchin00-05-08 optget: --usage & --keys for last -catalog group only 1051da2e3ebdSchin00-05-02 iconv.c: add; use codes[] in ccmapid() and ccmapname(); "" for native 1052da2e3ebdSchin00-05-01 pathtmp: copy env values (libshell or putenv may change) 1053da2e3ebdSchin00-04-01 optget: drop bar from [-foo?bar] for --??keys 1054da2e3ebdSchin sfvscanf: add %X -- duh 1055da2e3ebdSchin features/common: fix va_listval() for power pc 1056da2e3ebdSchin findopen: fix FIND_GENERATE codes file search 1057da2e3ebdSchin magic: add ERROR_translate() and msgcat.key 1058da2e3ebdSchin tmlocale: add for LC_TIME locale info 1059da2e3ebdSchin tmlex: check tm_info.format and tm_data.format 1060da2e3ebdSchin tmfix: fix for tm_wday special case (via nl_langinfo on LC_TIME fields) 1061da2e3ebdSchin strftime: fix for nl_langinfo special case 1062da2e3ebdSchin ast_std.h: provide LC_* defauls if not defined 1063da2e3ebdSchin sfnew: check ${_AST_sfio_bufsize} -- don't tell kpv 1064da2e3ebdSchin catopen,nl_types.h: add intercept to mc* routines 1065da2e3ebdSchin magic.tab: add ast message catalog 1066da2e3ebdSchin strerror: add _ast_strerror intercept with ERROR_translate("errno") 1067da2e3ebdSchin fmtquote: escapes >0177 only if (flags&2) 1068da2e3ebdSchin00-03-17 feof: stdio macro functions only for _UWIN 1069da2e3ebdSchin optget: proper ERROR_translate() calls 1070da2e3ebdSchin astgetconf: add for thread safe error message control 1071da2e3ebdSchin astlicense: fix type=special but with non-null notice 1072da2e3ebdSchin errorx: add for ERROR_translate() support 1073da2e3ebdSchin ERROR_translate: add locale id args for alternate dictionary 1074da2e3ebdSchin option.h: move _OPT_PRIVATE_ to pointer to avoid dll size mismatch 1075da2e3ebdSchin ftwalk: fix FTW_CHILDREN bug that hit top level non-dirs twice 1076da2e3ebdSchin translate.c: default error_info.translate 1077da2e3ebdSchin astconf: fix dup loop thrash that never returns, add _AST_VERSION 1078da2e3ebdSchin00-03-10 ast_std.h: do _LARGEFILE_SOURCE initialization before std headers 1079da2e3ebdSchin fmtquote: handle $'...' quotes 1080da2e3ebdSchin00-03-07 optget: fix numeric option support test 1081da2e3ebdSchin sfkeyprintf: add %q for '...' quoting with ansi escapes 1082da2e3ebdSchin00-03-06 features/stdio: fix _sfflsbuf prototype (dingold@gte.net) 1083da2e3ebdSchin00-02-14 pathtmp: fix pid cache bug that sometimes repeated after ~10 attempts 1084da2e3ebdSchin optget: "..." attribute quote 1085da2e3ebdSchin pathfind: eliminate *: prefix in lib, not type 1086da2e3ebdSchin proc: PROC_FOREGROUND for system(3) semantics (wait status return) 1087da2e3ebdSchin pathtmp: fix mktemp() logic 1088da2e3ebdSchin fts: fix FTS_NOSEEDOTDIR bug that botched ./* in top list 1089da2e3ebdSchin include/ast/prototyped.h includes include/prototyped.h 1090da2e3ebdSchin pathpath: fix strdup(0) bug 1091da2e3ebdSchin optget: --html <foo@bar> => ...mailto:foo@bar... 1092da2e3ebdSchin sscanf: fix sfsscanf => sfvsscanf typo 1093da2e3ebdSchin magic.tab: strengthen tar recognition 1094da2e3ebdSchin00-02-08 conf.sh: fix ifdef for systems that think sysconf(FOO) is const 1095da2e3ebdSchin00-02-04 glob: fix globlist_t.gl_flags 1096da2e3ebdSchin00-02-02 vm*: add NoF() for data only files 1097da2e3ebdSchin00-01-27 fts: fix top level .==.. statp bug (thanks to dr. ek) 1098da2e3ebdSchin00-01-25 conf.tab: fix LFS*_*LAGS typo 1099da2e3ebdSchin00-01-24 astlicense: handle type=verbose, license.notice, author=* 1100da2e3ebdSchin00-01-11 pathprobe: generate info for first probe script on PATH - duh 1101da2e3ebdSchin ast.h: add NoF(x) for files that define no functions 1102da2e3ebdSchin tmpfile: fix implementation 1103da2e3ebdSchin global change for string ERROR_translate() dictionary names 1104da2e3ebdSchin optget: fix new way but no long names off by one 1105da2e3ebdSchin optget: handle [--dictionary?name] 1106da2e3ebdSchin99-11-19 comp/conf.sh: `expr length XXX` is not universal 1107da2e3ebdSchin drop sfstdio; stdio via functions everywhere 1108da2e3ebdSchin drop Makefile conditionals (and follow our own advice for once) 1109da2e3ebdSchin sfio: new stream after atexit() bug fix 1110da2e3ebdSchin tm: Tm_zone_t.daylight=0 for standard time within zone 1111da2e3ebdSchin stdio: fopen => _ast_fopen: only way short of binary compatibility 1112da2e3ebdSchin Makefile: atmain.C falls back to atmain.c 1113da2e3ebdSchin optget: add --keys, s<section> option 1114da2e3ebdSchin stdio: _UWIN check for foreign stdio 1115da2e3ebdSchin99-11-11 astlicense: add 1116da2e3ebdSchin99-10-31 glob: fix regexec pattern; add PATH_ATTRIBUTES case check 1117da2e3ebdSchin pathpath: path==0 means malloc space 1118da2e3ebdSchin99-10-22 tmfmt: %C=2-digit-century, %k=date(1), %y=2-digit-year-in-century 1119da2e3ebdSchin99-10-18 fastfind: expanded default db lookup 1120da2e3ebdSchin99-08-11 magic: fix off by one registry malloc 1121da2e3ebdSchin features/fs: add __RENAME checks for stat familiy (netbsd) 1122da2e3ebdSchin features/fs: major()/minor() fixes for s5 1123da2e3ebdSchin features/libpath.sh: netbsd fix -- ld.so not in std places 1124da2e3ebdSchin misc/fastfind: fix codes path generation bug 1125da2e3ebdSchin optget: beef up --?* description, fix <TR>...</TR> nesting 1126da2e3ebdSchin pathprobe: check for override (writable key file) first 1127da2e3ebdSchin features/time: int tmtimeofday(struct timeval*); 1128da2e3ebdSchin optget: fix opt_info.num, even if opt_info.arg!=0 1129da2e3ebdSchin fts: FTS_PHYSICAL => FTS_SEEDOTDIR, add FTS_CHOP 1130da2e3ebdSchin fastfind: init dir tab with logical and physical name 1131da2e3ebdSchin glob: add gnu GLOB_ALTDIRFUNC 1132da2e3ebdSchin99-07-17 sfio: kpv update and sfhdr.h sync! 1133da2e3ebdSchin99-06-24 stdio: fix fflush() to ignore sfseek(0) return value 1134da2e3ebdSchin99-06-23 magic: '\r' is text not control to placate m$ 1135da2e3ebdSchin99-06-08 stdio: fix fseek,ftell semantics 1136da2e3ebdSchin uwin stdio: fflush() => _doflsh() to avoid __cplusplus clash 1137da2e3ebdSchin getopt: call liberror() to avoid error() conflict 1138da2e3ebdSchin tmfmt,tmscan: %N zone type (nation code), %z zone minutes west offset 1139da2e3ebdSchin tmfmt: - no pad _ space pad 0 leading 0 pad 1140da2e3ebdSchin99-05-28 magic: fix 'x' == '*' for any number, magic.tab tweaks 1141da2e3ebdSchin features/lib: verify that stat64 really works 1142da2e3ebdSchin99-05-21 tm*: add TM_WINDOW==69 for consistent century windowing guard year 1143da2e3ebdSchin99-05-18 tmtime: add century leap year calc anticipating unsigned time_t 1144da2e3ebdSchin99-05-17 sfkeyprintf: handle %o and %x!! 1145da2e3ebdSchin99-05-09 pathprobe: $HOME/.probe if not suid and st_uid!=geteuid() 1146da2e3ebdSchin99-04-28 magic,magic.tab: add registry() 1147da2e3ebdSchin99-04-24 regcomp: fix ksh pattern +! parse 1148da2e3ebdSchin regfatalpat: add 1149da2e3ebdSchin optget: make : ? ] double escape consistent in all contexts 1150da2e3ebdSchin99-04-01 features: drop iffeio.h and stdio.h when only printf() used 1151da2e3ebdSchin regex: fix stats() .l and .k count 1152da2e3ebdSchin fmtquote: added; most general fmtesc() form 1153da2e3ebdSchin99-03-22 fmtesc.c,ast.h: add fmtnesq() 1154da2e3ebdSchin optget: --?x works for -x option flag 1155da2e3ebdSchin99-03-17 features/limits.c: workaround solaris __EXTENSIONS__ _timespec bug 1156da2e3ebdSchin workaround limits.h circular prereq with ignore stdio.h 1157da2e3ebdSchin sfvprintf: %04e left-pad zero fixed 1158da2e3ebdSchin99-03-03 fts: uncle already: add FTS_SEEDOTDIR to retain leading ./ 1159da2e3ebdSchin regex: REG_MULTIPLE, BM for fixed string alternation 1160da2e3ebdSchin optget: embedded `-' optional in long options, prefix={0,1,2} 1161da2e3ebdSchin99-02-14 fastfind: fix dir format bug that emitted wrong paths 1162da2e3ebdSchin astconf: fix redef off by one bug 1163da2e3ebdSchin99-02-11 pathcanon(): don't cache astconf("PATH_LEADING_SLASHES", NiL, NiL) 1164da2e3ebdSchin99-01-23 optget: move <old_opt.h> back into <option.h>, no open-close 1165da2e3ebdSchin optget: add "[index:long-name:description]" for --long-name 1166da2e3ebdSchin comp/gross: add weak __libc_attr for irix < 6.5 compatibility 1167da2e3ebdSchin features/limits.c: tweak the guards again 1168da2e3ebdSchin99-01-11 fastfind: handle old format count byte order 1169da2e3ebdSchin magic.tab: fix elf to use real phdr offset 1170da2e3ebdSchin magic.c,magic.tab: fix | to act like switch/case 1171da2e3ebdSchin comp/fross.c,features/hack: for gross hacks 1172da2e3ebdSchin features/stdio: avoid sfio namespace pollution 1173da2e3ebdSchin98-12-25 tmdate: yyyy.mm.dd 1174da2e3ebdSchin pathprobe: fix procrun() cmd path bug 1175da2e3ebdSchin fmtesq: add 1176da2e3ebdSchin features/common: win32.alpha va_list 1177da2e3ebdSchin magic: add pc alpha object 1178da2e3ebdSchin98-11-11 strmatch: add STR_ICASE 1179da2e3ebdSchin pathprobe: punt to $HOME/.probe/<key+HOSTTYPE> if not S_ISUID 1180da2e3ebdSchin tmzone,tmdate: handle +-minutes, nn/MMM/yyyy 1181da2e3ebdSchin stropt: fix nested quote pop 1182da2e3ebdSchin tmfmt: add %K => %Y-%m-%d/%H:%M:%S 1183da2e3ebdSchin sfio/stdio: fix fseek() SF_PUBLIC omissions 1184da2e3ebdSchin fmtesc: catch '\\' (duh) 1185da2e3ebdSchin vmalloc: vmbest round bug fix 1186da2e3ebdSchin98-11-01 fts.c: no pathcanon() if (fts_flags & FTS_PHYSICAL) 1187da2e3ebdSchin98-10-01 features/stdio prototype fixes 1188da2e3ebdSchin optget: strton() instead of strtol() for # 1189da2e3ebdSchin98-09-22 regcomp: add REG_DELIMITED and REG_ESCAPE delimited re support 1190da2e3ebdSchin98-09-15 fix _LARGEFILE64_SOURCE stuff 1191da2e3ebdSchin ast_std.h: provide mmap() prototype 1192da2e3ebdSchin98-08-11 fix sfpopen() to ignore SIGPIPE by ignoresig() for sfio but not stdio 1193da2e3ebdSchin fix procopen() to ignore SIGPIPE by ignoresig() for PROC_IGNORE 1194da2e3ebdSchin sfio sfpopen/popen update 1195da2e3ebdSchin magic.src: fix ustar entry 1196da2e3ebdSchin98-07-17 fix ftwalk() short by one malloc() 1197da2e3ebdSchin add fts_notify() 1198da2e3ebdSchin98-06-25 sfdcmore,sfdcprefix: add 1199da2e3ebdSchin98-06-19 tokscan: add %f %g 1200da2e3ebdSchin98-06-01 disc/sf*.c: memset(0) after disc malloc() 1201da2e3ebdSchin98-05-11 strelapsed: y==Y 1202da2e3ebdSchin fts: pathcanon() top list 1203da2e3ebdSchin98-04-01 error: error_info.time for all msgs, just after cmd id 1204da2e3ebdSchin error: no sfsync(sfstdin) 1205da2e3ebdSchin sfio: sfpool, Sffmt_t update 1206da2e3ebdSchin magic.tab: sgi core dumps -- why aren't these elf? 1207da2e3ebdSchin stropt: (v+n) for unknown option is option value if n!=0 1208da2e3ebdSchin procopen: fix setsid() for spawnveg() only 1209da2e3ebdSchin98-03-19 malloc: add realloc foreign region check 1210da2e3ebdSchin sfdisc.h: rename to match kpv disciplines 1211da2e3ebdSchin fastfind: fix strcasecmp/strcmp directory prefix mixup 1212da2e3ebdSchin98-03-17 features/fcntl.c,pathtmp,sftmp: add O_TEMPORARY 1213da2e3ebdSchin98-03-01 pathcanon: fix PATH_LEADING_SLASHES to stat() both slashes 1214da2e3ebdSchin pathcanon: add PATH_VERIFIED 1215da2e3ebdSchin tmdate: add skip[] to expand separator char set 1216da2e3ebdSchin fastfind: FIND_OLD for old 7 bit db, FIND_TYPE for new 8 bit typed db 1217da2e3ebdSchin fastfind: default generates gnu LOCATE02 8 bit db 1218da2e3ebdSchin magic: handle %s in mime description 1219da2e3ebdSchin cdt: kpv update 1220da2e3ebdSchin sfio: kpv update 1221da2e3ebdSchin stdio: fpos64_t fseek64(), ftell64(), fgetpos64(), fsetpos64() 1222da2e3ebdSchin stdio: fseek() => sfseek(SF_PUBLIC) to avoid locking 1223da2e3ebdSchin fts: initialize parent stat[bp] from top level *after* statf done 1224da2e3ebdSchin astmath: add -lm requirement test 1225da2e3ebdSchin *: Astlong_t => _ast_*_t 1226da2e3ebdSchin regex: simplify regcollate() (from doug) 1227da2e3ebdSchin tmtime: preserve Tm_t*tm when calling tminit() 1228da2e3ebdSchin astconf: add readonly PATH_ATTRIBUTES=[cirw] 1229da2e3ebdSchin98-02-14 fastfind: add FIND_ICASE to ignore case 1230da2e3ebdSchin tmdate,tmgoff: handle (+|-)hh[[:]mm[[:]ss]] absolute timezone 1231da2e3ebdSchin tmdate: `<n> <part>' now assumes `next <n> <part>' instead of `this' 1232da2e3ebdSchin tmfix: fix leap year bug that forgot to add 1900 1233da2e3ebdSchin proc: add PROC_ZOMBIE 1234da2e3ebdSchin98-02-06 strmatch() char class range bug fix 1235da2e3ebdSchin regex char class range bug fix 1236da2e3ebdSchin98-01-23 _WIN32: changed the #if logic again to accomodate _GNUC_ 1237da2e3ebdSchin mnt: grab the mount options too 1238da2e3ebdSchin ast_std.h: hide getopt,getsubopt from stdlib.h 1239da2e3ebdSchin features/limits.c: add gnu guard macros to avoid limits.h recursion 1240da2e3ebdSchin features/mode.c: include "limits.h" instead of "FEATURE/limits.lcl" 1241da2e3ebdSchin98-01-11 sfio.h: use Astlong_t, move Sfio_t Sfdisc_t typedef to top for stdio.h 1242da2e3ebdSchin sfhdr.h: #undef SETLOCAL for hpux 1243da2e3ebdSchin sfvprintf,sfvscanf: %I*x for sizeof(int_arg) 1244da2e3ebdSchin handle ftruncate64 and truncate64 1245da2e3ebdSchin dtopen.c: __hppa dll needs Dtset Dtlist Dttree refs here 1246da2e3ebdSchin97-12-18 fmtnum: add 1247da2e3ebdSchin97-12-11 magic: handle sgi 64 bit core dumps 1248da2e3ebdSchin97-12-07 pathtmp: add override for TMPPATH,TMPDIR and cycling 1249da2e3ebdSchin97-11-11 tm: handle 0 return from gmtime(),localtime() (dos negative time_t) 1250da2e3ebdSchin features/stdio: fix fflush() macro to do physical sync 1251da2e3ebdSchin97-10-31 astconf PATH_RESOLVE is logical if 3d&&!std, metaphysical otherwise 1252da2e3ebdSchin magic: fix #! mime bug 1253da2e3ebdSchin tm: tmtime() now calls tmfix() and adjusts tm_isdst too=>mtime() works 1254da2e3ebdSchin97-10-11 dllfind,dlfcn: move to separate -ldll so -last can link static, duh 1255da2e3ebdSchin Makefile,state.c: move forced header generation state.c => Makefile 1256da2e3ebdSchin sfio: update including SF_WHOLE 1257da2e3ebdSchin97-10-01 sfdostext: add \r\n => \n sfio discipline 1258da2e3ebdSchin stropt: NiL table => p=name for all name=value 1259da2e3ebdSchin97-08-11 pathtmp: check pid to note forks 1260da2e3ebdSchin procopen: FD_CLOEXEC rfd && wfd 1261da2e3ebdSchin fts: fts_close() after fts_children() with no fts_read() now works 1262da2e3ebdSchin97-07-17 error: sfsync(sfstdin,sfstdout,sfstderr) instead of sfsync(NiL) 1263da2e3ebdSchin _sfcvinit: add sfio internal interface to base conversion tables 1264da2e3ebdSchin strton: use _Sfcv* base conversion tables instead of sfsscanf() 1265da2e3ebdSchin sfvscanf: use _Sfcv* base conversion tables 1266da2e3ebdSchin mime: x- permutations now matched if exact fails 1267da2e3ebdSchin mime: original- stripped from content-* headers 1268da2e3ebdSchin tmdate: add yyyy-jjj, yyyy-mm-dd 1269da2e3ebdSchin dllfind: add 1270da2e3ebdSchin ccmapid: fix buf copy loop limit 1271da2e3ebdSchin ccmapname,ccmapcpy: add 1272da2e3ebdSchin sfstrtmp: add 1273da2e3ebdSchin97-05-09 streval: fix up casts for pseudo-ansi cc 1274da2e3ebdSchin features/types: use _ast_int_8 vars to verify support 1275da2e3ebdSchin string/modedata: check for mvs.390 S_IFMT 1276da2e3ebdSchin include/ast(_std).h: add #define __FILE_typedef 1277da2e3ebdSchin magic: add ccode text check 1278da2e3ebdSchin include/ftwalk.h: FTW_PATH=>FTS_NOCHDIR to avoid FTS_AGAIN (duh) 1279da2e3ebdSchin fts: clear status for FTS_AGAIN (fixes rm -r bug) 1280da2e3ebdSchin mnt: add mvs openedition w_getmntent() 1281da2e3ebdSchin sfhdr: _hdr_float && <float.h> for correct MAXDOUBLE 1282da2e3ebdSchin vmalloc/vmbest: if _std_malloc then use malloc()/free() not sbrk() 1283da2e3ebdSchin remove: check _std_remove 1284da2e3ebdSchin procopen: handle pio[{0,1}]=={0,1} 1285da2e3ebdSchin setenviron,features/uinstd: test for mvs.390 dll environ hacks 1286da2e3ebdSchin96-12-25 <sfio_p.h> -> <ast_common.h> 1287da2e3ebdSchin __EXTERN__(type,object) 1288da2e3ebdSchin __DEFINE__(type,object,value) 1289da2e3ebdSchin magic: check strings in !CC_NATIVE code set too 1290da2e3ebdSchin system: cmd==0 means check for shell access (xopen) 1291da2e3ebdSchin sfhdr.h: fix sfrsrv prototype 1292da2e3ebdSchin add __libc_malloc etc for gnu/linux 1293da2e3ebdSchin astconf(NiL,path,name) == astconf(name,path,NiL) + no liberror 1294da2e3ebdSchin fts_open: if toplist() stat fails return 0 1295da2e3ebdSchin ftwalk: handle fts_open()==0 via one phony userf() call 1296da2e3ebdSchin sfmode: S_ISFIFO default is SF_SHARE=0 1297da2e3ebdSchin features/lib: _WIN32 _lib_vfork=1 by default 1298da2e3ebdSchin unsigned<0 comparison and other fixes via sgi.mips4 cc 1299da2e3ebdSchin stk.c: use <align.h> ALIGN_BOUND for stkalloc() 1300da2e3ebdSchin features/lib,vfork: uwin fix 1301da2e3ebdSchin ast_std.h: fix strto[u]ll prototypes with features/types _ast_int_8 1302da2e3ebdSchin getsubopt: add for xopen 4.2 compatibility 1303da2e3ebdSchin drop function __IMPORT__ 1304da2e3ebdSchin magic: more magic 1305da2e3ebdSchin change #define FILE from Sfio_t to struct _sfio_s 1306da2e3ebdSchin state.c: add generated includes that may be hit by std for MAM 1307da2e3ebdSchin bytesex: forgot about sizeof(long)=>7; could we fix the name too? 1308da2e3ebdSchin vmalloc.h: fix vmnewof() definition 1309da2e3ebdSchin sfio.h,stdio.h,ast_common.h: pollution cleanup 1310da2e3ebdSchin magic.c: add | op for switch 1311da2e3ebdSchin Makefile: stdio.h was on both HEADERSRC and HEADERGEN -- don't do that 1312da2e3ebdSchin drop pp:notice to get <sfio.h> ... <ast.h> to work 1313da2e3ebdSchin regex: add [[:<:]]==\< and [[:>:]]==\> for bsd compat 1314da2e3ebdSchin mime.c: ignore X-* headers while scanning for Content-* 1315da2e3ebdSchin magic.c: check for negative indirect offsets 1316da2e3ebdSchin magic.tab: fix dos entry that generated negative indirect offsets 1317da2e3ebdSchin vmalloc.h: add vmstrdup() prototype 1318da2e3ebdSchin hash.h: add hashgetbucket() macro 1319da2e3ebdSchin magic.c: MAGIFILE is now a : file list 1320da2e3ebdSchin mnt.c: another 4.4 bsd fix -- users must include <sys/crap.h> 1321da2e3ebdSchin common: fix _WIN32 chicken&egg with va_copy 1322da2e3ebdSchin sfio: forgot to set f->val along with _Sfi in sfexcept() 1323da2e3ebdSchin Makefile: add mini target for uwin libmini.a 1324da2e3ebdSchin sfcvt.c: workaround for flaky long double optimizers 1325da2e3ebdSchin features/common: fix to work with va_list==void* 1326da2e3ebdSchin regexec.c: fix REG_STARTEND subexpression offsets 1327da2e3ebdSchin strmatch.c: don't forget <wctype.h> 1328da2e3ebdSchin regrexec.c: fix REG_INVERT end boundary bug that missed last record 1329da2e3ebdSchin astconf.c: notify(0,0,"a=b") called for each setenviron("a=b") 1330da2e3ebdSchin pathcanon.c: check astconf(PATH_LEADING_SLASHES) to preserve //* 1331da2e3ebdSchin96-11-28 _LARGEFILE64_SOURCE by default if possible: NOTE: assumes xopen 1332da2e3ebdSchin regerror: fix for xopen 1333da2e3ebdSchin getopt: fix for xopen 1334da2e3ebdSchin magic: add ciao virtual database 1335da2e3ebdSchin astconf: posix/strict/xopen implies "standard" conformance 1336da2e3ebdSchin fs3d.h: hide mount prototype 1337da2e3ebdSchin ast_std.h,mnt.c,features/fs: ncr port tweaks 1338da2e3ebdSchin96-10-31 version 5.0 1339da2e3ebdSchin add strtoll() strtoull() 1340da2e3ebdSchin sfkeyprintf: upgrade to int_max args 1341da2e3ebdSchin ast.h: add ssizeof() to work around unsigned botch 1342da2e3ebdSchin conf.sh: add shell actions to conf.tab 1343da2e3ebdSchin _DLL*: drop for _BLD_<lib> + __EXPORT__ + __IMPORT__ 1344da2e3ebdSchin sfio,cdt,vmalloc: kpv update 1345da2e3ebdSchin96-10-11 <ccode.h>: add character code map support 1346da2e3ebdSchin procclose: return shell style exit status 1347da2e3ebdSchin features/fs: pun statvfs.f_basetype to statvfs.f_reserved7 for mvs 1348da2e3ebdSchin uwin: add subdir for uwin additions 1349da2e3ebdSchin ast_std.h: swab() is from <stdlib.h> 1350da2e3ebdSchin sfio.h: <ast_std.h> if _PACKAGE_ast 1351da2e3ebdSchin magic.tab: add mips[1-4], 64-bit 1352da2e3ebdSchin port tweaks for sol.sun4 and sun4 1353da2e3ebdSchin96-09-06 strerror: add 1354da2e3ebdSchin fmterror: uses strerror 1355da2e3ebdSchin str*search: use sfiso646() order 1356da2e3ebdSchin strpsearch: add 1357da2e3ebdSchin magic: add Magic_t.mime mime type return for magictype() 1358da2e3ebdSchin mime.h: add 1359da2e3ebdSchin strton: use sfsscanf() 1360da2e3ebdSchin strperm: factor in umask() if no who 1361da2e3ebdSchin pathtmp: add TMPPATH check 1362da2e3ebdSchin libevent: add 1363da2e3ebdSchin magic: add discipline to magicopen() 1364da2e3ebdSchin mime: add discipline to mimeopen() 1365da2e3ebdSchin96-08-31 regex: fix BM fail table generator 1366da2e3ebdSchin96-08-11 mntread: fix mnt.type for SCO variant 1367da2e3ebdSchin conf.tab: add SCO KERNEL_* sysconf() vars 1368da2e3ebdSchin fastfind: add findwrite(), fix findread() FF_OFF omission 1369da2e3ebdSchin ftwalk: reimplement on top of fts 1370da2e3ebdSchin fnmatch,re_comp,regexp: reimplement on top of regex 1371da2e3ebdSchin basename,dirname,fmtmsg,fts,ftw,getdate,getsubopt,glob: add 1372da2e3ebdSchin hsearch,nftw,realpath,strftime,strptime,swab,tempnam: add 1373da2e3ebdSchin tsearch,wordexp: add 1374da2e3ebdSchin getcwd: cache last path for easy test 1375da2e3ebdSchin96-07-17 error: sfsync(NiL) ... write ... sfsync(sfstderr) 1376da2e3ebdSchin astconf: handle readonly *(DEV|DIR) vars 1377da2e3ebdSchin96-04-01 swapop: fix stupid return value bug 1378da2e3ebdSchin features/int.c: fix int_swap generation bug 1379da2e3ebdSchin regnexec,regrexec: fix unsigned underflow init error 1380da2e3ebdSchin ls.h: fix iblocks() to be in units of LS_BLOCKSIZE 1381da2e3ebdSchin96-02-29 magic: space before function is definition with no call 1382da2e3ebdSchin hash: drop hash_info from public interface 1383da2e3ebdSchin hash: OBSOLETE hashlast() 1384da2e3ebdSchin hash: add Hash_root_t.Hash_last_t to public interface 1385da2e3ebdSchin add strsearch() and strnsearch() to complement strlook() 1386da2e3ebdSchin add hashkey.h for keyword->long hash 1387da2e3ebdSchin pathpath: pathpath(0,0,"",0) disables $0 $_ $PWD relative search 1388da2e3ebdSchin sfio: sfstrtod+sfhdr update 1389da2e3ebdSchin regex: fix REG_LENIENT to map BRE \[+?|] to ERE [+?|] 1390da2e3ebdSchin change _std_malloc iffe test so it doesn't hang on alpha 1391da2e3ebdSchin sfhdr.h: features/sfio generates _lib_cvt instead of _i386_cvt 1392da2e3ebdSchin ast_hdr.h: add va_copy(a,b) to copy va_list b to a 1393da2e3ebdSchin getopt: fix stupid getopt() -> optget() bug 1394da2e3ebdSchin sfvprintf: %h? now downcasts 1395da2e3ebdSchin regex: handle strto?l() errno in regcomp() 1396da2e3ebdSchin sfstrtod: _Sfstrtod_already_defined -> _STUB_sfstrtod 1397da2e3ebdSchin ast_std.h: hide valloc() and ignore <strings.h> 1398da2e3ebdSchin sfkeyprintf: pass phony va_list for '2' 1399da2e3ebdSchin regex: change HIT var type from int to size_t in special() 1400da2e3ebdSchin ast.h: add EXIT_STATUS(x) to convert wait() status to sh exit status 1401da2e3ebdSchin96-02-14 regex: add _ to \<...\> isalnum test 1402da2e3ebdSchin regex: fix BM inner loop breakout 1403da2e3ebdSchin features/types: size_t is signed on some systems! => _ast_size_t 1404da2e3ebdSchin sfio: sfrd discipline peek optimization 1405da2e3ebdSchin vmalloc: vmalloc.h malloc family macro upgrade 1406da2e3ebdSchin tokopen: fix newline bug for non-restore open 1407da2e3ebdSchin sfio: no inline for gcc until it emits for -g too 1408da2e3ebdSchin96-02-12 sfio: internal upgrade 1409da2e3ebdSchin96-02-09 regex: Boyer-Moore boundary fix 1410da2e3ebdSchin vmalloc: snarf latest 1411da2e3ebdSchin96-02-06 regex: add regrecord() and regrexec() for Boyer-Moore record filtering 1412da2e3ebdSchin regex: rearrange regnexec() args to match buffer,count arg style 1413da2e3ebdSchin96-01-31 stk: add STK_NULL to stk.h and stk.c 1414da2e3ebdSchin regex: privatize regex.h and fix min re length computation 1415da2e3ebdSchin workaround lazy strdup() implementations in features/lib _std_malloc 1416da2e3ebdSchin fix stkclose() to free(stream) -- purify missed because of sfio links 1417da2e3ebdSchin unused var cleanup 1418da2e3ebdSchin port/mnt.c must include <ls.h> to get <ast_fs.h> 1419da2e3ebdSchin add SF_FINAL to sfio and stk 1420da2e3ebdSchin sfio reads now on natural block boundaries 1421da2e3ebdSchin add #!!! <level> <message> !!! to tokline() 1422da2e3ebdSchin add REX_BM pre-filter to regcomp/regnexec 1423da2e3ebdSchin96-01-22 add regcomp env.paren overflow checks 1424da2e3ebdSchin96-01-11 add Doug McIlroy's regex (converted to C from C++ by gsf) 1425da2e3ebdSchin AT&T Research now 1426da2e3ebdSchin sfgetr optimization 1427da2e3ebdSchin regex buglets 1428da2e3ebdSchin96-01-05 tweak magic.tab for win32 1429da2e3ebdSchin95-12-25 add !(...) -> (...)! to fmtre() 1430da2e3ebdSchin nt tweaks -- functions with no header proto must be defined extern 1431da2e3ebdSchin95-11-24 version 4.1 1432da2e3ebdSchin add mnt.h mntopen mntread mntclose 1433da2e3ebdSchin convert fmtfs to mnt.h 1434da2e3ebdSchin add RE_LEFTANCHOR and RE_RIGHTANCHOR 1435da2e3ebdSchin gcc inlines must also have global library function instantiation! 1436da2e3ebdSchin add hashview() 1437da2e3ebdSchin fix strtape() internal buffer flow 1438da2e3ebdSchin fix mntread() fs/dir transposition for uts mnttab 1439da2e3ebdSchin95-10-31 change features/unistd.c includes to break limits-param cycle 1440da2e3ebdSchin add cdt from kpv 1441da2e3ebdSchin sfio snarf from kpv 1442da2e3ebdSchin add [ht]search for _WIN32 1443da2e3ebdSchin95-10-11 clarify PARANOID pathcheck() warning 1444da2e3ebdSchin fix procopen() LIB_SPAWN environ bug with setenviron() cache 1445da2e3ebdSchin fix setenviron() bug that forgot to reset environ if == 0 1446da2e3ebdSchin add %Z '\0' output format to sfkeyprintf() 1447da2e3ebdSchin sfio snarf for sfvprintf fix 1448da2e3ebdSchin allow multiple hashscan() with scope caveat 1449da2e3ebdSchin add comp/fakelink.h to synthesize a few symlink text patterns 1450da2e3ebdSchin add !<xxx> magic to misc/magic.tab 1451da2e3ebdSchin add FTW_TOP to inhibit recursion (for ftw side effects on top level) 1452da2e3ebdSchin add memfatal() common malloc fatal exception message 1453da2e3ebdSchin add dos \r\n test to misc/magic.c/cklang() 1454da2e3ebdSchin sftmp() O_EXCL+random to avoid collisions 1455da2e3ebdSchin pathtemp() uses sftmp() randomizing 1456da2e3ebdSchin features/fs uses SF_APPENDWR 1457da2e3ebdSchin sftmp() uses pathtemp() -- don't worry, its not circular 1458da2e3ebdSchin a few more _WIN32 compatibility additions 1459da2e3ebdSchin realloc fixed to use VM_RSCOPY|VM_RSMOVE instead of obsolete 1 1460da2e3ebdSchin add hashlook(tab, oldname, HASH_RENAME, newname) 1461da2e3ebdSchin a few more tweaks to satisfy port warnings 1462da2e3ebdSchin add _SFIO_INLINE_PRIVATE to provide real function too 1463da2e3ebdSchin fix <dirent.h> installation test 1464da2e3ebdSchin oops object / shared library compat with _sfgetl2 _sfgetu2 1465da2e3ebdSchin95-09-11 add getopt() compatibility 1466da2e3ebdSchin add fstat,lstat,mknod,stat fixes for _x versions in sys/stat.h 1467da2e3ebdSchin add getconf CONFORMANCE - posix for things that aren't ast default 1468da2e3ebdSchin sfio_t.h: #ifndef _SFIO_H #include "sfio.h" #endif 1469da2e3ebdSchin snarf vmalloc from kpv 1470da2e3ebdSchin95-08-11 fix malloc bug in magic 1471da2e3ebdSchin update linux and bsd 386 magic entries 1472da2e3ebdSchin error_info.auxilliary returns new level, |=ERROR_OUTPUT if msg done 1473da2e3ebdSchin drop fnmatch from strmatch for sparc (solaris) until it collates 1474da2e3ebdSchin95-07-17 fix port/astconf universe initialization 1475da2e3ebdSchin fix misc/optget opt_info.nopt initialization 1476da2e3ebdSchin drop tmset() TZ=... because it only worked when TZ=... was ignored 1477da2e3ebdSchin95-05-09 mongo <ast.h> namespace cleanup 1478da2e3ebdSchin drop > 2 year old obsolete interfaces 1479da2e3ebdSchin sfvprintf.c fix for (char:8 short:16 int:32 long:64) architectures 1480da2e3ebdSchin TMP_MAX back into conf.tab 1481da2e3ebdSchin pathbin() and pathshell() now use astconf() 1482da2e3ebdSchin fix pathtemp() to not cache getenv("TMPDIR") 1483da2e3ebdSchin fix ftwalk() metaphysical to handle non-dirs too 1484da2e3ebdSchin initialize *_info = { 0 }; for ancient ld semantics (NeXT) 1485da2e3ebdSchin fix magic() to do vmfree() 1486da2e3ebdSchin astconf(X_OK) must prefix lines with "getconf" 1487da2e3ebdSchin use <wchar.h> and wctype in strmatch() if available 1488da2e3ebdSchin _lib_utime_now checks utime(path,0) 1489da2e3ebdSchin _lib_poll_notimer checks poll(x,0,timeout) 1490da2e3ebdSchin add another _lib_utime_now check to port/touch.c 1491da2e3ebdSchin fix dd_buf cast in dir/opendir.c 1492da2e3ebdSchin split getconf.h into conftab.h and conftab.c for :READONLY: 1493da2e3ebdSchin use mbtowc() only if MB_LEN_MAX>1 1494da2e3ebdSchin sfio char* -> Void_t* cleanup 1495da2e3ebdSchin handle old syntax in misc/magic.c 1496da2e3ebdSchin sigdata.c holds readonly signal strings 1497da2e3ebdSchin pathcheck() does AT&T checks for tools matching PARANOID - yuk 1498da2e3ebdSchin unused var cleanup 1499da2e3ebdSchin deprecate hash_info in favor of hashlast() 1500da2e3ebdSchin fix bad conf.sh ksh integer interactions 1501da2e3ebdSchin dll cleanup 1502da2e3ebdSchin magic.c falls back to malloc for now 1503da2e3ebdSchin add environ to <ast.h> -- C library global data syms are *RESERVED* 1504da2e3ebdSchin sfhdr.h memccpy(1,2,3,size_t) prototype 1505da2e3ebdSchin95-04-01 version 4.0 1506da2e3ebdSchin convert to vmalloc 1507da2e3ebdSchin allow sigcritical() nesting mismatch to work around vfork() bug 1508da2e3ebdSchin add strexpr() primitive for streval() with user handle (like ftwalk) 1509da2e3ebdSchin add <magic.h> and magic.c file command magic interface 1510da2e3ebdSchin update magic mail message entry 1511da2e3ebdSchin fix keyprintf() invisible char count nesting bug 1512da2e3ebdSchin add sfstrnew(SF_READ|SF_WRITE) for alternate sfstropen() modes 1513da2e3ebdSchin sfstrnew(SF_READ) but reading requires sfseek(), sfreserve() 1514da2e3ebdSchin add conf.tab and conf.sh to nail C/POSIX limits/unistd macros 1515da2e3ebdSchin add getconf() string interface to *conf* 1516da2e3ebdSchin _DLL_INTERMEDIATE_DATA for systems that require indirect globals 1517da2e3ebdSchin _DLL for building shared libraries with _DLL_INTERMEDIATE_DATA 1518da2e3ebdSchin vecfile() restricted to S_ISREG() 1519da2e3ebdSchin add spawnveg() for job control 1520da2e3ebdSchin convert procopen() PROC_PGRP(id) to spawnveg() 1521da2e3ebdSchin fmterror() returns error text given errno (strerror() does same) 1522da2e3ebdSchin fmtsignal() returns signal text given errno (strsignal() does same) 1523da2e3ebdSchin {sig_name,sig_text,SIG_MAX} -> sig_info.{name,text,sigmax} 1524da2e3ebdSchin liberror("",...) omits [%s library] prefix 1525da2e3ebdSchin update features/signal.c table 1526da2e3ebdSchin add vmdisc() and change vmnewof() to use vmresize() 1527da2e3ebdSchin fix conf.sh to allow refs to previously defined limits 1528da2e3ebdSchin fix undefined entries in getconf() 1529da2e3ebdSchin magic data in magic.tab 1530da2e3ebdSchin fix stropt() pointer cast 1531da2e3ebdSchin vmalloc() exception handler replaces nomalloc() 1532da2e3ebdSchin merge sigdata.c into fmtsignal.c -- sun link needs function w/ data! 1533da2e3ebdSchin sftmp() bug fix 1534da2e3ebdSchin drop local <unistd.h> even with _POSIX_SOURCE 1535da2e3ebdSchin fix vmstrdup() macro arg miscount 1536da2e3ebdSchin fix conf.sh to handle enum'd symbolic constants in unistd.h 1537da2e3ebdSchin drop malloc() et.al. prototypes from vmalloc.h 1538da2e3ebdSchin fix sfvprintf() %d argument reference 1539da2e3ebdSchin add OSF/1 AES symbol(s) to conf.tab 1540da2e3ebdSchin determine standards prefix from conf.tab 1541da2e3ebdSchin add _CS_SHELL to conf.tab 1542da2e3ebdSchin getpath() default is confstr(_CS_PATH) 1543da2e3ebdSchin getshell() default is confstr(_CS_SHELL) 1544da2e3ebdSchin unify keyprintf user function args (should have learned by now!) 1545da2e3ebdSchin add quad type to magic 1546da2e3ebdSchin add astfeature() to unify universe style dynamic features 1547da2e3ebdSchin add ftwflags() to determine FTW_* flags from astfeature() 1548da2e3ebdSchin95-03-11 fix stropt() to not modify its *const* arg 1549da2e3ebdSchin handle "'\ quotes and chresc() in stropt() values 1550da2e3ebdSchin , treated like :space: between stropt() options 1551da2e3ebdSchin fix procopen() fd dup to ignore self-dups 1552da2e3ebdSchin add library id[] to misc/state.c 1553da2e3ebdSchin add ftwalk(FTW_METAPHYSICAL) for posix -H 1554da2e3ebdSchin sfvprintf() now handles balanced () in %() 1555da2e3ebdSchin add tmfmt() with buffer size check to replace tmform() 1556da2e3ebdSchin add fmttime() calling tmfmt() to fit fmt*() mold 1557da2e3ebdSchin add <keyprintf.h> and keyprintf() to support %(...)? in commands 1558da2e3ebdSchin add Hash_table_t for size==0 in stropt() 1559da2e3ebdSchin add EXTTYPE extended header to tar.h 1560da2e3ebdSchin95-02-14 sfmove() buffer size overflow fix 1561da2e3ebdSchin add _SFSTDIO_H to sfio.h 1562da2e3ebdSchin rename setenv() to setenviron() -- posix finally decided 1563da2e3ebdSchin rename <option.h> opt_* to opt_info.* 1564da2e3ebdSchin update features/unistd.c for _SC_* and _PC_* posix additions 1565da2e3ebdSchin95-01-19 (char*)uchar cast in fmtesc() 1566da2e3ebdSchin fix hash bucket memory leak in hashlook() [via John Mocenigo] 1567da2e3ebdSchin update strings/strtape() 1568da2e3ebdSchin fix optget()/optjoin() to handle leading + 1569da2e3ebdSchin add ALIGN_ prefix to <align.h> identifiers 1570da2e3ebdSchin95-01-11 change tm/*.c tmset(0) to tmset(tm_info.zone) to keep user setting 1571da2e3ebdSchin fix tmform() %Z null pointer dereference 1572da2e3ebdSchin95-01-01 add this RELEASE file 1573da2e3ebdSchin fix strperm() to properly handle "644 file" 1574da2e3ebdSchin fix tokline() to return last '\0' terminated line in string 1575da2e3ebdSchin fix tokscan() to properly handle \\n splice 1576da2e3ebdSchin add fmtesc() to complement stresc() 1577da2e3ebdSchin add LS_NUMBER to fmtls() 1578da2e3ebdSchin drop spurious optusage() ' ' 1579