Roland,
    re: CR 6486407/Indiana  - you still have to put copies of the ksh
shared libraries into the root file system.

On Jan 12, 2008 5:56 AM, Roland Mainz <roland.mainz at nrubsig.org> wrote:
> Roland Mainz wrote:
> > Below I've attached the draft of upcoming "ksh93-amendments2" ARC case
> > (attachment "onepager_20071222.txt" contains the onepager and
> > "manpage_diff_20071222.txt" are the manual page diffs). Assuming nothing
> > goes wrong we'll try to submit the case in Jan 2008...
> >
> > Comments/rants/questions etc. welcome...
> >
> >   ------------------------------------------------------------------------
> > I'm sponsoring this fast-track request on behalf of XXX.
> > Please note that this is an *open* case.
> >
> > The release binding is the same as with the previous ksh93 project: a
> > patch/micro release of Solaris delivering through OS/Net
> > Stability levels are as described below.
> >
> > Additional materials (man pages and diffs) can be found in the
> > 'materials' subdirectory.
> >
> > This project is an amendment to the Korn Shell 93 Integration project
> > (PSARC/2006/550 and PSARC/2007/035) specifying the following additional
> > interfaces:
> > 1) Update of ksh93 from upstream release ast-ksh.2007-04-18 to
> >   ast-ksh-2007-12-01
> > 1.1) Update ksh93
> > 1.2) Update the /usr/bin/bg, /usr/bin/cd,
> >   /usr/bin/command, /usr/bin/fc, /usr/bin/fg, /usr/bin/getopts,
> >   /usr/bin/hash, /usr/bin/jobs, /usr/bin/kill,
> >   /usr/bin/read, /usr/bin/test, /usr/bin/type,
> >   /usr/bin/ulimit, /usr/bin/umask, /usr/bin/unalias,
> >   /usr/bin/wait from ksh88 to ksh93
> > 1.3) New ksh93 math functions based on C99
> > 1.4) Enable built-ins "sync", "mkfifo", "tty" and "logname" by default
> > 1.5) New directories in /usr/demo/ksh/
> > 1.6) New messaging catalog files for ksh libraries
> > 1.7) Enable "multiline" input mode by default for interactive shells
> > 1.9) Enable default prompt (PS1) for interactive shells
> > 2) Enhancement of /usr/bin/printf
> > 3) Enhancement of /usr/bin/sleep
> > 4) The addition of /usr/bin/rev
> > 5) An enhanced version of the "sum" utility and an identical ksh93
> >   built-in command and related library libsum.so.1
> > 6) Add AT&T "shcomp" (shell script compiler) and "shbinexec"
> >   kernel module
> > 6.1) Addition of AT&T "shcomp" (shell script compiler)
> > 6.2) Addition of kernel module to recognize "shbin" executables
> >
> > Bug/RFE Number(s):
> >
> > 6619428  RFE: Update ksh93 in Solaris to ast-ksh.2007-10-15 (or higher)
> > 6561901  RFE: Add "shcomp" (shell script compiler) + kernel module
> >          to exec binary sh code
> > 6595183  RFE: Update ksh93-integration demo code
> > 6451262  RFE: /usr/bin/sleep should support floating-point values
> > 6207901  ksh and test ignore sub-second timestamp portion
> > 6599668  RFE: Move consumers of alias.sh over to ksh93
> > 6631969  /usr/bin/printf does not recognize positional arguments like %n$
> >
> > Interface                    Stability        Description
> > ---------                    ---------        -----------
> > /usr/bin/bg                  Commited         bg command
> > /usr/bin/cd                  Commited         cd command
> > /usr/bin/command             Commited         command command
> > /usr/bin/fc                  Commited         fc command
> > /usr/bin/fg                  Commited         fg command
> > /usr/bin/getopts             Commited         getopts command
> > /usr/bin/hash                Commited         hash command
> > /usr/bin/jobs                Commited         jobs command
> > /usr/bin/kill                Commited         kill command
> > /usr/bin/printf              Commited         printf command
> > /usr/bin/read                Commited         read command
> > /usr/bin/rev                 Commited         rev command
> > /usr/bin/sleep               Commited         sleep command
> > /usr/bin/shcomp              Commited         AT&T ksh shell script compiler
> > /usr/bin/sum                 Commited         sum command
> > /usr/bin/test                Commited         test command
> > /usr/bin/type                Commited         type command
> > /usr/bin/ulimit              Commited         ulimit command
> > /usr/bin/umask               Commited         umask command
> > /usr/bin/unalias             Commited         unalias command
> > /usr/bin/wait                Commited         wait command
> > /usr/demo/ksh/apps/          Uncommited       demo directory
> > /usr/demo/ksh/doc/           Uncommited       demo directory
> > /usr/demo/ksh/dtrace/        Uncommited       demo directory
> > /usr/demo/ksh/functions/     Uncommited       demo directory
> > /usr/demo/ksh/misc/          Uncommited       demo directory
> > /usr/demo/ksh/shdbx/         Uncommited       demo directory
> > /usr/lib/libsum.so.1         Project Private  AT&T hash generation library
> > /usr/lib/amd64/libsum.so.1   Project Private  AT&T hash generation library
> > /usr/lib/sparcv9/libsum.so.1 Project Private  AT&T hash generation library
> > <shbinexec binary format>    Commited Private binary shell script file 
> > format
> > <shcomp -D output>           Volatile         output for l10n catalog 
> > generation
> > <new C99 math functions>     Commited         C99 math functions
> >
> > ### Part 1: Update of ksh93 from upstream release ast-ksh.2007-04-18 to
> > ast-ksh.2007-12-01
> >
> > ## Part 1.1: Update of ksh93
> > The 1.1 portion of this project is the update of ksh93 from
> > ast-ksh.2007-04-18 to ast-ksh-2007-12-15 which marks the update from
> > ksh93 version 's-' to version 's+'.
> >
> > ## Part 1.2: Update the /usr/bin/bg, /usr/bin/cd,
> >   /usr/bin/command, /usr/bin/fc, /usr/bin/fg, /usr/bin/getopts
> >   /usr/bin/hash, /usr/bin/jobs, /usr/bin/kill
> >   /usr/bin/read, /usr/bin/test, /usr/bin/type
> >   /usr/bin/ulimit, /usr/bin/umask, /usr/bin/unalias
> >   /usr/bin/wait from ksh88 to ksh93
> > The 1.2 portion of this project switches the built-in command
> > wrappers (the commands are plain shell script wrappers which invoke
> > the built-in command of the same name)
> > /usr/bin/bg, /usr/bin/cd is the update of /usr/bin/command,
> > /usr/bin/fc, /usr/bin/fg, /usr/bin/getopts, /usr/bin/hash,
> > /usr/bin/jobs, /usr/bin/kill, /usr/bin/read, /usr/bin/test,
> > /usr/bin/type,  /usr/bin/ulimit, /usr/bin/umask, /usr/bin/unalias and
> > /usr/bin/wait from /usr/bin/ksh to /usr/bin/ksh93
> >
> > Notes:
> > - /usr/bin/test now support high-resolution timestamps of up
> >   to nanosecond  granularity, for filesystems which support them. Any
> >   scripts which rely on a behavior like that creating two files in
> >   sequential order within less than a second will result in identical
> >   timestamps for both files is considered as a bug in the script.
> > - /usr/bin/test now supports 64bit integers, floating point values
> >   and floating point constants (like {+Inf, -Inf, +NaN, -NaN}) (in all
> >   representations required by C99/XPG6/SUS) for numeric comparisations.
> > - The output of "/usr/bin/ulimit -a" has changed in incompatible ways,
> >   e.g. previously a two-column output was used while now a three-column
> >   is printed.
> >   However the output of "/usr/bin/ulimit -a" is considered as "not an
> >   interface", e.g. it is only thought for informative purposes and not
> >   a scripting interface (this interpretation is supported by trhe detail
> >   that the output doesn't use things like TAB for formatting, that
> >   almost every shell defines it's own "ulimit -a" output format,
> >   that even adding new options would break the output anyway and that
> >   the ulimit(1) manual page only lists the "-f" option as supported by
> >   /usr/bin/ulimit (i.e. the option "-a" was undocumented for
> >   /usr/bin/ulimit (which contradicts "Example 1" in the manual page
> >   which shows the output of "ulimit -a"))).
> >   The output of other /usr/bin/ulimit options is not affected and remains
> >   compatible.
> > - These special built-ins are available as standalone files because
> >   the POSIX people did make a decision long ago that all
> >   "special shell"-builtins defined in the standard must be "exec"-able -
> >   sounds weired but there are some border-cases where this is useful (for
> >   example you can bind such a built-in to a path like /usr/bin/cd which
> >   would execute the "cd" command only if the PATH lookup hits /usr/bin/).
> > - /usr/bin/kill now handles the number of realtime signals at runtime
> >   based on the "getconf" value of |_POSIX_RTSIG_MAX|&co. - the old
> >   version of /usr/bin/kill used a hardcoded number of realtime signals
> >   defined at compile time (the current number of realtime signals
> >   supported in /usr/bin/kill will not change between the old and new
> >   version - the change will occur when the number of realtime signals
> >   supported by the kernel will be changed).
> > - The output of "/usr/bin/kill -l" now uses a newline as delimiter for
> >   signal names while the old version used a space. This is not
> >   considered an interface change since both the Solaris manual page
> >   and the standards explicitly allow either newline or space as
> >   delimiter.
> >
> > ## Part 1.3: New ksh93 math functions based on C99
> > The 1.3 portion of this project is the addition of new functions which
> > can be used within arithmetic expressions like (( expressions ))
> > These functions work identically to those defined for the "C" language
> > in the C99 standard (the ksh93 originally supported only "abs", "acos",
> > "asin", "atan", "cos", "cosh", "exp", "int", "log", "sin", "sinh",
> > "sqrt", "tan" and "tanh" as described in ksh93(1) - we extend this list
> > to those functions required by the C99 standard)
> > (note that this functionality is already present in the ksh93 version we
> > ship, e.g. we only increase the stablity level from "easter egg"
> > (="undocumented") to "commited"):
> >
> > Function name  | Prototype                            | see manual page
> > ---------------+--------------------------------------+-----------------
> >           acos |        float             acos(float) |       acos(3m)
> >          acosh |        float            acosh(float) |      acosh(3m)
> >           asin |        float             asin(float) |       asin(3m)
> >          asinh |        float            asinh(float) |      asinh(3m)
> >           atan |        float             atan(float) |       atan(3m)
> >          atan2 |        float     atan2(float, float) |      atan2(3m)
> >          atanh |        float            atanh(float) |      atanh(3m)
> >           cbrt |        float             cbrt(float) |       cbrt(3m)
> >       copysign |        float  copysign(float, float) |   copysign(3m)
> >            cos |        float              cos(float) |        cos(3m)
> >           cosh |        float             cosh(float) |       cosh(3m)
> >            erf |        float              erf(float) |        erf(3m)
> >           erfc |        float             erfc(float) |       erfc(3m)
> >            exp |        float              exp(float) |        exp(3m)
> >           exp2 |        float             exp2(float) |       exp2(3m)
> >          expm1 |        float            expm1(float) |      expm1(3m)
> >           fabs |        float             fabs(float) |       fabs(3m)
> >            abs |        float              abs(float) |        abs(3c)
> >           fdim |        float      fdim(float, float) |       fdim(3m)
> >         finite |        float           finite(float) |     finite(3c)
> >          floor |        float            floor(float) |      floor(3m)
> >            int |        float              int(float) |<no manual page>
> >            fma |        float fma(float, float, float)|        fma(3m)
> >           fmax |        float      fmax(float, float) |       fmax(3m)
> >           fmin |        float      fmin(float, float) |       fmin(3m)
> >           fmod |        float      fmod(float, float) |       fmod(3m)
> >     fpclassify |        integer     fpclassify(float) | fpclassify(3m)
> >          hypot |        float     hypot(float, float) |      hypot(3m)
> >          ilogb |        integer          ilogb(float) |      ilogb(3m)
> >       isfinite |        integer       isfinite(float) |   isfinite(3m)
> >      isgreater |       integer isgreater(float, float)|  isgreater(3m)
> > isgreaterequal |  integer isgreaterequal(float, float)| isgreaterequal(3m)
> >          isinf |        integer          isinf(float) |      isinf(3m)
> >         isless |        integer  isless(float, float) |     isless(3m)
> >    islessequal |    integer islessequal(float, float) | islessequal(3m)
> >  islessgreater | integer  islessgreater(float, float) | islessgreater(3m)
> >          isnan |     integer            isnan(float)  |      isnan(3m)
> >       isnormal |     integer         isnormal(float)  |   isnormal(3m)
> >    isunordered |     integer isunordered(float, float)| isunordered(3m)
> >         lgamma |        float           lgamma(float) |     lgamma(3m)
> >            log |        float              log(float) |        log(3m)
> >          log1p |        float            log1p(float) |      log1p(3m)
> >           log2 |        float             log2(float) |       log2(3m)
> >           logb |        float             logb(float) |       logb(3m)
> >      nearbyint |        float        nearbyint(float) |  nearbyint(3m)
> >      nextafter |        float nextafter(float, float) |  nextafter(3m)
> >     nexttoward |        float nexttoward(float, float)| nexttoward(3m)
> >            pow |        float pow(float, float)       |        pow(3m)
> >      remainder |        float remainder(float, float) |  remainder(3m)
> >           rint |        float             rint(float) |       rint(3m)
> >          round |        float            round(float) |      round(3m)
> >          scalb |        float     scalb(float, float) |      scalb(3m)
> >         scalbn |        float    scalbn(float, float) |     scalbn(3m)
> >        signbit |        integer        signbit(float) |    signbit(3m)
> >            sin |        float              sin(float) |        sin(3m)
> >           sinh |        float             sinh(float) |       sinh(3m)
> >           sqrt |        float             sqrt(float) |       sqrt(3m)
> >            tan |        float              tan(float) |        tan(3m)
> >           tanh |        float             tanh(float) |       tanh(3m)
> >         tgamma |        float           tgamma(float) |     tgamma(3m)
> >          trunc |        float            trunc(float) |      trunc(3m)
> > (note: the datatypes "integer" and "float" refer to the "integer" and
> > "float" datatypes in ksh93 scripts, not those in the "C" language)
> >
> > ## Part 1.4: Enable built-ins "sync", "mkfifo", "tty" and "logname" by 
> > default
> > The 1.4 portion of this project specifies to enable a set of
> > already existing built-ins by default: The "sync" built-in which
> > works exactly like /sbin/sync and is bound to /usr/bin/sync,
> > /usr/sbin/sync and /sbin/sync, a "mkfifo" built-in which is bound
> > to /usr/bin/mkfifo, a "tty" built-in which is bound to
> > /usr/bin/tty and a "logname" built-in which is bound to
> > /usr/bin/logname
> > The invocation behavior is like other built-in commands named in
> > PSARC/2006/550, e.g. the built-in "sync" in ksh93 will only be invoked
> > if called with no pathname prefix, and if a /usr/bin/sync,
> > /usr/sbin/sync or /sbin/sync executable is found first on the user's path
> > and the "mkfifo", "tty" and "logname" built-ins work the same way.
> >
> > ## Part 1.5: New directories in /usr/demo/ksh/
> > Part 1.5 adds new directories to the /usr/demo/ksh/ directory hierarchy,
> > namely:
> >      - /usr/demo/ksh/dtrace/
> >      - /usr/demo/ksh/apps/
> >      - /usr/demo/ksh/functions/
> >      - /usr/demo/ksh/doc/
> >      - /usr/demo/ksh/shdbx/
> >      - /usr/demo/ksh/misc/
> >
> > ## Part 1.6: New messaging catalog files for ksh libraries
> > Part 1.6 adds two new message catalogs:
> > usr/lib/locale/C/LC_MESSAGES/libpp
> > usr/lib/locale/C/LC_MESSAGES/libsum
> >
> > ## Part 1.7: Enable "multiline" input mode by default for interactive shells
> > The 1.7 portion of this project specifies to enable the "multiline"
> > input mode in "/etc/ksh.kshrc" (see PSARC/2006/587 for details about
> > "/etc/ksh.kshrc") to improve end-user usabilty. The "multiline" input
> > mode to edit lines longer than the terminal's width in multiple lines
> > (similar to the behaviour of bash version 3 and other libreadline-based
> > applications (the previous default was to edit longer lines in a
> > single, horizontally scrolling line).
> > The change will only be enabled together with the "gmacs" editor mode
> > (see PSARC/2006/587) for interactive shells which source
> > "/etc/ksh.kshrc" as part of the shell startup and when the terminal
> > is capable of supporting this mode. This setting can always be
> > overridden by per-user settings in ${HOME}/.kshrc
> >
> > ## Part 1.8: Enable default prompt (PS1) for interactive shells
> > The 1.8 portion of this project specifies to define a default prompt
> > (PS1) in "/etc/ksh.kshrc" for interactive ksh93 shell sessions to
> > improve end-user usabilty if the user did not specify a value for PS1
> > using the environment. The prompt should be set to a
> > value which displays the username, hostname and current working directory
> > (limited to 20 characters, if the CWD is longer than 20 characters
> > the shell will display an ellipsis ("...") for the charcters omitted at the
> > left side) and a "$ "-seperator for normal users and "# " with the login
> > name "root" (this follows the default of SuSE Linux, Ubuntu and aims at
> > improving the usalibity for novice unix users), e.g. setting the value of
> > PS1 will result in the following prompt (for user "gisburn" on machine
> > "jupiterb48" with CWD="/home/gisburn/solaris/"):
> > -- snip --
> > gisburn at jupiterb48:~/solaris$
> > -- snip --
> > Notes:
> > - /etc/ksh.kshrc will only set the prompt value if no value for PS1
> >   exists yet
> > - A user can override the value for PS1 in his/her own ${HOME}/.kshrc
> >   file (for interactive shells /etc/ksh.kshrc will be sourced first,
> >   followed by ${HOME}/.kshrc (see PSARC/2006/587))
> > - The change cannot be implemented in ksh93 itself because this would
> >   violate the standard.
> >
> > #### Part 2: Enhancement of /usr/bin/printf
> > The 2nd part of this project specifies an enhancement to
> > /usr/bin/printf and based on the AT&T AST "printf" command.
> > The AT&T version of the "printf" utility
> > provides better standards conformance including C99/XPG6-features,
> > extensions not present in the current Solaris "printf" and is completely
> > open-source.
> >
> > Notes:
> > - The integer limit for printf has been changed from 32bit to 64bit, e.g.
> >   the previous version of /usr/bin/printf would return an error for values
> >   larger than INT32_MAX or lower than INT32_MIN, for example
> >   $ /usr/bin/printf "%d\n" 2147483648 ; echo "exit code=$?"
> >   would result in the following error:
> >   -- snip --
> >   printf: 2147483648: Result too large
> >   147483647
> >   exit code=1
> >   -- snip --
> >   The new version now correctly prints:
> >   -- snip --
> >   2147483648
> >   exit code=0
> >   -- snip --
> > - The manual page now explicitly describes the "printf" behavior for
> >   unrecognized format specifiers (following '%') as "undefined".
> > - The manual page now explicitly describes the "printf" behavior for
> >   unrecognized escape sequences specifiers (the character following a
> >   backslash ('\')) as "undefined".
> > - The manual page now lists sign handling explicitly (e.g. support
> >   for negative NaN per IEEE 754&co.)
> > - The manual page originally said:
> >   -- snip --
> >   For compatibility with previous versions of SunOS 5.x, the $
> >   format specifier is supported for formats containing only %s
> >   specifiers.
> >   -- snip --
> >   ... however the matching support for this seems to be broken since
> >   several releases, we're therefore dropping this part and fully support
> >   "%n$"&co. for all formats for standards conformance.
> > - An addition to the ksh93 test suite will gurantee that
> >   /usr/bin/printf will work as defined in this ARC case.
> >
> > #### Part 3: Enhancement of /usr/bin/sleep
> > The 3rd part of this project specifies an enhancement to
> > /usr/bin/sleep and based on the AT&T AST "sleep" command.
> > The AT&T version of the "sleep" utility
> > provides support sub-second timeouts and C99/XPG6-based input
> > values (including special values such as "Inf"/"Infinite")
> >
> > #### Part 4: The addition of /usr/bin/rev
> > The 4th part of this project specifies a new utility called
> > "/usr/bin/rev" which is used to reverse the characters or lines
> > of one or more files.
> >
> > Like other built-in commands named in PSARC/2006/550, the "rev"
> > built-in in ksh93 will be bound to the /usr/bin/ pathname.  The built-in
> > "rev" in ksh93 will only be invoked if called with no pathname
> > prefix, and if a /bin/rev or /usr/bin/rev executable is found
> > first on the user's path.
> >
> > The stability of the "rev" command and built-in command-line interface
> > and the system variables documented in rev(1) is "Committed"; the
> > pathname binding of the ksh93 built-in to /bin is Volatile.
> >
> > #### Part 5: Enhancement of /usr/bin/sum
> > The 5th part of this project specifies an enhancement to
> > /usr/bin/sum and a new ksh93 built-in with the same name based on
> > the AT&T AST "sum" command. The AT&T version of the "sum" utility
> > provides extensions not present in the current Solaris "sum"
> > utility, which are useful for small applications to generate hash
> > sums (for example using the MD5 hash for MIME "Content-MD5:"-headers).
> >
> > Like other built-in commands named in PSARC/2006/550, the "sum"
> > built-in in ksh93 will be bound to the /usr/bin/ pathname.  The built-in
> > "sum" in ksh93 will only be invoked if called with no pathname
> > prefix, and if a /bin/sum or /usr/bin/sum executable is found
> > first on the user's path.
> >
> > The stability of the "sum" command and built-in command-line interface
> > and the system variables documented in sum(1) is "Committed"; the
> > pathname binding of the ksh93 built-in to /bin is Volatile.
> >
> > An addition to the ksh93 test suite will gurantee compatibilty between
> > previous versions of the /usr/bin/sum utillity and the new version.
> >
> > #### Part 6: Add AT&T "shcomp" (shell script compiler) and "shbinexec"
> >   kernel module
> > ## Part 6.1: Addition of AT&T "shcomp" (shell script compiler)
> > The 6.1 part of this project is the addition of AT&T's "shcomp"
> > utility as /usr/bin/shcomp which has multiple goals:
> > 1. serve as basis for a future "ksh88 to ksh93"-migration toolkit
> > 2. act as basis for a future "shell lint" tool to provide a way to test
> >    shell scripts like Sun Studio's "lint"
> > 3. extract localiseable strings from shell scripts (using option "-D")
> > 4. compile (ksh93) shell scripts into a compact, portable and
> > platform/ISA/endian-independent binary format which can be read by ksh93
> > (for example this would allow vendors to ship binary code if they
> > cannot release the code as source or "shrink" shell scripts to the
> > absolute minimum for environments like embedded systems or the
> > Solaris miniroot)
> >
> > The stability of the /usr/bin/shcomp command-line interface and the
> > system variables documented in shcomp(1) is "Committed"; the compiled
> > shell code format is "Committed Private" ("shcomp" being the only
> > generator of the format and /usr/bin/ksh93 the only consumer; both
> > share the same code via libshell) and the output of the "-D" option
> > is "Volatile".
> >
> > ## Part 6.2: Addition of kernel module to recognize "shbin" executables
> > Part 6.2 requests the addition of a kernel module to recognize
> > compiled ksh93 shell scripts and execute the ksh93 interpreter if
> > this format is recognized.
> >
> > The conditions to recognize compiled ksh93 shell scripts are:
> > (a) The file must have the "x" (=executable) flag set
> >     and
> > (b) The file content must match the signature (starting at byte 0)
> >   \013\023\010\000 (which are the ASCII charatcers { 'k', 's', 'h',
> >   '\0', ... } masked through a binary AND operation using the value
> >   37 as 2nd operand).
> >
> > Notes:
> > - The format includes a version specifer but the kernel
> >   module will leave all version/consistency/etc.-checkin to ksh93
> >   itself
> > - /etc/magic will be updated that /usr/bin/file and
> >   /usr/xpg4/bin/file will recognize compiled shell code.
> >
> >
> >
> >   ------------------------------------------------------------------------
> > # Manpage diff for cd
> > No differences encountered
> > # Manpage diff for jobs
> > No differences encountered
> > # Manpage diff for kill
> > --- kill.1.original.txt Tue Dec  4 16:53:05 2007
> > +++ kill.1.new.txt      Tue Dec  4 21:33:44 2007
> > @@ -283,12 +283,14 @@
> >
> >     ksh93
> >       ____________________________________________________________
> > -    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
> > -    |______________________________|______________________________|
> > -    | Availability                | SUNWcsu                     |
> > -    |______________________________|______________________________|
> > -    | Interface Stability         | Uncommitted                   |
> > -    |______________________________|______________________________|
> > +    |       ATTRIBUTE TYPE         |       ATTRIBUTE VALUE      |
> > +    |______________________________|____________________________|
> > +    | Availability                 | SUNWcsu                    |
> > +    |______________________________|____________________________|
> > +    | CSI                          | enabled                    |
> > +    |______________________________|____________________________|
> > +    | Interface Stability          | Uncommitted                |
> > +    |______________________________|____________________________|
> >
> >  SEE ALSO
> >       csh(1), jobs(1), ksh(1), ksh93(1), ps(1),  sh(1),  shell_builtins(1),
> > @@ -296,6 +298,10 @@
> >       butes(5), environ(5), standards(5)
> >
> >  NOTES
> > +  /usr/bin/kill
> > +     The number of realtime signals supported is defined by the
> > +     getconf value _POSIX_RTSIG_MAX.
> > +
> >    sh
> >       The Bourne shell, sh, has a built-in version of kill to pro-
> >       vide  the  functionality  of  the kill command for processes
> > # Manpage diff for logname
> > --- logname.1.original.txt      Fri Oct 19 08:24:45 2007
> > +++ logname.1.new.txt   Fri Oct 19 09:08:57 2007
> > @@ -9,9 +9,14 @@
> >       logname - return user's login name
> >
> >  SYNOPSIS
> > -     logname
> > +     /usr/bin/logname
> >
> > +     ksh93
> > +     logname
> > +
> >  DESCRIPTION
> > +     /usr/bin/logname
> > +
> >       The logname utility will write  the  user's  login  name  to
> >       standard  output. The login name is the string that would be
> >       returned by the getlogin(3C) function. Under the  conditions
> > @@ -19,6 +24,15 @@
> >       message to standard error and  exit  with  a  non-zero  exit
> >       status.
> >
> > +     ksh93
> > +     logname
> > +
> > +     logname writes the users's login name to standard output.
> > +     The login name is the string that is returned by the
> > +     getlogin(2) function. If getlogin(2) does not return
> > +     successfully, the corresponding to the real user id of the
> > +     calling process is used instead.
> > +
> >  ENVIRONMENT VARIABLES
> >       See environ(5) for descriptions of the following environment
> >       variables  that  affect  the  execution  of  logname:  LANG,
> > # Manpage diff for mkfifo
> > --- mkfifo.1.original.txt       Fri Oct 19 08:27:33 2007
> > +++ mkfifo.1.new.txt    Fri Oct 19 09:06:41 2007
> > @@ -11,7 +11,12 @@
> >  SYNOPSIS
> >       /usr/bin/mkfifo [-m mode] path...
> >
> > +     ksh93
> > +     mkfifo [ options ] file ...
> > +
> >  DESCRIPTION
> > +     /usr/bin/mkfifo
> > +
> >       The mkfifo utility creates the FIFO special files  named  by
> >       its  argument list. The arguments are taken sequentially, in
> >       the order specified; and each FIFO special  file  is  either
> > @@ -28,7 +33,13 @@
> >       a=rw,  modified  by the current value of the file mode crea-
> >       tion mask umask(1).
> >
> > +     ksh93
> > +
> > +     mkfifo creates one or more FIFO's. By default, the mode of
> > +     created FIFO is a=rw minus the bits set in the umask(1).
> > +
> >  OPTIONS
> > +     /usr/bin/ksh93
> >       The following option is supported:
> >
> >       -m mode  Sets the file permission bits of the  newly-created
> > @@ -38,6 +49,10 @@
> >                strings, the op characters + and - will  be  inter-
> >                preted relative to an assumed initial mode of a=rw.
> >
> > +     ksh93
> > +     -m, --mode=mode Set the mode of created FIFO to mode. mode
> > +              is symbolic or octal mode as in chmod(1). Relative
> > +              modes assume an initial mode of a=rw.
> >
> >
> >  OPERANDS
> > # Manpage diff for printf
> > --- printf.1.original.txt       Thu Nov 22 15:29:21 2007
> > +++ printf.1.new.txt    Mon Dec  3 17:46:47 2007
> > @@ -17,16 +17,11 @@
> >  DESCRIPTION
> >
> >    /usr/bin/printf
> > -     The /usr/bin/printf command writes formatted operands to the standard
> > -     output. The _a_r_g_u_m_e_n_t operands are formatted under control of
> > -     the _f_o_r_m_a_t operand.
> > -
> > -   ksh93
> >     printf writes each string operand to standard output using format to 
> > control
> >     the output format.
> >
> > -   The format operands supports the full range of ANSI C formatting 
> > specifiers
> > -   plus the following additional specifiers:
> > +   The format operands supports the full range of ANSI C/C99/XPG6 
> > formatting
> > +   specifiers plus the following additional specifiers:
> >       %b    Each character in the string operand is processed specially as
> >             follows:
> >               \a    Alert character.
> > @@ -69,7 +64,7 @@
> >     will continue to be processed.
> >
> >     In addition to the format specifier extensions, the following 
> > extensions of
> > -   ANSI-C are permitted in format specifiers:
> > +   ANSI C/C99/XPG6 are permitted in format specifiers:
> >       -     The escape sequences \E and \e expand to the escape character 
> > which
> >             is octal 033 in ASCII.
> >       -     The escape sequence \cx expands to Control-x.
> > @@ -96,8 +91,8 @@
> >     were supplied, numeric conversions will be treated as if 0 were 
> > supplied, and
> >     time conversions will be treated as if now were supplied.
> >
> > -   printf is equivalent to print -f which allows additional options to be
> > -   specified.
> > +   /usr/bin/printf is equivalent to ksh93's "printf" built-in and print -f 
> > which
> > +   allows additional options to be specified.
> >
> >  OPERANDS
> >       The following operands are supported for /usr/bin/printf:
> > @@ -258,17 +253,12 @@
> >       Notice that this printf utility, like the  printf(3C)  func-
> >       tion  on  which  it is based, makes no special provision for
> >       dealing with multi-byte characters when using the %c conver-
> > -     sion  specification or when a precision is specified in a %b
> > -     or  %s  conversion  specification.  Applications  should  be
> > -     extremely cautious using either of these features when there
> > +     sion  specification. Applications should  be extremely
> > +     cautious using either of these features when there
> >       are multi-byte characters in the character set.
> >
> >       Field widths and precisions cannot be specified as *.
> >
> > -     For compatibility with previous versions of SunOS 5._x, the $
> > -     format specifier is supported for formats containing _o_n_l_y %s
> > -     specifiers.
> > -
> >       The %b conversion specification is not part  of  the  ISO  C
> >       standard;  it  has been added here as a portable way to pro-
> >       cess backslash escapes expanded in string operands  as  pro-
> > @@ -430,6 +420,106 @@
> >       writes  the  value  accumulated  at  the  time the error was
> >       detected to standard output.
> >
> > +
> > +     Example 6: Alternative floating point representation 1:
> > +     The printf utility supports an alternative floating point 
> > representation
> > +     (see printf(3c) manual page's entry for the "%a"/"%A") which allows
> > +     the output of floating-point values in a format which avoids the the
> > +     usual base16 to base10 rounding errors.
> > +
> > +     example% printf "%a\n" 2 3.1 NaN
> > +
> > +     produces:
> > +
> > +     0x1.0000000000000000000000000000p+01
> > +     0x1.8ccccccccccccccccccccccccccdp+01
> > +     nan
> > +
> > +
> > +     Example 7: Alternative floating point representation 2:
> > +     The following example shows two different representations of the
> > +     same floating-point value:
> > +
> > +     example% x=2 ; printf "%f == %a\n" x x
> > +
> > +     produces:
> > +
> > +     2.000000 == 0x1.0000000000000000000000000000p+01
> > +
> > +
> > +     Example 8: Output of unicode values
> > +     The following command will print the EURO unicode symbol (code-point 
> > 0x20ac)
> > +     example% LC_ALL=en_US.UTF-8 printf "\u[20ac]\n"
> > +
> > +     produces:
> > +
> > +     <euro>
> > +     (where "<euro>" represents the EURO currency symbol character)
> > +
> > +
> > +     Example 9: Convert unicode character to unicode code-point value:
> > +     The following command will print the hexadecimal value of a given
> > +     character.
> > +
> > +     example% export LC_ALL=en_US.UTF-8
> > +     example% printf "%x\n" "'<euro>"
> > +     (where "<euro>" represents the EURO currency symbol character
> > +     (code-point 0x20ac))
> > +
> > +     produces:
> > +
> > +     20ac
> > +
> > +
> > +     Example 10: Print the numeric value of an ASCII character:
> > +     printf "%d\n" "'A"
> > +
> > +     produces:
> > +
> > +     65
> > +
> > +
> > +     Example 11: To print the language-independent date  and  time
> > +     format, the following statement could be used:
> > +
> > +     printf "format" weekday month day hour min
> > +     (e.g. $ printf format "Sunday" "July" 3 10 2
> > +
> > +     For American usage, format could be the string:
> > +
> > +     "%s, %s %d, %d:%.2d\n"
> > +
> > +     producing the message:
> > +
> > +     Sunday, July 3, 10:02
> > +
> > +     whereas for EU usage, format could be the string:
> > +
> > +     "%1$s, %3$d. %2$s, %4$d:%5$.2d\n"
> > +     (note that the '$' charatcers must be propperly escaped, e.g.
> > +     "%1\$s, %3\$d. %2\$s, %4\$d:%5\$.2d\n" in this case)
> > +
> > +     producing the message:
> > +
> > +     Sunnday, 3. July, 10:02
> > +
> > +
> > +NOTES
> > +     Using format specifiers (characters following '%') which are not 
> > listed
> > +     in the printf(3c) or this manual page will result in undefined 
> > behaviour.
> > +
> > +     Using escape sequences (the character following a backslash ('\')) 
> > which
> > +     are not listed in the printf(3c) or this manual page will result in
> > +     undefined behaviour.
> > +
> > +     Floating-point values follow C99, XPG6 and IEEE 754 standard behaviour
> > +     and and can handle values the same way as the platform's |long double|
> > +     datatype.
> > +
> > +     Floating-point values handle the sign seperately which allows signs
> > +     for values like NaN (i.e. -nan), Infinite (i.e. -inf) and zero
> > +     (i.e. -0.0).
> > +
> >  ENVIRONMENT VARIABLES
> >       See environ(5) for descriptions of the following environment
> >       variables that affect the execution of printf: LANG, LC_ALL,
> > # Manpage diff for read
> > No differences encountered
> > # Manpage diff for rev
> > --- /dev/null   Wed Dec 12 19:07:34 2007
> > +++ rev.1.new.txt       Fri Nov 30 00:45:55 2007
> > @@ -1,0 +1,42 @@
> > +NAME
> > +  rev - reverse the characters or lines of one or more files
> > +
> > +SYNOPSIS
> > +  /usr/bin/rev [-l] [file ...]
> > +
> > +  ksh93
> > +  rev [-l] [file ...]
> > +
> > +DESCRIPTION
> > +  rev copies one or more files to standard output reversing the
> > +  order of characters on every line of the file or reversing
> > +  the order of lines of the file if -l is specified.
> > +
> > +  If no file is given, or if the file is -, rev copies from
> > +  standard input starting at the current offset.
> > +
> > +OPTIONS
> > +  -l, --line      Reverse the lines of the file.
> > +
> > +EXIT STATUS
> > +    0     All files copied successfully.
> > +    >0    One or more files did not copy.
> > +
> > +ATTRIBUTES
> > +     See attributes(5) for descriptions of the  following  attri-
> > +     butes:
> > +
> > +  /usr/bin/rev
> > +     ____________________________________________________________
> > +    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
> > +    |_____________________________|_____________________________|
> > +    | Availability                | SUNWcsu                     |
> > +    |_____________________________|_____________________________|
> > +    | CSI                         | Enabled                     |
> > +    |_____________________________|_____________________________|
> > +    | Interface Stability         | Commited                    |
> > +    |_____________________________|_____________________________|
> > +
> > +
> > +SEE ALSO
> > +  cat(1), tail(1)
> > # Manpage diff for shcomp
> > --- /dev/null   Wed Dec 12 19:07:34 2007
> > +++ shcomp.1.new.txt    Fri Nov 30 00:43:23 2007
> > @@ -1,0 +1,66 @@
> > +NAME
> > +  shcomp - compile a ksh93 shell script
> > +
> > +SYNOPSIS
> > +  shcomp [-nv] [infile [outfile]]
> > +
> > +  shcomp -D [infile [outfile]]
> > +
> > +DESCRIPTION
> > +  Unless -D is specified, shcomp takes a shell script, infile,
> > +  and creates a binary format file, outfile, that ksh93 can read
> > +  and execute with the same effect as the original script.
> > +
> > +  Since aliases are processed as the script is read, alias
> > +  definitions whose value requires variable expansion will not
> > +  work correctly.
> > +
> > +  If -D is specifed, all double quoted strings that are preceded
> > +  by $ are printed, one literal per line, e.g. a literal $"foo"
> > +  will be printed as "foo" in the output
> > +  These are the messages that need to be translated to locale
> > +  specific versions for internationalization.
> > +
> > +  If outfile is omitted, both modes will write their results
> > +  to standard output. If infile is also omitted, the
> > +  shell script will be read from standard input.
> > +
> > +OPTIONS
> > +  -D, --dictionary
> > +                  Generate a list of strings that need to be
> > +                  placed in a message catalog for
> > +                  internationalization.
> > +  -n, --noexec    Displays warning messages for obsolete or
> > +                  non-conforming constructs.
> > +  -v, --verbose   Displays input from infile onto standard error
> > +                  as it reads it.
> > +
> > +EXIT STATUS
> > +    0     Successful completion.
> > +    >0    An error occurred.
> > +
> > +ATTRIBUTES
> > +     See attributes(5) for descriptions of the  following  attri-
> > +     butes:
> > +
> > +  /usr/bin/shcomp
> > +     ____________________________________________________________
> > +    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
> > +    |_____________________________|_____________________________|
> > +    | Availability                | SUNWcsu                     |
> > +    |_____________________________|_____________________________|
> > +    | CSI                         | Enabled                     |
> > +    |_____________________________|_____________________________|
> > +    | Interface Stability         | See below                   |
> > +    |_____________________________|_____________________________|
> > +
> > +
> > +    The stability of the /usr/bin/shcomp command-line interface
> > +    and thesystem variables documented in shcomp(1) is "Committed";
> > +    the compiled shell code format is "Committed Private" ("shcomp"
> > +    being the only generator of the format and /usr/bin/ksh93 the
> > +    only consumer; both share the same code via libshell) and
> > +    the output of the "-D" option is "Volatile".
> > +
> > +SEE ALSO
> > +  ksh93(1)
> > # Manpage diff for sleep
> > --- sleep.1.original.txt        Thu Nov 22 17:21:44 2007
> > +++ sleep.1.new.txt     Fri Nov 23 20:20:45 2007
> > @@ -9,7 +9,7 @@
> >       sleep - suspend execution for an interval
> >
> >  SYNOPSIS
> > -      /usr/bin/sleep _t_i_m_e
> > +      /usr/bin/sleep _seconds_
> >
> >        ksh93
> >        sleep _seconds_
> > @@ -16,11 +16,6 @@
> >
> >  DESCRIPTION
> >
> > -     /usr/bin/sleep
> > -     The sleep utility will suspend execution for  at  least  the
> > -     integral number of seconds specified by the _t_i_m_e operand.
> > -
> > -   ksh93
> >     sleep suspends execution for at least the time specified by seconds or 
> > until
> >     a SIGALRM signal is received. seconds can be specifed as a floating 
> > point
> >     number but the actual granularity depends on the underlying system, 
> > normally
> > @@ -28,10 +23,14 @@
> >
> >
> >  OPERANDS
> > -     The following operands are supported for /usr/bin/sleep:
> > +     The following operands are supported for /usr/bin/sleep and ksh93's
> > +     "sleep" built-in command:
> >
> > -     _t_i_m_e     A  non-negative  decimal  integer  specifying   the
> > +     _t_i_m_e     A  non-negative floating-point number  specifying   the
> >                number of seconds for which to suspend execution.
> > +              The floating-point number may be specified in all formats
> > +              required by C99/XPG6, including constants such as "Inf" or
> > +              "infinite".
> >
> >
> >
> > @@ -50,6 +49,20 @@
> >               sleep 37
> >       done
> >
> > +     Example 2: Suspending command execution forever (or until a SIGALRM
> > +     signal is received):
> > +
> > +     example% sleep Inf
> > +
> > +
> > +     Example 3: Suspending command execution for 0.5 seconds using
> > +     an alternative floating-point representation for the value "0.5":
> > +
> > +     example% printf "%a\n" 0.5
> > +     0x1.0000000000000000000000000000p-01
> > +
> > +     example% sleep 0x1.0000000000000000000000000000p-01
> > +
> >  ENVIRONMENT VARIABLES
> >       See environ(5) for descriptions of the following environment
> >       variables  that affect the execution of sleep: LANG, LC_ALL,
> > @@ -121,9 +134,10 @@
> >       The sleep utility will take  the  standard  action  for  all
> >       other signals.
> >
> > +     The behaviour for input values such as "NaN" (not-a-number) or 
> > negative
> > +     values is undefined.
> >
> >
> > -
> >
> >
> >
> > # Manpage diff for sum
> > --- sum.1.original.txt  Fri Oct 19 03:49:51 2007
> > +++ sum.1.new.txt       Fri Dec 14 18:55:36 2007
> > @@ -9,22 +9,229 @@
> >       sum - print checksum and block count for a file
> >
> >  SYNOPSIS
> > -     sum [-r] [file...]
> > +     /usr/bin/sum [-abBchHlLpPrRstTw] [-x method] [file...]
> >
> > +     ksh93
> > +     sum [-abBchHlLpPrRstTw] [-x method] [file...]
> > +
> >  DESCRIPTION
> > -     The  sum utility calculates and prints a 16-bit checksum for
> > -     the  named  file  and  the  number of 512-byte blocks in the
> > -     file. It is typically used to look  for  bad  spots,  or  to
> > -     validate a file communicated over some transmission line.
> > +     /usr/bin/sum
> > +     ksh93 "sum"
> > +     The sum command and ksh93 built-in command "sum" lists the
> > +     checksum, and for most methods the block count, for each file
> > +     argument. The standard input is read if there are no file
> > +     arguments.
> > +     getconf UNIVERSE determines the default
> > +     sum method: att for the att universe, bsd otherwise. The
> > +     default for the other commands is the command name itself. The
> > +     att method is a true sum, all others are order dependent.
> >
> > -OPTIONS
> > -     The following options are supported:
> > +     Method names consist of a leading identifier and 0 or more
> > +     options separated by -.
> >
> > -     -r       Use an alternate (machine-dependent)  algorithm  in
> > -              computing the checksum.
> > +     getconf PATH_RESOLVE determines how symbolic links are
> > +     handled. This can be explicitly overridden by the --logical,
> > +     --metaphysical, and --physical options below. PATH_RESOLVE can
> > +     be one of:
> > +       logical
> > +             Follow all symbolic links.
> > +       metaphysical
> > +             Follow command argument symbolic links, otherwise
> > +             don't follow.
> > +       physical
> > +             Don't follow symbolic links.
> >
> > +OPTIONS
> > +     The following options are supported by /usr/bin/sum
> > +  -a, --all       List the checksum for all files. Use with
> > +                  --total to list both individual and total
> > +                  checksums and block counts.
> > +  -b, --binary    Read files in binary mode. This is the
> > +                  default.
> > +  -B, --scale=scale
> > +                  Block count scale (bytes per block) override
> > +                  for methods that include size in the output.
> > +                  The default is method specific.
> > +  -c, --check     Each file is interpreted as the output from a
> > +                  previous sum. If --header or --permissions was
> > +                  specified in the previous sum then the
> > +                  checksum method is automatically determined,
> > +                  otherwise --method must be specified. The
> > +                  listed checksum is compared with the current
> > +                  value and a warning is issued for each file
> > +                  that does not match. If file was generated by
> > +                  --permissions then the file mode, user and
> > +                  group are also checked. Empty lines, lines
> > +                  starting with #<space>, or the line # are
> > +                  ignored. Lines containing no blanks are
> > +                  interpreted as [no]name[=value] options:
> > +                    method=name
> > +                          Checksum method to apply to subsequent
> > +                          lines.
> > +                    permissions
> > +                          Subsequent lines were generated with
> > +                          --permissions.
> > +  -h, --header    Print the checksum method as the first output
> > +                  line. Used with --check and --permissions.
> > +  -l, --list      Each file is interpreted as a list of files,
> > +                  one per line, that is checksummed.
> > +  -p, --permissions
> > +                  If --check is not specified then list the file
> > +                  mode, user and group between the checksum and
> > +                  path. User and group matching the caller are
> > +                  output as -. If --check is specified then the
> > +                  mode, user and group for each path in file are
> > +                  updated if necessary to match those in file. A
> > +                  warning is printed on the standard error for
> > +                  each changed file.
> > +  -R, --recursive Recursively checksum the contents of
> > +                  directories.
> > +  -t, --total     List only the total checksum and block count
> > +                  of all files. --all --total lists each
> > +                  checksum and the total. The total checksum and
> > +                  block count may be different from the checksum
> > +                  and block count of the catenation of all files
> > +                  due to partial blocks that may occur when the
> > +                  files are treated separately.
> > +  -T, --text      Read files in text mode (i.e., treat \r\n as
> > +                  \n).
> > +  -w, --warn      Warn about invalid --check lines. On by
> > +                  default; -w means --nowarn.
> > +  -x, --method|algorithm=method
> > +                  Specifies the checksum method to apply.
> > +                  Parenthesized method options are readonly
> > +                  implementation details.
> > +                    att|sys5|s5|default
> > +                          The system 5 release 4 checksum. This
> > +                          is the default for sum when getconf
> > +                          UNIVERSE is att. This is the only true
> > +                          sum; all of the other methods are
> > +                          order dependent.
> > +                    ast4|32x4|tw
> > +                          The ast 128 bit PRNG hash generated by
> > +                          catenating 4 separate 32 bit PNRG
> > +                          hashes. The block count is not
> > +                          printed.
> > +                    bsd|ucb
> > +                          The BSD checksum.
> > +                    crc   32 bit CRC (cyclic redundancy check).
> > +                            polynomial=mask
> > +                                  The 32 bit crc polynomial
> > +                                  bitmask with implicit bit 32.
> > +                                  The default value is
> > +                                  0xedb88320.
> > +                            done[=number]
> > +                                  XOR the final crc value with
> > +                                  number. 0xffffffff is used if
> > +                                  number is omitted. The option
> > +                                  value may be omitted. The
> > +                                  default value is 0.
> > +                            init[=number]
> > +                                  The initial crc value.
> > +                                  0xffffffff is used if number
> > +                                  is omitted. The option value
> > +                                  may be omitted. The default
> > +                                  value is 0.
> > +                            rotate
> > +                                  XOR each input character with
> > +                                  the high order crc byte
> > +                                  (instead of the low order).
> > +                            size[=number]
> > +                                  Include the total number of
> > +                                  bytes in the crc. number, if
> > +                                  specified, is first XOR'd into
> > +                                  the size. The option value may
> > +                                  be omitted. The default value
> > +                                  is 0.
> > +                    md5|MD5
> > +                          The RSA Data Security, Inc. MD5
> > +                          Message-Digest Method, 1991-2, used
> > +                          with permission. The block count is
> > +                          not printed.
> > +                            (version)
> > +                                  md5 (RSA Data Security, Inc.
> > +                                  MD5 Message-Digest, 1991-2)
> > +                                  1996-02-29
> > +                    prng  32 bit PRNG (pseudo random number
> > +                          generator) hash.
> > +                            mpy=number
> > +                                  The 32 bit PRNG multiplier.
> > +                                  The default value is
> > +                                  0x01000193.
> > +                            add=number
> > +                                  The 32 bit PRNG addend. The
> > +                                  default value is 0.
> > +                            init[=number]
> > +                                  The PRNG initial value.
> > +                                  0xffffffff is used if number
> > +                                  is omitted. The option value
> > +                                  may be omitted. The default
> > +                                  value is 0x811c9dc5.
> > +                    sha1|SHA1|sha-1|SHA-1
> > +                          FIPS 180-1 SHA-1 secure hash algorithm
> > +                          1.
> > +                            (version)
> > +                                  sha1 (FIPS 180-1) 1996-09-26
> > +                            (author)
> > +                                  Steve Reid <steve at edmweb.com>
> > +                    sha256|sha-256|SHA256|SHA-256
> > +                          FIPS SHA-256 secure hash algorithm.
> > +                            (version)
> > +                                  sha-256 (FIPS) 2000-01-01
> > +                            (author)
> > +                                  Aaron D. Gifford
> > +                    sha384|sha-384|SHA384|SHA-384
> > +                          FIPS SHA-384 secure hash algorithm.
> > +                            (version)
> > +                                  sha-384 (FIPS) 2000-01-01
> > +                            (author)
> > +                                  Aaron D. Gifford
> > +                    sha512|sha-512|SHA512|SHA-512
> > +                          FIPS SHA-512 secure hash algorithm.
> > +                            (version)
> > +                                  sha-512 (FIPS) 2000-01-01
> > +                            (author)
> > +                                  Aaron D. Gifford
> > +                    posix|cksum|std|standard
> > +                          The posix 1003.2-1992 32 bit crc
> > +                          checksum. This is the default cksum(1)
> > +                          method. Shorthand for
> > +                          crc-0x04c11db7-rotate-done-size.
> > +                    zip   The zip(1) crc. Shorthand for
> > +                          crc-0xedb88320-init-done.
> > +                    fddi  The FDDI crc. Shorthand for
> > +                          crc-0xedb88320-size=0xcc55cc55.
> > +                    fnv|fnv1
> > +                          The Fowler-Noll-Vo 32 bit PRNG hash
> > +                          with non-zero initializer (FNV-1).
> > +                          Shorthand for
> > +                          prng-0x01000193-init=0x811c9dc5.
> > +                    ast|strsum
> > +                          The ast strsum(3) PRNG hash. Shorthand
> > +                          for prng-0x63c63cd9-add=0x9c39c33d.
> > +  -L, --logical|follow
> > +                  Follow symbolic links when traversing
> > +                  directories. The default is determined by
> > +                  getconf PATH_RESOLVE.
> > +  -H, --metaphysical
> > +                  Follow command argument symbolic links,
> > +                  otherwise don't follow symbolic links when
> > +                  traversing directories. The default is
> > +                  determined by getconf PATH_RESOLVE.
> > +  -P, --physical  Don't follow symbolic links when traversing
> > +                  directories. The default is determined by
> > +                  getconf PATH_RESOLVE.
> > +  -r, --bsd       Equivalent to --method=bsd --scale=512 for
> > +                  compatibility with other sum(1)
> > +                  implementations.
> > +  -s, --sysv      Equivalent ti --method=sys5 for for
> > +                  compatibility with other sum(1)
> > +                  implementations.
> > +  -S, --silent|status
> > +                  No output for --check; 0 exit status means all
> > +                  sums matched, non-0 means at least one sum
> > +                  failed to match. Ignored for --permissions.
> >
> > -
> >  OPERANDS
> >       The following operands are supported:
> >
> > @@ -32,7 +239,6 @@
> >                standard input is used.
> >
> >
> > -
> >  USAGE
> >       See largefile(5) for the description of the behavior of  sum
> >       when encountering files greater than or equal to 2 Gbyte ( 2
> > @@ -73,14 +279,16 @@
> >
> >       ____________________________________________________________
> >      |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
> > +    |_____________________________|_____________________________|
> >      | Availability                | SUNWesu                     |
> > +    |_____________________________|_____________________________|
> >      | CSI                         | enabled                     |
> >      |_____________________________|_____________________________|
> >
> >
> >  SEE ALSO
> > -     cksum(1), sum(1B), wc(1), attributes(5), environ(5),  large-
> > -     file(5)
> > +     cksum(1), ksh93(1), sum(1B), wc(1), attributes(5), environ(5),
> > +     largefile(5)
> >
> >  DIAGNOSTICS
> >       "Read error" is indistinguishable from end of file  on  most
> > @@ -87,7 +295,9 @@
> >       devices; check the block count.
> >
> >  NOTES
> > -     Portable applications should use cksum(1).
> > +     Portable applications should use cksum(1), the default algorithm
> > +     for this command is defined in the POSIX standard and identical
> > +     across platforms.
> >
> >       sum and usr/ucb/sum (see sum(1B))  return  different  check-
> >       sums.
> > # Manpage diff for test
> > --- test.1.original.txt Thu Nov 22 15:28:36 2007
> > +++ test.1.new.txt      Fri Nov 23 20:19:14 2007
> > @@ -323,9 +323,11 @@
> >
> >
> >
> > -     _n_1 -eq _n_2               True if the integers _n_1 and  _n_2  are
> > +     _n_1 -eq _n_2               True if the numbers _n_1 and  _n_2  are
> >                               algebraically equal.
> > -                             (ksh93 also supports floating point numbers.)
> > +                             A "number" may be integer, floating point or 
> > floating-point
> > +                             constant (such as [+/-]Inf, [+/-]NaN) in any 
> > format specified
> > +                             by C99/XPG6/SUS.
> >
> >
> >
> > @@ -341,34 +343,43 @@
> >
> >
> >
> > -     _n_1 -ne _n_2               True if the integers _n_1 and  _n_2  are
> > +     _n_1 -ne _n_2               True if the numbers _n_1 and  _n_2  are
> >                               not algebraically equal.
> > -                             (ksh93 also supports floating point numbers.)
> > +                             A "number" may be integer, floating point or 
> > floating-point
> > +                             constant (such as [+/-]Inf, [+/-]NaN) in any 
> > format specified
> > +                             by C99/XPG6/SUS.
> >
> >
> > -     _n_1 -gt _n_2               True if the integer _n_1 is  algebrai-
> > -                             cally greater than the integer _n_2.
> > -                             (ksh93 also supports floating point numbers.)
> > +     _n_1 -gt _n_2               True if the number _n_1 is  algebrai-
> > +                             cally greater than the number _n_2.
> > +                             A "number" may be integer, floating point or 
> > floating-point
> > +                             constant (such as [+/-]Inf, [+/-]NaN) in any 
> > format specified
> > +                             by C99/XPG6/SUS.
> >
> >
> >
> > -     _n_1 -ge _n_2               True if the integer _n_1 is  algebrai-
> > +     _n_1 -ge _n_2               True if the number _n_1 is  algebrai-
> >                               cally  greater  than or equal to the
> > -                             integer _n_2.
> > -                             (ksh93 also supports floating point numbers.)
> > +                             number _n_2.
> > +                             A "number" may be integer, floating point or 
> > floating-point
> > +                             constant (such as [+/-]Inf, [+/-]NaN) in any 
> > format specified
> > +                             by C99/XPG6/SUS.
> >
> >
> > +     _n_1 -lt _n_2               True if the number _n_1 is  algebrai-
> > +                             cally less than the number _n_2.
> > +                             A "number" may be integer, floating point or 
> > floating-point
> > +                             constant (such as [+/-]Inf, [+/-]NaN) in any 
> > format specified
> > +                             by C99/XPG6/SUS.
> >
> > -     _n_1 -lt _n_2               True if the integer _n_1 is  algebrai-
> > -                             cally less than the integer _n_2.
> > -                             (ksh93 also supports floating point numbers.)
> >
> >
> > -
> > -     _n_1 -le _n_2               True if the integer _n_1 is  algebrai-
> > +     _n_1 -le _n_2               True if the number _n_1 is  algebrai-
> >                               cally  less  than  or  equal  to the
> > -                             integer _n_2.
> > -                             (ksh93 also supports floating point numbers.)
> > +                             number _n_2.
> > +                             A "number" may be integer, floating point or 
> > floating-point
> > +                             constant (such as [+/-]Inf, [+/-]NaN) in any 
> > format specified
> > +                             by C99/XPG6/SUS.
> >
> >
> >
> > @@ -714,8 +725,8 @@
> >        endif
> >
> >
> > -  ksh
> > -     Example 5: Using the ksh built-in
> > +  ksh/ksh93
> > +     Example 5: Using the ksh/ksh93 built-in
> >
> >       ZERO=0 ONE=1 TWO=$((ONE+ONE)) ROOT=root
> >       if  ((ONE > ZERO))            #  _a_r_i_t_h_m_e_t_i_c_a_l 
> > _c_o_m_p_a_r_i_s_o_n
> > @@ -822,13 +833,22 @@
> >       sition  aid for BSD applications and may not be supported in
> >       future releases.
> >
> > -     When comparing file timestamps, the ksh93 test built-in
> > -     handles high-resolution timestamps of up to nanosecond
> > -     granularity, for filesystems which support them.
> > +     When comparing file timestamps, the /usr/bin/test and the
> > +     ksh93 test built-in handle high-resolution timestamps of up
> > +     to nanosecond  granularity, for filesystems which support them.
> >
> > +     XPG4/sh, ksh, ksh93: Is is recommended to use arithmetric
> > +     expressions (e.g. $(( x > 3.1 )) # instead of
> > +     $ /usr/bin/test "$x" -gt 3.1 # ) when comparing two floating-point
> > +     variables or a constant and a floating-point variable to prevent
> > +     rounding errors (caused by the base16 to base10 transformation) to
> > +     affect the result. Additionally the built-in arithmetric support
> > +     in XPG4/sh, ksh and ksh93 is significantly faster because it
> > +     doesn't require the explicit transformation to strings for each
> > +     comparisation.
> > +
> >
> >
> > -
> >
> >
> >
> > # Manpage diff for tty
> > --- tty.1.original.txt  Fri Oct 19 08:25:13 2007
> > +++ tty.1.new.txt       Fri Nov 23 20:20:14 2007
> > @@ -9,15 +9,28 @@
> >       tty - return user's terminal name
> >
> >  SYNOPSIS
> > -     tty [-l] [-s]
> > +     /usr/bin/tty [-l] [-s]
> >
> > +     ksh93
> > +     tty [ options ]
> > +
> >  DESCRIPTION
> > +     /usr/bin/tty
> > +
> >       The tty utility writes to the standard output  the  name  of
> >       the  terminal  that is open as standard input. The name that
> >       is used is equivalent to the string that would  be  returned
> >       by the ttyname(3C) function.
> >
> > +     ksh93
> > +
> > +     The ksh93 tty built-in writes the name of the terminal that
> > +     is connected to standard input onto standard output. If the
> > +     standard input is not a terminal, "not a tty" will be written
> > +     to standard output.
> > +
> >  OPTIONS
> > +     /usr/bin/tty
> >       The following options are supported:
> >
> >       -l       Prints the synchronous line  number  to  which  the
> > @@ -29,8 +42,16 @@
> >       -s       Inhibits printing of the terminal path name, allow-
> >                ing one to test just the exit status.
> >
> > +     ksh93
> > +     -l, --line-number
> > +              Write the synchronous line number of the terminal
> > +              on a separate line following the terminal name line.
> > +              If the standard input is not a synchronous terminal
> > +              then "not on an active synchronous line" is written.
> > +     -s, --silent|quiet
> > +              Disable the terminal name line.
> > +              Portable applications should use [[ -t 0 ]] instead.
> >
> > -
> >  ENVIRONMENT VARIABLES
> >       See environ(5) for descriptions of the following environment
> >       variables  that  affect the execution of  tty: LANG, LC_ALL,
>
> Are there any commets/issues/etc. about this draft or can we move
> forward and submit it ?
>
> ----
>
> Bye,
> Roland
>
> --
>   __ .  . __
>  (o.\ \/ /.o) roland.mainz at nrubsig.org
>   \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
>   /O /==\ O\  TEL +49 641 7950090
>  (;O/ \/ \O;)
> _______________________________________________
> ksh93-integration-discuss mailing list
> ksh93-integration-discuss at opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/ksh93-integration-discuss
>



-- 
Knut

Reply via email to