ksh93 integration Update 2 has been released:

The putback of:
        PSARC/2009/063 ksh93 update 2
        PSARC/2009/248 ksh93 update to 2009-03-10
        PSARC/2009/249 more ksh93 command conversions

        6605478 ksh93 profile shell option does not work
        6631006 ksh93 hangs in situations that ksh handles okay
        6661487 logname reports nothing after running the script command
        6705126 first call to read doesn't honor new setting of HISTFILE
        6764665 *libpp* Array overrun in libpp
        6765756 *libast* Array overruns in libast
        6769332 Recursive function+command substitutions terminate shell
                after 257 iterations
        6777491 "*ksh93* lacks arithmetric function # iszero()"
        6778077 *ksh93* does not understand "THAW" as a signal for use with
                trap
        6789247 [ku1] libast/ksh93 1-digit hexfloat base conversion rounds
                incorrectly
        6791838 *ksh93* unset of a variable which is not set should return 0
        6793714 RFE: Update /usr/bin/comm to AT&T AST "comm"
        6793719 RFE: Update /usr/bin/cut to AT&T AST "cut"
        6793721 RFE: Update /usr/bin/paste to AT&T AST "paste"
        6793722 RFE: Update /usr/bin/cmp to AT&T AST "cmp"
        6793726 RFE: Update /usr/bin/uniq to AT&T AST "uniq"
        6793735 RFE: Update /usr/bin/wc to AT&T AST "wc"
        6793744 RFE: Add /usr/share/doc/ksh/ for ksh93 documentation
        6793747 RFE: Provide "print" builtin as /usr/bin/print for external
                applications
        6793763 RFE: Update /usr/bin/ksh93 to ast-ksh.2009-05-05
        6794952 RFE: Enable "globstar" option in /etc/ksh.kshrc
        6805792 [ku1] Moving local compound var into array does not work
        6805794 [ku1] printf returns "invalid character constant" for
                $ printf "%d\n" "'<euro>"
        6805795 [ku1] ksh93 does not differ between -0 and +0
        6805797 [ku1]Can't append to nodes of an array of compound vars if
                addressing them via nameref
        6805799 Indexed compound variable arrays do not work...
        6805800 [ku1] Declaring associative compound array does not work
        6805813 RFE: Update /usr/bin/join to AT&T AST "join"
        6805819 RFE: Update /usr/bin/tee to AT&T AST "tee"
        6809663 shlint missing ending newline on errors
        6811916 ksh93 repeatedly seg faults when "tee" builtin is interupted
                via <ctrl-c> in inteactive mode
        6821113 SUNWosdem package issues
        6828644 RFE: Update /usr/bin/logname to AT&T AST "logname"
        6828692 RFE: Update /usr/bin/cksum to AT&T AST "cksum"
        6834184 ksh93 gets SIGSEGV if HISTFILE is changed in place.
        6834207 ksh93 gets SIGSEGV on interactive function definition with
                HISTSIZE unset
        6835835 ksh93 "cat" builtin does not handle "-n" correctly
        6848486 "echo ${test}" with test undefined crashes the shell
        6850672 ksh93 (VISUAL=vi) crashes with memory fault while scolling
                through history
        6855875 typeset -X x ; print $x # does not print sufficient digits
                to restore value
        6857344 /usr/bin/hash core dump with invalid arguments
        6866676 Need test suite module to test the kernel support for
                compiled shell scripts
        6881017 Subshell doesn't exit, holds pipe open preventing callers
                from exiting
        6884409 fts functions in libast library can result in segv with
                deep dir trees (similar to CERT VU#590371)


will affect two projects:
1. ksh93-integration project:
############################
- ksh93 is updated to ast-ksh.2009-10-14
  (a Changelog for ksh93/libshell can be found in the "Changelog" section
  of this document.

- The following additional builtin commands are now enabled by default
  and bound to /usr/bin/
      /usr/bin/cksum
      /usr/bin/cmp
      /usr/bin/comm
      /usr/bin/cut
      /usr/bin/join
      /usr/bin/paste
      /usr/bin/tail

- Usability:
  - The machine-wide ksh interactive shell startup file
    /etc/ksh.kshrc will now enable the "globstar" mode by default
    The "globstar" mode (enabled via $ set -o globstar #) causes ** by
    itself to also match all sub-directories during pathname expansion.

- The new type system is now considered stable (but not fully ARC'ed yet),
  the documentation can be found in /usr/share/doc/ksh/TYPES

- The ksh93 documentation now lives in /usr/share/doc/ksh/

- Demo code/"Easter-eggs":
  - ksh93 now contains an experimental version of "grep" which comes in
    several flavours and should form the basis for a future version
    of POSIX/SUS "grep" (matching /usr/xpg4/bin/grep&co.) with common
    GNU+BSD features (including "-r").
    - "grep"  The default basic regular expressions (no alternations.)
    - "egrep" Extended regular expressions (alternations, one or more.)
    - "fgrep" Fixed string expressions.
    - "pgrep" perl(1) regular expressions (lenient extended.)
    - "xgrep" Augmented regular expressions (conjunction, negation.)
    The builtin can be accessed like this:
    $ builtin grep ; grep --help # enables the "grep" builtin and displays
    the builtin help

  - "shnote" - Read/wrote text from/to opensolaris.pastebin.ca
    /usr/demo/ksh/bin/shnote

    Example:
    1. Upload output of "ls -l" to opensolaris.pastebin.ca
    $ /usr/demo/ksh/bin/shnote put "$(ls -l)"
    2. Watch history:
    $ /usr/demo/ksh/bin/shnote hist

  - "shircbot" - IRC bot:
    /usr/demo/ksh/bin/shircbot

    Examples:
    $ /usr/demo/ksh/bin/shircbot -s irc.sfbay -j "#onnv"
    $ /usr/demo/ksh/bin/shircbot -s irc.freenode.net -j \
      "#solaris" -j "#opensolaris"

  - "shtinyurl" - Convert long URLs into a tr.im or tinyurl.com URL:
    /usr/demo/ksh/bin/shtinyurl

    Example:
    $ /usr/demo/ksh/bin/shtinyurl 'http://www.opensolaris.org'

  - "shcalc" - Small calculator which can use all ISO C99
    floating-point math functions.
    /usr/demo/ksh/bin/shcalc

    Examples:
    $ /usr/demo/ksh/bin/shcalc 'sin(72)'
    $ printf "copysign(-3.2, 0.1)\n" | /usr/demo/ksh/bin/shcalc

  - "shlint" - Mini-"lint" for shell scripts:
    /usr/demo/ksh/bin/shlint

  - "shman" - Prototype for /usr/bin/man rewrite:
    /usr/demo/ksh/bin/shman

  - "shpiano" - Audio output/keyboard piano:
    /usr/demo/ksh/bin/shpiano

  - "shtwitter" - "twitter" client:
    /usr/demo/ksh/bin/shtwitter

  - "svcproptree1" - Show SMF properties as compound variable tree:
    /usr/demo/ksh/bin/svcproptree1

    Examples:
    $ /usr/demo/ksh/bin/svcproptree1 '*finger*' tree
    $ /usr/demo/ksh/bin/svcproptree1 '*finger*' list

  - "test_net_sctp" - Simple SCTP protocol demo:
    /usr/demo/ksh/bin/test_net_sctp

  - "xmldocumenttree1" - Simple XML parser:
    /usr/demo/ksh/bin/xmldocumenttree1

  - "crawlsrccomments" - Script to parse source files for comments
    into a database for later pattern matching (used as
    "license scanner"):
    /usr/demo/ksh/bin/crawlsrccomments

  - "filemutexdemo1" - Object-oriented read/write mutex class+demo
     implemented via a directory:
    /usr/demo/ksh/bin/filemutexdemo1


2. POSIX utility modernisation:
###############################
  As part of the POSIX utilty modernisation project the following
  utilities are switched from the old Solaris codebase to the AT&T AST
  (=Advanced Software Technology) codebase:
       /usr/bin/cksum
       /usr/bin/cmp
       /usr/bin/comm
       /usr/bin/cut
       /usr/bin/join
       /usr/bin/paste
       /usr/bin/print
       /usr/bin/tee
       /usr/bin/uniq
       /usr/bin/wc

Notes:
- The new versions of these utilities have common GNU+BSD features, see
  PSARC/2009/063 and PSARC/2009/249

- Each utility supports the --help and --man option which can be used
  to obtain a short description of the additional features

- the implementation of /usr/bin/cksum will take the specified output
  format string "%u %d %s\n" <checksum>, <# of octets>, <path name> now
  literally, previously implementation used a <tab> instead of
  <space> between %u and %d (the POSIX standard allows both <tab>
  and <space>, however GNU and BSD implementations use <space> and
  no other implementation except Solaris was found which uses
  <tab>). This is not considered an issue of backwards-compatibility
  since the POSIX people invented "cksum" as portable hash sum generator
  and any non-standard behaviour defeats the purpose of this utility
  (this was explicitly described in PSARC/2009/249).
  For further information see
  http://www.opengroup.org/onlinepubs/009695399/utilities/cksum.html

- Design:
  - The code for the utilities is shared between ksh93 and the utilities
    and lives in libcmd.so.1 to reduce disk footprint.
  - The source code for the utilities can be found under
    usr/src/lib/libcmd/common/, the entry point can be found at
    usr/src/cmd/ksh/builtins/alias.c. This follows the design of
    "busybox" in where one executable contains many different utilities
    where the physical files in /usr/bin/ are hard-links to the busybox
    executable (we call it "alias" in our implementation).

- The putback contains code to replace the closed-source binaries
  of /usr/bin/tail and /usr/xpg4/bin/tail, however the mappings
  in usr/src/cmd/ksh/builtins/Makefile are not enabled by default
  since this requires a special approval. The code however is
  tested and considered safe for production usage and OpenSolaris
  distributions may replace the closed binaries of /usr/bin/tail
  and /usr/xpg4/bin/tail with _hardlinks_ to /usr/bin/alias


Changelog:
#########
* libshell (ksh93 core):
09-10-12  --- Release ksh93t+  ---
09-10-12  A bug in which a function loaded in a subshell could leave side
          effects in the parent shell has been fixed.
09-10-12  A bug in converting a printf %d operand to a number when the operand
          contains multiple subscripts for the same variable has been fixed.
09-10-09  A bug in the handling of the escape character \ in directory prefixes
          in command completion has been fixed.
09-10-09  $PATH processing has been changed to delay dir stat() and .paths
          lookup until the directory is needed in the path search.
09-09-28  Call the ast setlocale() intercept on unset too.
09-09-24  A bug in which LANG=foo; LC_ALL=foo; unset LC_ALL; did not revert
          LC_CTYPE etc. to the LANG value has been fixed.
09-09-17  A bug in which unsetting SVLVL could cause a script invoked by
          name without #! to core dump has been fixed.
09-09-16  A bug in which a pipeline in a here-document could hang when the
          pipefail option was on has been fixed.
09-09-09  A bug in the processing of line joining in here documents which
          occurred when a buffer began with <escape><new-line> has been fixed.
09-09-09  A leading ; with commands in a brace group or parenthesis group
          no longer causes an error.  It now is used for the "showme" option.
09-09-09  A bug in which a subshell containing a background process could
          block until the background process completed has been fixed.
09-09-04  A bug in handing ${var[sub]}, where var is a nameref has been fixed.
09-09-03  A bug which caused an index array to have the wrong number of elements
          when it was converted from a compound variable by adding an another
          element has been fixed.
09-09-03  Specifying export for a compound variable now generates an error.
09-09-02  $"..." localizations strings are no longer recognized inside `...`.
09-09-01  A bug in the for loop optimizer in the handling of type static
          variables has been fixed.
09-09-01  An error message is not displayed when * and @ are used as subscripts.
09-09-01  Several bugs in the processing for types that included an associative
          array of another type has been fixed.
09-09-01  A bug in the tracing of [[ a < b ]] and [[ a > b ]] has been fixed.
09-08-26  The .sh.file variable was not being set for a script that was run
          by name and didn't start with #! and this has been fixed.
09-08-25  A bug in which a function called to deeply from command substitution
          did not display an error message has been fixed.
09-08-24  When processing profiles, ksh93 now violates the POSIX standard and
          treats &> as a redirection operator similar to bash.
09-08-23  A bug in the handling of the trap on SIGPIPE that could lead to am
          memory fault has been fixed.
09-08-21  A bug in the handling of the comma operator in arithmetic expressions
          that could cause a core dump on some systems has been fixed.
09-08-20  A bug in which a compound variable containing an array of a type
          that doesn't have any elements now expands correctly.
09-08-19  A bug which disabled function tracing inside a function after
          a call to another function has been fixed.
09-08-19  A bug in which initializing a compound variable instance to another
          compound variable by name has been fixed.
09-08-18  A bug in which compound variable instances could be lost after
          an instance that invoked a type method discipline has been fixed.
09-08-18  A bug in which a discipline function for a type applied to an
          array instance when invoked in a function ignored the subscript
          has been fixed.
09-08-18  A scoping error with variables in arithmetic expression with
          type variables when reference with a name reference has been fixed.
09-08-10  Several memory leaks were fixed primarily related to subshells.
09-08-06  A bug in which setting the trap on CHLD to ignore could cause
          a script to hang has been fixed.
09-07-08  A bug in the processing of name reference assignments when it
          contained pattern expansions with quoting has been fixed.
09-06-22  The default width for typeset -X has been changed so that there
          should be no loss of precision when converting to a string.
09-06-19  A bug in the printing of array elements for binary variables with
          printf %B has been fixed.
09-06-19  A bug which caused a core dump with trap DEBUG set with an array
          assignment with no elements has been fixed.
09-06-19  A bug with read with typeset -b -Z<num> has been fixed.
09-06-19  Two bugs related to read -b for array variables has been fixed.
09-06-19  A bug with typeset for compound variables containing arrays of
          compound variables has been fixed.
09-06-18  A bug in appending a compound variable to a an indexed array of
          compound variables has been fixed.
09-06-18  A bug which occurs when appending a compound variable to an indexed
          array element has been fixed.
09-06-18  Setting VISUAL to a value other than one ending in vi or emacs will
          no longer unset the edit mode.
09-06-17  A bug in typeset -m when moving a local compound variable to a
          global compound variable via a name reference has been fixed.
09-06-17  A bug in appending to nodes of an array of compound variables when
          addressing them via nameref has been fixed.
09-06-17  A bug in typeset -p var, when var is an array of compound variables
          in which the output only contained on array element has been fixed.
09-06-17  The prefix expansion ${...@} now works when y is a name
          reference to an element of an array.
09-06-16  Traps on signals that are ignored when the shell is invoked
          no longer display.  Previously they were ignored as required but
          would be listed with trap -p.
09-06-12  A bug in vi edit mode in which hitting the up arrow key at the
          end of a line longer than 40 characters which caused a core dump
          has been fixed.
09-06-11  A bug in which "eval non-builtin &" would create two processes,
          one for the & and another for non-builtin has been fixed.
09-06-08  When var is an identifier and is unset, ${var} no longer tries to
          run command substitution on the command var.
09-06-08  Process substitution arguments of the form <(command) can now be
          used following the < redirection operator to redirect from command.
09-05-13  A bug in which redirections of the form 2>&1 1>&5 inside command
          substitution could cause the command substitution to hang has been
          fixed.
09-05-12  To conform with POSIX, the -u option only checks for unset variables
          and subscript elements rather than checking for all parameters.
09-05-12  A bug which could cause a core dump when a variable whose name
          begins with a . was referenced as part of a name reference inside
          a function has been fixed.
09-05-01  A bug that caused a core dump when SIGWINCH was received and
          both vi and emacs mode were off has been fixed.
09-04-22  Default alias compound='typeset -C' added.
09-04-15  A bug that caused ${...;} to hang for large files has ben fixed.
09-04-08  A change was made in the -n option which printed out an incorrect
          warning with <>.
09-04-07  The emacs edit command M-_ and M_. and the vi command _ was fixed
          to handle the case there there is no history file.
09-04-05  A bug in handling new-lines with read -n has been fixed.
09-04-05  The ENV variable defaults the the file named by $HOME/.kshrc rather
          then to the string $HOME/.kshrc.
09-03-31  A bug in which a nested command substitution with redirections could
          leave a file descriptor open has been fixed.
09-03-24  ksh now only uses the value of the _ variable on startup if it can
          verify that it was set by the invoking process rather than being
          inherited by some other ancestor.
09-03-24  When ksh is invoked without -p and ruid!=euid, and the shell is
          compiled without SHOPT_P_UID or ruid<SHOPT_P_UID, the shell now
          enables the -p option.  The previous version instead set the
          euid to the ruid as it does for set +p.
09-03-24  When SHOPT_P_UID is defined at compile time and the shell is started
          without -p and ruid!=euid and ruid>=SHOPT_P_UID then euid is set
          to ruid. A bug that did the wrong test (ruid<SHOPT_P_UID) was fixed.
09-03-17  The sleep(1) builtin now accept and ISO 8601 PnYnMnDTnHnMnS
          duration or date(1) compatible date/time operand.
09-03-10  If a variable that was left or right justified or zero-filled was
          changed with a typeset statement that was left or right justified
          or zero-filled, then the original justification no longer affects
          the result.
09-03-10  A bug in the handling of traps when the last command in a script
          is a subshell grouping command has been fixed.
09-03-03  A bug in which an expansion of the form ${!pre...@} could generate
          an exception after the return from a function has been fixed.
09-02-02  A bug in restricted mode in which the value of ENV could be
          changed from within a function has been fixed.
09-02-02  A bug in which an erroneous message indicating that a process
          terminated with a coredump has been fixed.
09-02-02  The exit status when exit was called without an argument from
          a signal handler was incorrect and has been fixed.
09-02-02  A bug in which a function autoloaded in a subshell could cause
          a core dump when the subshell completed has been fixed.
09-02-02  A bug in which 2>&1 inside a command substitution wasn't working
          correctly has been fixed.
09-02-02  A bug in the call stack of arithmetic function with 2 args
          returning int has been fixed.
09-01-30  A bug in which 'eval print \$0' inside a function was giving the
          wrong value for $0 has been fixed.
09-01-28  A bug in which a command substitution could return an exit status
          of 127 when the pipefail option is enabled has been fixed.
09-01-26  ksh93 now generates an error message if you attempt to create
          a global name reference to a local variable.
09-01-26  The [[ -v var ]] operator was modified to test for array elements.
09-01-23  The redirection operator <>; was added.  It is similar to <>
          except that if the command it is applied to succeeds, the file
          is truncated to the offset at the command completion.
09-01-23  The default file descriptor for <> was changed to 1.
09-01-20  A bug in which the exit status specified in an exit trap was
          not used when a process terminated with a signal has been fixed.
09-01-19  A bug in which a signal whose default action is to terminate
          a process could be ignored when the process is running a sub-shell
          has been fixed.
09-01-19  A bug in which sending SIGWINCH to a process that reads from a pipe
          could cause a memory fault has been fixed.
09-01-16  The -R unary operator was added to [[...]] and test to check whether
          a variable is a  name reference.
09-01-16  The -v unary operator was added to [[...]] and test to check whether
          a variable is set.
09-01-14  The unset built-in was modified to return 0 exit status when
          unsetting a variable that was unset to conform with the POSIX
          standard.
09-01-14  The unset built-in was modified to continue to unset variables
          after encountering a variable that it could not unset to
          conform to the POSIX standard.
09-01-14  The parameter expansion ${x+value} no longer expands the value of
          the variable x when determining whether x is set or not.
09-01-13  A bug in which background jobs and pipelines that were not waited
          for could, in rare instances, cause the shell to go into an infinite
          loop or fail has been fixed.
09-01-06  A bug in indexed arrays of compound variables in which referencing
          non-existent sub-variable in an arithmetic expression could cause
          the sub-variable to be created has been fixed.
09-01-05  A bug in which the \ character did not escape extended regular
          expression pattern characters has been fixed.
08-12-24  A bug in which killing the last element of a pipe did not cause
          a write to the pipe to generate a SIGPIPE has been fixed.
08-12-19  A bug which could cause command substitution to hang when the
          last element of a pipeline in a command substitution was a built-in
          and the output was more that PIPE_BUFF.
08-12-18  A bug which occurs when a here documented marker embedded in a
          command substitution occurs on a buffer boundary has been fixed.
08-12-17  A bug in the output of typeset -p for variables that had attributes
          but did not have a value has been fixed.
08-12-16  A bug in which a name reference to a name reference variable that
          references an array element has been fixed.
08-12-16  A bug in which a variable given both the -A and -C attribute along
          with an initial assignment didn't work correctly has been fixed.
08-12-10  The [[ -t fd ]] test was fixed to handle fd>9.
08-12-10  A bug where function stack misalignment could cause a bus error
          has been fixed.
08-12-09  Command completion was changed to use \ to quote special characters
          instead of quoting the argument in single quotes.
08-12-07  A bug in typeset -m which occurred when the target node was an
          associative array element has been fixed.
08-12-07  A timing bug on some systems (for example darwin), that could
          cause the last process of a pipeline entered interactively to fail
          with an "Exec format error" has been fixed.
08-12-04  SHOPT_BGX enables background job extensions. Noted by "J" in
          the version string when enabled. (1) JOBMAX=n limits the number
          of concurrent & jobs to n; the n+1 & job will block until a
          running background job completes. (2) SIGCHLD traps are queued
          so that each completing background job gets its own trap; $! is
          set to the job pid and $? is set to the job exit status at the
          beginning of the trap. (3) sleep -s added to sleep until the time
          expires or until a signal is delivered.
08-12-04  The sign of floating point zero is preserved across arithmetic
          function calls.
08-12-04  A bug that caused print(1) to produce garbled stdout/stderr
          output has been fixed.
08-12-04  A bug in which printf "%d\n" "'<euro>'" did not output the
          numerical value of the EURO symbol, 8354, has been fixed.
08-11-24  /dev/fd* and /dev/std* redirections are first attempted with
          open() to preserve seek semantics; failing that the corresponding
          file descriptors are dup()'d.
08-11-20  A bug which could cause a core dump if a function compiled with
          shcomp was found has been fixed.
08-11-20  A bug in which jobs were not cleared from the jobs table for
          interactive shells when the pipefail option is on has been fixed.
08-11-11  A bug in which a field that was unset in a type definition and later
          set for an instance could appear twice when displaying the variable
          has been fixed.
08-11-11  A bug in which running a simple command & inside a function would
          not return the correct process id has been fixed.
08=11-10  A bug in which the exit status of a command could be lost if the pid
          was that of the most recent command substitution that had completed
          has been fixed.
08-11-10  The maximum depth for subshells has been increased from 256 to 65536.
08-11-06  A bug which could cause a core dump when the _ reference variable was
          used as an embedded type with a compound assignment has been fixed.

* libsum:
09-09-28 sumlib.c: use simple (faster) method name match function

* libpp:
09-02-02 pp.probe,probe.win32: check for compiler supplied __FUNCTION__
09-02-02 ppop.c: include pp_default.h/probe at end of builtin script
09-01-20 probe.win32: elide #pragma comment.*linker.*manifest
09-01-06 ppcall.c: fix macro definition overwrite bug -- I know
09-01-05 ppcontrol.c: fix multiple include guard for #include outside guard
08-12-07 pp.h,ppdata.c: fix ancient pptype and ppctype[] off by one

* libdll:
09-04-15 dllopen.c: add, use dllopen() internally to wrap dlopen()

* libcmd:
09-09-09 fds.c: add --unit=fd
09-08-25 tail.c: initialize Tail_t.fifo=0 !!
09-08-15 tail.c: fix fifo logic
09-08-11 wc.c: add setlocale(LC_CTYPE,"C") cleanup, add utf8 optimzations
09-08-10 uniq.c: replace -c 1..9999 sfsprintf() with inline conversion
09-08-01 join.c: fix empty field null pointer deref
09-07-23 pathchk.c: add -P,--path and -a,--all
09-07-02 chgrp.c,chmod.c,cksum.c: fts_flags() default only if not --recursive
09-06-19 cmd.h,cmdinit.c: add ERROR_CALLBACK for ERROR_NOTIFY main() callback
09-06-19 mktemp.c: --unsafe now checks and prints path but does create
09-06-19 tee.c: add ERROR_CALLBACK for tee_cleanup() sfio discipline pop
09-06-18 rm.c: handle interrupts during interactive query
09-06-18 cp.c: handle interrupts during interactive query
09-05-25 tail.c: fix old style option logic to handle --invalid-long-option
09-05-24 tail.c: -r == +1r
09-05-01 mktemp.c: handle foo/prefix, add -p dir and -u
09-03-31 cat.c: handle --no* options
09-03-15 tail.c: fix --timeout termination logic
09-03-03 tee.c: clean up sfio disciplines on error
09-03-03 cat.c: fix -v|-e|-n|-B interaction bugs
09-02-14 tail.c: fix VSC failures
09-02-14 join.c: fix VSC failure
09-02-02 uniq.c: document -number == -fnumber, +number == -snumber
09-02-02 tail.c: fix usage[] for negative offsets, add sun -b
09-02-02 mktemp.c: add
09-02-02 features/utsname: UWIN _UNAME_os_DEFAULT => UWIN
09-01-31 dirname.c: add experimental { -f -r -x } for pathpath(3)
09-01-05 cmp.c: fix EOF diagnostic to conform to posix
09-01-03 mkfifo.c: fix --mode=mode logic
08-12-07 date.c: add %[_][EO]K for [space pad] [full|long] iso docs
08-11-10 stty.c: check for -t grouping so -tostop != -t -ostop

* libast:
09-10-05 _sfopen.c: add but ignore 'F' flags for stdio compatibility
09-09-28 fts.h,ftwalk.h,fts.c: promote { namelen pathlen level } to (s)size_t
09-09-28 locales: add AST_LC_LANG for $LANG
09-09-28 setlocale.c: fix logic for dynamic { LANG LC_ALL LC_* } changes
09-09-17 include/sfio.h,sfio/sfwalk.c: add sfwalk()
09-09-09 sfio/sfputr.c: add SIGPIPE hang fix
09-08-24 sfio/sfreserve.c: fix SF_UNBOUND logic with pushed streams
09-08-18 include/ast_std.h,ast.h: add ast.mb_sync to sync mbchar() after error
09-08-17 comp/setlocale.c: add AST_LC_utf8 and { utf8_mbtowc() utf8_mblen() }
09-08-11 comp/setlocale.c: treat "en"/"en_US" AST_LC_MESSAGES as "C"/"POSIX"
09-08-10 vmalloc/vmhdr.h: add user-defined _AST_PAGESIZE and computed VMHEAPINCR
09-08-09 comp/conf.tab: add NPROCESSORS_MAX
09-07-29 astlicense.c: fix first name=value logic error
09-07-22 string/fmtip6.c: don't drop trailing 0 in 44::1:0:0
09-06-30 port/astconf.c: standard PATH_RESOLVE is "physical" (not
"metaphysical")
09-06-19 vmalloc: sync with kpv
09-06-19 include/shcmd.h: add sh_context(p) cast
09-06-11 misc/magic.tab: differentiate pc 386 32/64 bit dll/exe/obj
09-06-06 port/astconf.c: fix look->name null pointer reference
09-06-05 port/astconf.c: fix 'UNIVERSE = value' synthesize logic
09-05-25 tm/tmxduration.c: add
09-05-08 comp/syslog.c: add _UWIN /var/log/syslog preference
09-05-01 comp/setlocale.c: fix _UWIN intercepts to return NiL on unknown locales
09-04-27 sfio/sfpool.c: fix bug that did not return pool on delete
09-04-22 include/regex.h,regex/regcomp.c: add REG_REGEXP <regexp.h>
compatibility
09-04-15 tm/tmxdate.c: handle "4th thursday in november"
09-03-31 string/strvcmp.c,string/strnvcmp.c: add version strcmp(3)
09-03-31 string/strpcmp.c,string/strnpcmp.c: add path prefix strcmp(3)
09-03-29 misc/optget.c: clean up num = number casts
09-03-04 tm/tmxmake.c: add tmxtm() with zone override
09-03-03 tm/tmxfmt.c: add %(...)<c>, specifically %(...)z for output zone
09-02-22 tm/tmxdate.c: add iso P... durations
09-02-02 path/pathprog.c: add
09-02-02 misc/opthdr.h,optget.c: fix flags mixup, handle old '-' as option
09-02-02 sfio/sfprints.c: fix sfvaprints() return value to not count
trailing '\0'
09-02-02 misc/cmdarg.c: handle !defined(ARG_MAX)
09-02-02 port/astconf.c: fix UNIVERSE overwrite of null[] value!
09-01-31 features/sys: drop header sys/localedef.h
09-01-28 include/fs3d.h,misc/fs3d.c: mount() => fs3d_mount() for diff
std prototypes
09-01-14 misc/fts_open.c: delay top list reorder until first fts_read()
09-01-14 include/ls.h: LS_W_INUMBER => 9 to accomodate large st_ino
09-01-14 misc/optget.c: expand STYLE_usage input text
09-01-09 features/uwin,stdio/_stdfun.c: iffe for _p__iob and __p__iob
09-01-09 misc/magic.tab: add ISO filesystem image entries
09-01-07 string/strtoi.c: strtol() etc. do not consume [lLuU] suffix
-- thanks jkf
09-01-07 sfio/sfstrtof.h: strtod() etc. do not consume [fFlL] suffix
-- thanks jkf
09-01-05 string/strlcat.c: fix logic to match docs (not that easy)
08-12-30 tm/tmxdate.c,include/tm.h: add TM_WORK { "workday" "working" "work" }
08-12-28 sfio/sfcvt.c: fix 'a' format rounding
08-12-21 tm/tmdata.c: add 2008-12-31+23:59:60-0000 leap second event
08-12-19 tm/tmxdate.c: check for dates near the epoch rolling back to the future
08-12-19 tm/tmxfmt.c: change %s for now==0 to be the epoch
08-12-07 include/ast_std.h,misc/getenv.c: no _ast_getenv for uwin
ast54 compatibility
08-12-07 tm/tmxfmt.c: add %[_][EO]K for [space pad] [full|long] iso
08-12-07 sfio/sfvscanf.c: fix ok[] short by one allocation
08-12-07 comp/setlocale.c: fix off by one composite initialition loop test
08-12-07 path/pathkey.c: fix off by one loop test
08-12-04 vmalloc/vmbest.c: catch sbrk() wraparound
08-12-04 comp/spawnveg.c: clean up attrs on failure too


Reporting bugs/problems/rants
#############################
If you encounter any difficulties which you believe may be related to
this putback, please direct all rants/flames in Roland's
(roland.mainz at nrubsig.org) or Olga's (olga.kryzhanovska at gmail.com)
direction, the ksh93-integration mailing list (see
http://mail.opensolaris.org/mailman/listinfo/ksh93-integration-discuss ;
please subscribe before posting), or http://bugs.opensolaris.org/
(Product/Category/Subcategory "solaris/shell/korn93").



Links
#####
- Project homepage:
  http://hub.opensolaris.org/bin/view/Project+ksh93-integration/
  http://www.opensolaris.org/os/project/ksh93-integration/

- Putback email:
  http://mail.opensolaris.org/pipermail/onnv-notify/2009-October/010659.html

- This announcement:
  
http://svn.genunix.org/repos/on/branches/ksh93/gisburn/doc/headsup_ksh93_update2_announcement.txt

- KornShell home page:
  http://www.kornshell.com/

- AT&T ast-ksh source packages:
  http://www.research.att.com/~gsf/cgi-bin/download.cgi?action=list&name=ast-ksh

- shell project shell script coding guidelines:
  http://hub.opensolaris.org/bin/view/Project+shell/shellstyle

-- 
      ,   _                                    _   ,
     { \/`o;====-    Olga Kryzhanovska   -====;o`\/ }
.----'-/`-/     olga.kryzhanovska at gmail.com   \-`\-'----.
 `'-..-| /     Solaris/BSD//C/C++ programmer   \ |-..-'`
      /\/\                                     /\/\
      `--`                                      `--`

Reply via email to