Commit Graph

27 Commits

Author SHA1 Message Date
tg
7672b9b346 apply some fixes from OpenBSD and don't apply some others
but sync RCS IDs for easier future adaption:
* Simplify savefd() by removing the "noclose" flag and make noclose
  behavior the default. Almost all uses of savefd() are followed
  by an implicit or explicit close.
* fix typos
* might as well make ksh_getopt() match real getopt(), ie. get rid of that
  stupid EOF concept that was never true. adobriyan@gmail
* use SEEK_* for lseek()
* fix lint comments, no functional changes
* remove excessive optimization; from adobriyan@gmail
* only santa checks things twice; from adobriyan@gmail
* Interpret zero-filled numbers as decimal; PR 4213; from Alexey Dobriyan
2006-05-10 18:54:13 +00:00
tg
3f2912d717 * update to mksh R26c
* there is no comma in front of "which" in English, I was taught
2006-01-30 12:37:24 +00:00
tg
94ee3b388a sync with OpenBSD: remove unused code and vars; name clash with libc
compiles under MirBSD
2006-01-29 20:04:54 +00:00
tg
95cfad6339 * only have one $MirOS RCS ID per file to shrink source size
(this is an exception from normal use)
* bump to R26
2005-11-22 18:40:44 +00:00
tg
9b97d72d5e * move _all_ #include stuff into sh.h
* sort out #include stuff which isn't necessary on MirOS into compat.h
2005-10-25 19:53:29 +00:00
tg
181463f990 another Slowlaris speciality... 2005-10-25 19:35:14 +00:00
tg
2f9687c58a follow OpenBSD and add mknod as mksh builtin (mknod <file> p acts as mkfifo)
but write a good chunk of that code myself (better structured, better error
handling, more gotos, less function calls, int -> bool)

passes all tests on mirbsd; this will become mksh R25 once tested on other
supported OSes
2005-10-21 12:41:56 +00:00
tg
0b85dc1e81 remove USE_PRINTF hooks, it never worked anyway, and probably nobody
is going to fix it...
2005-10-21 11:44:25 +00:00
tg
7ee8296628 our test(1) promises we can do string1 < string2, and
our /bin/test uses mksh... so we pee (literally) on
POSIX and don't accept < and > only for [[ ... ]] operator
2005-10-08 19:31:00 +00:00
tg
6c985b8b81 fix uber-pedantic Apple GCC 4 2005-09-12 19:28:18 +00:00
tg
6c5d08ea6f * add printf(1) as mksh(1) builtin on MirOS
(or, more general, all systems using Makefile
  instead of Build.sh)
* document this fact
2005-08-26 22:03:56 +00:00
tg
049c867c7d follow style(9) ;) 2005-08-21 12:52:29 +00:00
tg
fb64668227 remove Korn's bizarre /dev/fd hack
(only affects Interix!)

Tests on /dev/fd are now officially unsupported in mksh too.
2005-07-06 00:02:06 +00:00
tg
76c700b3a6 get rid of $PGRP
get rid of special bourne-shell emulating mode
2005-07-04 12:34:24 +00:00
tg
e392a30930 get rid of special "POSIX"ish mode 2005-07-04 12:27:28 +00:00
tg
430fb8edab missing piece 2005-06-24 15:40:38 +00:00
tg
cdb2beb29b Interix defines RLIMIT_VMEM to RLIMIT_AS, no need for us to act (sigh) 2005-06-08 10:25:40 +00:00
tg
50b9b9181b use RLIMIT_AS if RLIMIT_VMEM is not available
they roughly equal each other anyway
2005-06-08 10:14:09 +00:00
tg
cd54ef8f51 * fix emacs [ tabcompletion bug
XXX it's probably a bug in vi mode too, it just doesn't show
* bring manual page and reality into closer sync'd state
* sort ulimits
2005-05-25 23:31:08 +00:00
tg
d7c3f0a066 make setuid/setgid scripts and access() work again
by reverting some OpenBSD and applying some Debian diff
2005-05-25 13:46:02 +00:00
tg
ba859c9ab1 make mksh -exc 'eval false || true'; echo $? echo 0 not 1
From Debian bug #269067
2005-05-25 09:39:49 +00:00
tg
e3cfc9261a * add RLIMIT_LOCKS from Debian pdksh diff
* unify ifdef and spacing of all RLIMITs
2005-05-25 09:18:16 +00:00
tg
dc5614a091 missing preprocessor defines on Solaris 2005-05-23 15:24:43 +00:00
tg
c0d3fd1ef7 -Wformat catched on solaris 2005-05-23 15:23:12 +00:00
tg
b8a06e0fbe * Solaris misses sig_t
* our gmatch becomes gmatchx, it's extended against sh(C)
2005-05-23 15:18:17 +00:00
tg
8266c126ac * add definition of __RCSID if not yet existant (GNU/Linux)
* add declarations of strlcpy and strlcat (for GNU/Linux, again)
* always include <sys/resource.h>
* some more compile / warning fixes
2005-05-23 14:19:14 +00:00
tg
cd7b8bd79b Add mirbsdksh R21, which was developed in a temporary external CVS repo-
sitory whose ChangeLog follows. mksh R21 is licenced under the MirOS li-
cence, shown in "sh.h", and a two-clause UCB-style licence by Marc Espie
as shown in "alloc.c".

This executable is a fair bit smaller and shorter than our /bin/ksh that
it is designed to eventually replace (as /bin/sh hardlink), with the old
/bin/ksh to completely vanish. It is still in beta testing though, and I
don't think it will compile on other operating systems.

mksh R21 is a completely new port, bringing together the OpenBSD-current
/bin/ksh, the MirOS-current /bin/ksh and the older mksh R20 (which still
was portable, ocvs-based).
2005-05-23 03:06:10 +00:00