Commit Graph

409 Commits

Author SHA1 Message Date
tg b0eb8f5b5e * check.t: add two mkshrc-tests (turn on, turn off)
* check.pl, check.t: add mkshrc-test whether "real" $HOME/.mkshrc interfers
* mksh.1: sync with reality: $ENV unset isn't needed, $ENV='' is enough
  to turn on ~/.mkshrc processing
2006-05-08 11:59:41 +00:00
tg c4ef5b801a New feature: read ~/.mkshrc during startup, after the profiles
have been read, for non-priviledgued shells only. If $ENV is
set, ~/.mkshrc is ignored (even if the file pointed to by $ENV
does not exist in the first place).
Feature requested by Jari Aalto for portable mksh because some
operating systems' vendors do not allow touching the profile.

Initial diff and manual page addition by Jari Aalto <jari.aalto@cante.net>
Code changes and manual page correctness by me.
2006-05-08 11:42:36 +00:00
tg 41f310751e un-tabulate function declaration (style) 2006-05-08 11:07:38 +00:00
tg 5726a50ab9 * shuffle around _*_SOURCE definitions (sh.h -> Build.sh), per OS
* Tonnerre Lombard reports that Solaris 10 needs _BSD_SOURCE
2006-03-19 18:06:32 +00:00
tg 9e838e765c * convert most of the interna of edit.c to unsigned where it's
important for the signedness of the target, to enable using
  high-bit7 characters on the command line (eg. in UTF-8 locales)
* make emacs-usemeta and vi-show8 equivalent and document that
  in the manual page (i.e. beware if you're in a latin1 locale)
* do not reference SUSv3 (helps GNU groff), write \&" out instead
2006-02-16 11:48:32 +00:00
tg 9d6fc21153 better style 2006-01-30 12:39:14 +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 eb33e02f8e this can be released as mksh-R26c, works on Solaris, Interix (whose Perl
is too old for the testsuite), Debian and of course MirOS
2006-01-29 20:56:55 +00:00
tg e7f1c2c8c1 forgot one use_rand, found on Solaris 2006-01-29 20:16:51 +00:00
tg a09f40cacd optimise the non-arc4random case while not touching the default case 2006-01-29 20:10:16 +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 7ca34b3b12 mirbsd 2006-01-27 10:59:30 +00:00
tg 18265d10f5 * add a few handy tricks (IFS, -r, -p and co-processes) to the description
of the 'read' builtin (it's not exactly where they belong, but hey, this
  man page is already better than the O'Reilly book)
* replace all | with \*(Ba
2006-01-27 10:58:36 +00:00
tg 8301a9bd51 flesh out regression test into an on-the-fly-generated ./Test.sh
so that the user doesn't have to copy and paste a super-long line

idea by Han Boetes and others
2006-01-27 00:50:12 +00:00
tg 0addfc1c92 * replace /*...*/ form of licence with easier # form (no practical change)
* bump to 2006
2006-01-27 00:44:16 +00:00
tg 67ce90703e sync licence 2005-12-06 18:14:27 +00:00
tg d347cdc4d8 sync with reality 2005-11-24 19:42:38 +00:00
tg 8226efa566 use \t not \n for separating RCS IDs
ident(1) finds both similarily, and as doesn't bitch
2005-11-24 19:39:10 +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 f38d8299f9 Change interpretation of '\"' in here documents with substitution
according to SUSv3 and other modern shells (POSIX allows both).
Idea for the patch (add another lex state) from OpenBSD, but the
implementation differs slightly (and is better in quality).

Also add two testcases (/bin/sh passes both, old mksh only one),
and document the change in the manual page. Sync RCS IDs with OBSD.
2005-11-22 18:36:20 +00:00
tg 1d6032acda merge OpenBSD (sort order) fix but don't document any kshrc,
we got rid of them some time ago
2005-11-22 18:09:18 +00:00
tg 987bfa3b22 not all MirOS BSD revisions have had arc4random_push()
for example, good old #7-stable on my sparc
2005-10-29 07:55:51 +00:00
tg a0e618395e only add /bin/mksh to /etc/shells once, hint from Han Boetes 2005-10-26 08:47:19 +00:00
tg 66575644fc bump to mksh R25 2005-10-25 21:11:26 +00:00
tg dba27d6ef4 this commentary is no longer needed 2005-10-25 21:07:21 +00:00
tg 3e688e426e Solaris and GNU/Linux have fucked up PAM, so no -static there 2005-10-25 20:59:00 +00:00
tg 7d5d3d8440 no LDSTATIC on Darwin 2005-10-25 20:54:29 +00:00
tg 871fcf8ed6 update licencing information 2005-10-25 19:56:43 +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 91303fe9d1 if we have some C shell, use /bin/sh instead 2005-10-25 19:46:52 +00:00
tg df22a0fb1b Shuffle some stuff around to the compat functions and add glue 2005-10-25 19:46:11 +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 4e37f85975 Tell user which value of index is out of bounds. ok deraadt@
From otto@obsd
2005-10-21 11:55:23 +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 30aed785bc fix up DEBUGLIBS and DEBUGPROGS 2005-10-20 12:47:49 +00:00
tg c9dbe98906 we have a posix option? No sir. 2005-10-08 19:34:39 +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 1b081938fb * bump version
* disable DEBUGPROGS
2005-10-08 18:53:10 +00:00
tg 4bd3041986 $LINES is implemented
From Matthias Kilian via obsd
2005-10-07 18:36:19 +00:00
tg 892c6123c5 Fix a redraw problem that occurs when a recalled history line has
length equal to screen width - 2. Spotted by jmc@, tested by various.
ok deraadt@
From otto@obsd
2005-10-07 18:34:18 +00:00
tg b2bea18ea3 Process window size changes after xread(). [change window size]
echo $COLUMS $LINES; will now print the new sizes immediately, instead
of after the second echo. ok millert@
From otto@obsd
2005-10-07 18:32:23 +00:00
tg 6c985b8b81 fix uber-pedantic Apple GCC 4 2005-09-12 19:28:18 +00:00
tg 6a84a52bed simplify by not dup'ing 2005-09-12 18:59:51 +00:00
tg cf22cdbec5 revert -r1.18 here too 2005-09-11 14:47:27 +00:00
tg 8d305cd1e3 revert to R24b since we don't printf ATM 2005-09-11 00:32:30 +00:00
tg ef41b5dbdc disable printf(1) builtin for now, it's broken (yet irreproducible)
probably multiple i/o redirection, or stuff like that
2005-08-29 01:16:22 +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 c34c9d7542 * strip .Mx macro copy down to what's needed
* comment about \" vs " in here documents
2005-08-26 21:54:05 +00:00
tg 309b8d635f * make 64-bit clean on GNU/Linux by default
* clean up and remove some .Xr from the man page
* bump version
2005-08-21 13:02:17 +00:00