Category : OS/2 Files
Archive   : KSH48.ZIP
Filename : CHANGELOG

Output of file : CHANGELOG contained in archive : KSH48.ZIP
Sat Dec 5 23:54:40 1992 Simon J. Gerraty (sjg@zen)

* finally fixed the fd leakage that caused pipes to not terminate

Sat Nov 28 23:01:38 1992 Simon J. Gerraty (sjg@zen)

* Makefile: added install target

Wed Nov 25 09:10:11 1992 Simon J. Gerraty (sjg@zen)

* c_cd(c_ksh.c): fixed bug causing cd ., cd .. to look at $CDPATH.

Thu Nov 19 23:32:42 1992 Simon J. Gerraty (sjg@zen)

* For now bind emacs mode complete-list to ESC=

Tue Sep 15 15:24:38 1992 Simon J. Gerraty (sjg@zen)

* main.c: call init_editmode() between processing .profile and
.kshrc so that edit mode can be explicitly set in .kshrc
regardless of FCEDIT, EDITOR and VISUAL values.

Tue Sep 15 15:08:06 1992 Philippe Michel ([email protected])

* main.c: fixed bug in command line argument processing.

Fri Aug 21 15:24:37 1992 Bruce Momjian (root%[email protected])

* exec.c: replace all calls of execute(tree, 0) with
execute(tree, flags & XXWHL) to ensure it is passed to children.

Thu Aug 20 23:18:45 1992 Simon J. Gerraty (sjg@zen)

* fixed bug in complex_history: histsize not initialized before
call to alloc().

Thu Aug 13 00:00:42 1992 Simon J. Gerraty (sjg@zen)

* setstr(), varsub(): be robust when given dud args.

Wed Aug 12 23:56:29 1992 Simon J. Gerraty (sjg@zen)

* Fixed build problem when COMPLEX_HISTORY is not defined.
* don't make COMPLETE_LIST the default, add
bind '^[^['=complete-list
in .kshrc if desired.

Mon Aug 3 22:41:17 1992 Simon J. Gerraty (sjg@zen)

* emacs.c: correctly bind .
* var.c: treat COLUMNS and FCEDIT as special.

Sat Aug 1 17:17:02 1992 Simon J. Gerraty (sjg@zen)

* Incorporated massive contribution from Peter Collinson
includes new features (refer to ../Changes.pc) and support for
BSDI's BSD/386.

* emacs.c: new command complete-list provided by
[email protected] this nicer than the standard ksh
file completion. Define COMPLETE_LIST to bind this to
by default.

Sat May 30 15:44:56 1992 Simon J. Gerraty (sjg@zen)

* added flag XXWHL in tree.h, used by execute() when calling
exchild() to indicate that stdin should not be invalidated. This
corrects handling of:
ls | while read f; do ls -l $f; done

Thanks to Bruce Momjian for tracking down the fault.

Tue May 12 19:23:17 1992 Simon J. Gerraty (sjg@zen)

* Fix bug in init_editmode() if EMACS and VI are not both defined.

Sun May 3 17:47:54 1992 Simon J. Gerraty (sjg@zen)

* sigact.c: allow force build if USE_* defined.
* main.c: call init_editmode() _after_ processing /etc/profile.
* jobs.c: ensure SA_RESTART is defined.

Sat Apr 25 00:20:51 1992 Simon J. Gerraty (sjg@zen)

* Implemented a simple history file.
The default file is "$HOME/.pdksh_hist" but can be changed by
setting HISTFILE in any of /etc/profile,.profile or .kshrc.
The format is trivial - one line per history item.
You can creat a set history file, by making it read-only.
History is only saved during wrap-up and only if the file is
writeable. NOTE: if writeable the file is OVERWRITTEN.

Fri Apr 24 22:22:04 1992 Simon J Gerraty (sjg@zen)

* sigact.c: New file.
An implementation of sigaction() and freinds, which simply
interfaces to BSD's setsigmask() et al, BSD4.1's setsig() or plain
old signal(2). It attempts to use the most useful available.
If it thinks the system really has sigaction() it compiles to
noting, and its header sigact.h does nothing.
At present all use of sigaction is bounded by USE_SIGACT, if/when
this approach appears to work, the alternatives will be withdrawn.

Fri Apr 24 10:42:40 1992 Simon J Gerraty (sjg@taureau)

* Added support for sigaction and friends!, turns out sigset()
et al just don't handle job control. Define USE_SIGACT if you
have sigaction(). Job control now works on this System V machine
(Bull DPX/2).

* getsc_(lex.c), x_getc(edit.c): Added goto's! to allow the
read() calls to be retried (on systems that don't do it
automatically) if the read() was interrupted by a SIGCHLD
(sigchld_caught > 0). This was the cause of the problem with an
async child terminating the shell on System V.

Wed Apr 22 14:57:01 1992 Simon J Gerraty (sjg@taureau)

* exchild(jobs.c): block SIGCHLD when fork()ing, until safe to

* Added support? for sigset() and friends. Allow JOBS to work on
System V machines. This does NOT work right yet.
With JOBS defined, an async process terminates the shell when it
(the child) exits, and ^Z does nothing!

Tue Apr 21 15:18:08 1992 Simon J. Gerraty (sjg@sun0)

* removed const qualifyer from setctypes() 1st arg, as gcc-2.1
generates incorrect code for this function. This is a temperary
hack until gcc is fixed.

* do not install std/stdc/stdarg.h in std/h, any compiler that
will use stdarg.h should have one.

Sun Apr 19 20:16:32 1992 Simon J. Gerraty (sjg@zen)

* added support of stdargs to tree.c and _fixed_ the use of

Sat Apr 18 16:35:48 1992 Simon J. Gerraty (sjg@zen)

* x_read(edit.c): added logic to check $EDITOR etc.

Fri, 10 Jan 92 13:13:52 Bullseye Software (sumax!polari!bullseye)

* alloc.c:afreeall() references memory it has already deallocated.

Wed, 1 Jan 92 20:03:55 Bert Gijsbers ([email protected])

* expand(eval.c): PS1='${PWD##/*/}[!]% ' prints also characters
with ascii = 128

* main(main.c): Testing whether the first letter of argv[0] is a
'-' does not work when ksh reads .kshrc.

Sun, 29 Dec 91 20:05:02 Bert Gijsbers ([email protected])

* Support for Minix.

Wed, 11 Dec 91 12:41:31 Kees J. Bot ([email protected])

* fixes for sun3 with 4.1.1

Wed, 4 Dec 91 15:53:43 Reg Quinton ([email protected])

* fixes for SGI

Mon Nov 25 12:36:42 1991 Simon J. Gerraty (sjg at zen)

* stdh.h: make sure FD_CLEXEC is defined if we support F_SETFD.

* emacs.c: Attempt to make alloc() of x_tab acceptible to more
compilers. Not 100% yet.

Sat Nov 23 14:31:44 1991 Simon J. Gerraty (sjg at zen)

* Improved fd_clexec handling for systems that don't have
an F_SETFD fcntl(). The new arrangement will not blow up if an
attempt is made to fd_clexec a fd above MAXFD (64 by default).
main.c:main() and io.c:savefd() now simply call

Sat Aug 1 17:11:24 1992 Simon J. Gerraty (sjg@zen)

* Incorporated massive contribution from Peter Collinson
Refer to Changes.pc

* Incorporated Emacs-style completion provided by
[email protected] this a bit nicer than the standard ksh
file completion.

Sun May 3 17:50:03 1992 Simon J. Gerraty (sjg@zen)

* Updated MACHINES.
* Placed source under CVS. This should help with processing fixes
from the field.

Sat Apr 25 10:53:20 1992 Simon J. Gerraty (sjg@zen)

* Getting ready for 4.3 release.

Fri Nov 22 22:24:29 1991 Simon J. Gerraty (sjg at zen)

* Cleaned up the build process slightly. Makefiles in ./std tree
now maintain objects within the libraries rather than simply
building the .o's and archiving them. Of course the make(1) used
must know how to maintain libraries 🙂

* Added as a template for bug reporting.

* Source in ./sh can be built independently of ./std tree if
desired. See comments in ./sh/Makefile.

* As originally distributed some of libstdc.a was not used and
libposix.a was not used at all. On Sun's this highlighted a bug
(incompatibility) in the times() call. Now the ./std/libs are
used fully, and the supplied times() call functions as expected.

Fri Nov 22 11:24:57 1991 Simon J. Gerraty (sjg at zen)

* Since many people had problems using the headers and libraries
in std/*, modified sh/* so that they can be compiled in the
absence of std/*. This requires putting in some fixes that I had
left out from my 3.2 version. Particularly, catering for systems
that do not have F_SETFD.

* exec.c:
Added fd_clexec array for tracking fd's to close in child after
fork(). This is avoid wasting fd's on systems that don't have

* jobs.c:
Allow Sun's and perhaps other BSD systems to define WAIT_T to be
union wait and thus use their native status handling for children.

* The file sh/MACHINES now tracks systems the shell has been
compiled on.

Sat Nov 9 14:57:30 1991 Simon J. Gerraty (sjg at zen)

* Release version 4.1 as a new base line.

Thu Nov 7 23:11:25 1991 Simon J. Gerraty (sjg at zen)

* John R MacMillan suppied a fix for a bug in yylex() that was the
cause of several odd problems such as:
$ foo=echo
$ $foo bar
bar: not found
$ pwd
$ /local/src/pdksh
$ $foo bar

Sun Sep 15 23:19:27 1991 Simon J. Gerraty (sjg at zen)

* emacs.c:
Added function x_lastcp() which returns a pointer to that char in
the edit buffer that will be the last displayed on the screen.

cp = x_lastcp();
while (cp > xcp)

Will correctly position the cursor on the screen (regardless of
TABs etc in the buffer). The previous method got out of sync if
there were any TABs to display.

Wed Aug 7 11:26:55 1991 Simon J. Gerraty (sjg at sun0)

* jobs.c:
The Sun SPARCstation 2 was proving extremely unreliable using ksh.
After puting traces in jobs.c, it turns out the problem was
multiple SIGCHLD events happening too quickly causing the handler
to be interupted and thus not recognise the job that it had just
reaped was one of its own. Having done the waitpid(), but not
adjusted the job table entry, j_waitj() would loop forever waiting
for a job to finnish (that had already done so!)
Solution was to have the SIGCHLD handler simply record the events
by inrcrementing sigchld_caught. The actual reaping is now done
in a new funtion j_reapchld(), which does what the old signal
handler did but blocks SIGCHLD while scanning the job table.
j_waitj() calls j_reapchld() when sigchld_caught is non-zero.
The SS2 is now much more reliable...

* trace.c:
Added my simple _TRACE facility (used to track the j_waitj
problem). Simply -DUSE_TRACE for it to have effect. If USE_TRACE
is undefined, calls to _TRACE() expand to while(0) which an
optimizer will usually remove. sh.h now includes trace.h

Mon Jun 10 10:27:14 1991 Simon J. Gerraty (sjg at zen)

* emacs.c:
A couple of assignments (xbp = xbuf) were not migrated from the
3.2 version. Caused an anoying bug when retrieving history

Mon May 27 12:50:20 1991 Simon J. Gerraty (sjg at sun0)

* added fixes supplied by Mike Jetzer:
These relate mainly to vi mode. See Changes.mlj

* c_sh.c c_exit():
Modified behavior to not imediately exit if there are stopped
jobs. A subsequent exit will kill any jobs left and terminate the

Fri May 24 15:20:10 1991 Simon J. Gerraty (sjg at sun0)

* edit.h:
Cleaned up prototypes. Built shell on sun3.
While gcc-1.39 builds the ksh ok on the 386i, on the sun3 jobs
don't work correctly - any non-builtin command gets stopped and
put into the background. Had same problem with 3.2, using
/usr/bin/cc works fine.

Thu May 23 13:45:20 1991 Simon J. Gerraty (sjg at sun0)

* migrated my 3.2 edit.c changes to the new shell.
Affects edit.c, emacs.c
Added edit.h which is now included by edit.c,emacs.c and vi.c

* vi.c:
Fixed handling of '!' in prompt by using pprompt() as in emacs.c

* std/stdc/vprintf.c:
Fixed bug in output of left '0' padded unsigned numbers was
always padding with ' ' which left a space in ksh's temp file
names. This prevented fc -l from working.

Here is my 3.2 ChangeLog:
Fri Mar 22 16:50:14 1991 Simon J. Gerraty (sjg at sun0)

* edit.c:
Added x_set_arg() and x_prev_histword().
x_set_arg() handles 'ESC''0-9' type args which are used by word
related commands.
x_prev_histword() recovers the last (default) or sepcified arg
word from the previous command line. Bound to ESC. and ESC_ to be
compatible with real ksh.

Tue Feb 26 14:16:17 1991 Simon J. Gerraty (sjg at zen)

* edit.c:
Changes to handle editing of command lines longer than $COLUMNS in
a manner compatible with real ksh.

Mon Feb 25 12:20:36 1991 Simon J. Gerraty (sjg at sun0)

* var.c,table.h:
Implemented $RANDOM
Some scripts use [ "$RANDOM" != "$RANDOM" ] to check for ksh.

Wed Feb 20 12:20:36 1991 Simon J. Gerraty (sjg at sun0)

Changes so that shell will compile on sun386i.

* exec.c,main.c,io.c:
Handle the case where FD_CLEXEC isn't defined.

* jobs.c:
SunOS has its own ideas about job status etc.

* tree.c:
Fixed conflict between varargs and stdarg.

  3 Responses to “Category : OS/2 Files
Archive   : KSH48.ZIP
Filename : CHANGELOG

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: