tg
56ffbf7e70
hand-sorted ctypes/chtypes upgrade; use table-driven where they make
...
sense and preprocessored otherwise; unify the logic
saves 144t 1i and lots of cpp(1) time, as well as improves readability
2006-11-10 07:52:04 +00:00
tg
35b30679c7
since so many internal things hardcode 'C' locale anyway,
...
use own is{digit,lower,upper} macros that go via byte ranges
doesn't affect utf-8 hack because these only operate on single bytes anyway
saves 224t
2006-11-10 06:53:27 +00:00
tg
2342fa1242
don't use setreuid(2) etc. stuff, like OpenBSD
...
only affects suid shell scripts, which are *ugh* anyway,
and I really have no idea what the old code did, when, why, etc.
262t 16d 2i
2006-11-10 06:16:25 +00:00
tg
d10dd31b9a
correct a few protos and comments
...
saves 4 .text bytes and my nerves
2006-11-10 03:45:57 +00:00
tg
6334091d86
omit usage msg if small
2006-11-09 23:19:52 +00:00
tg
3c33cbcecc
don't compile mknod(1) builtin if MKSH_SMALL
...
saves 1037 text, 20 data (on i386)
2006-11-09 22:18:10 +00:00
tg
c81966621a
merge non-Plan9-specific stuff from the branch, add KNF, etc.
2006-08-24 20:32:53 +00:00
tg
5e619e1ef3
style(9)
2006-08-01 13:43:28 +00:00
tg
bc93d1c90d
fix the "char subscripts" issue, bump version
2006-07-03 12:16:31 +00:00
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