./shells/mksh, MirBSD Korn Shell

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 51nb1, Package name: mksh-51nb1, Maintainer: ahoka

mksh is the MirBSD enhanced version of the Public Domain Korn shell (pdksh),
a Bourne-compatible shell which is largely si. milar to the original AT&T
Korn shell; mksh is the only pdksh derivate currently being actively developed.
It includes bug fixes and feature improvements, in order to produce a modern,
robust shell good for interactive and especially script use.

The code has throughoutly been cleaned up and simplified, bugs fixed, standards
compliance added, and several enhancements (for extended compatibility to other
modern shells, as well as a couple of its own) have been placed. mksh has UTF-8
support (e.g. in the emacs editing mode).

Required to build:

Master sites:

SHA1: c488fa2b74e282edf069f4eff4878ce857c5d688
RMD160: 11ad9db9b2f528b8bfd9c4600e68bd016064c9df
Filesize: 373.212 KB

Version history: (Expand)

CVS history: (Expand)

   2017-01-19 19:52:30 by Alistair G. Crooks | Files touched by this commit (352)
Log message:
Convert all occurrences (353 by my count) of

	MASTER_SITES= 	site1 \

style continuation lines to be simple repeated


lines. As previewed on tech-pkg. With thanks to rillig for fixing pkglint
   2016-07-09 08:39:18 by Thomas Klausner | Files touched by this commit (1068) | Package updated
Log message:
Bump PKGREVISION for perl-5.24.0 for everything mentioning perl.
   2015-11-03 00:00:35 by Alistair G. Crooks | Files touched by this commit (25)
Log message:
Add SHA512 digests for distfiles for shells category

Existing SHA1 digests verified, all found to be the same on the
machine holding the existing distfiles (morden).  Existing SHA1
digests retained for now as an audit trail.
   2015-07-13 06:41:52 by Benny Siegert | Files touched by this commit (3) | Package updated
Log message:
Update mksh to R51. From Changelog:

[tg] OpenBSD sync: handle integer base out of band like ksh93 does
[tg] Protect standard code (predefined aliases, internal code, aliases and \ 
functions in dot.mkshrc) from being overridden by aliases and, in some cases, \ 
shell functions (i.e. permit overriding but ignore it)
[tg] Implement GNU bash's enable for dot.mkshrc using magic aliases to redirect \ 
the builtins to external utilities; this differs from GNU bash in that enable \ 
takes precedence over functions
[tg] Move unaliasing an identifier when defining a POSIX-style function with the \ 
same name into lksh, as compatibility kludge
[tg] Korn shell style functions now have locally scoped shell options
[tg, iSKUNK] Change some ASCII-isms to be EBCDIC-aware or pluggable
[tg, Ypnose] Mention lksh build instructions on manpage and website
[tg] Overhaul signal handling; support new POSIX NSIG_MAX, add sysconf(_SC_NSIG) \ 
as a later TODO item
[tg] Fix signal bounds (1 <= signum < NSIG)
[tg] Improve manual pages, especially wrt. standards compliance
[tg, iSKUNK] Initial EBCDIC work for dot.mkshrc
[tg, iSKUNK] Add list of z/OS signals to Build.sh
[tg] Work around the sh(1) backslash-newline problem by moving the code \ 
triggering it out of *.opt and into the consumers
[colona] Bind another well-known ANSI Del key in the Emacs mode
[tg] Fix ${foo/*/x} pattern checks, spotted by izabera
[carstenh] Fix error output of cd function in dot.mkshrc
[tg] read partial returns in -N and timeout cases
[tg] Fix $LINENO inside PS1; spotted by carstenh
[tg] Ensure correct padding of at least 2 spaces in print_columns
[tg] Note issues with nested complex parameter expansions and follow-up bugfixes \ 
to expect
[OpenBSD] Some language fixes in documentation; comments
[tg] Reimplement multi-line command history (Debian #783978) + fixes
[Martijn Dekker] Fix command -v for "shell reserved words"
[tg] In dot.mkshrc make use of latest feature: local options
[tg] Fix ""$@ to emit a word
[tg] Change cat(1) hack to look first and not ignore builtin
[KO Myung-Hun] Begin porting mksh to OS/2
[komh, tg] Some generic minor bugfixes from OS/2 porting
[tg] Document mknod(8) isn’t normally part of mksh(1)
[tg] Quote arguments to : in build/test scripts as well
[tg] Add cat(1) hack for printf(1)-as-builtin: always prefer external
[tg] Explicitly use binary mode for any and all file I/O in stock mksh
[Ilya Zakharevich] Use termio, not termios(4), on OS/2
[tg] Set edchars to sane BSD defaults if any are NUL
[tg] Implement support for PC scancodes in Vi and Emacs editing mode
[komh] OS/2 uses ; as PATH separator plus support drive letters
   2015-04-30 15:32:59 by Wen Heping | Files touched by this commit (3) | Package updated
Log message:
Update to R50f

Upstream changes:
R50f is a required security and bugfix release:

[tg] Add a patch marker for vendor patch versioning to mksh.1
[tg] SECURITY: make unset HISTFILE actually work
[tg] Document some more issues with the current history code
[tg] Remove some unused code
[tg] RCSID-only sync with OpenBSD, for bogus and irrelevant changes
[tg] Also disable field splitting for alias 'local=\typeset'
[tg] Fix read -n-1 to not be identical to read -N-1
[tg] Several fixes and improvements to lksh(1) and mksh(1) manpages
[tg] More code (int  size_t), comment and testsuite fixes
[tg] Make dot.mkshrc more robust (LP#1441853)
[tg] Fix issues with IFS='\' read, found by edualbus
[enh, tg] Fix integer overflows related to file descriptor parsing, found by \ 
Pawel Wylecial (LP#1440685); reduce memory usage for I/O redirs
[tg] Document in the manpage how to set ±U according to the current locale \ 
settings via LANG/LC_* parameters (cf. Debian #782225)
[igli, tg] Some code cleanup and restructuring
[tg, oksh] Handle number parsing and storing more carefully

R50e is a required bugfix release:
[tg] Add more tests detailing behaviour difference from GNU bash
[tg] Introduce a memory leak for x=<< fixing use of freed memory instead, \ 
bug tracked as LP#1380389 still live
[tg] Add x+=<< parallel to x=<<
[tg, ormaaj, jilles] POSIX "command" loses builtin special-ness
[tg] Fix LP#1381965 and LP#1381993 (more field splitting)
[jilles] Update location of FreeBSD testsuite for test(1)
[Martin Natano] Remove dead NULL elements from Emacs keybindings
[tg, Stéphane Chazelas, Geoff Clare] Change several testcases for $*/$@ \ 
expansion with/without quotes to expected-fail, with even more to come ☹
[tg] Fix miscalculating required memory for encoding the double-quoted parts of \ 
a here document or here string delimiter, leading to a buffer overflow; \ 
discovered by zacts from IRC
[RT] Rename a function conflicting with a MacRelix system header
[tg] Use size_t (and ssize_t) consistently, stop using ptrdiff_t; fixes some \ 
arithmetics and S/390 bugs
[tg] Remove old workarounds for Clang 3.2 scan-build
[tg] Remove all Clang/Coverity assertions, making room for new checks
[tg] Fix NSIG generation on Debian sid gcc-snapshot
[tg] Make a testcase not fail in a corner case
[tg] Fix issues detected by GCC’s new sanitisers: data type of a value to be \ 
shifted constantly must be unsigned (what not, in C…); shebang check array \ 
accesses are always unsigned char
[tg] Be even more explicit wrt. POSIX in the manpage
[tg] Fix shebang / file magic decoding
[tg] More int → bool conversion
[tg] Let Build.sh be run by GNU bash 1.12.1 (Slackware 1.01)
[Stéphane Chazelas, tg] Fix here string parsing issue
[tg] Point out more future changes in the manpage
[tg] Call setgid(2), setegid(2), setuid(2) before seteuid(2)
[tg] Fix spurious empty line after ENOENT “whence -v”, found by Ypnose
[tg] Optimise dot.mkshrc and modernise it a bit
[tg] Use MAXPATHLEN from <sys/param.h> for PATH_MAX fallback
[tg] Some code cleanup and warnings fixes
[tg] Add options -a argv0 and -c to exec
[jsg] Prevent use-after-free when hitting multiple errors unwinding
[tg] Fix use of $* and $@ in scalar context: within [[ … ]] and after case \ 
(spotted by Stéphane Chazelas) and in here documents (spotted by tg@); fix here \ 
document expansion
[tg] Unbreak when $@ shares double quotes with others
[tg] Fix set -x in PS4 expansion infinite loop
   2014-11-27 14:38:15 by Joerg Sonnenberger | Files touched by this commit (5)
Log message:
Correctly sanitize environment.
   2014-10-09 16:07:17 by Thomas Klausner | Files touched by this commit (1163)
Log message:
Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles.
   2014-10-07 20:51:02 by Benny Siegert | Files touched by this commit (3) | Package updated
Log message:
Security: Update mksh to 50d.

R50d is a required bugfix release:

- [Goodbox] Fix NULL pointer dereference on “unset x; nameref x”
- [tg] Fix severe regression in field splitting (LP#1378208)
- [tg] Add a warning about not using tainted user input (including from
  the environ(7)ment) in arithmetics, until Stéphane writes it up nicely

R50c is a security fix release:

- [tg] Know more rare signals when generating sys_signame[] replacement
- [tg] OpenBSD sync (mostly RCSID only)
- [tg] Document HISTSIZE limit; found by luigi_345 on IRC
- [zacts] Fix link to Debian .mkshrc
- [tg] Cease exporting $RANDOM (Debian #760857)
- [tg] Fix C99 compatibility
- [tg] Work around klibc bug causing a coredump (Debian #763842)
- [tg] Use issetugid(2) as additional check if we are FPRIVILEGED
- [tg] SECURITY: do not permit += from environment
- [tg] Fix more field splitting bugs reported by Stephane Chazelas and
  mikeserv; document current status wrt. ambiguous ones as testcases too