lcc.richard@LOCUS.UCLA.EDU (Richard Mathews) (01/14/87)
I believe that someone said about a year and a half ago that they had a version of the System V Bourne Shell with lots of bug fixes and with BSD job control added. Where can I get this? Do I need anything besides a System V license? I intend to use it for private use, but would be interested in knowing about its availability for commercial use. As an aside, I remember that one of the bug fixes which was included in this shell was the one that Brian Horn and I posted some time back. I now have a fix for the fix. The original fix allowed the "<> file" syntax to work (open for read/write). The new fix prevents "rsh" (restricted shell) users from using this form of redirection (since they can't use "> file" either). The diff from the original System V version of service.c to our current version is: *** 73,78 failed(ion, badfile); else fd = dup(fd); } else if ((iof & IOPUT) == 0) fd = chkopen(ion); --- 74,85 ----- failed(ion, badfile); else fd = dup(fd); + } + else if (iof & IORDW) { + if (flags & rshflg) + failed(ion, restricted); + else if ((fd = open(ion, 2)) < 0) + failed(ion, badopen); } else if ((iof & IOPUT) == 0) fd = chkopen(ion); Richard M. Mathews Locus Computing Corporation lcc.richard@LOCUS.UCLA.EDU lcc.richard@UCLA-CS {ihnp4,trwrb}!lcc!richard {randvax,sdcrdcf,ucbvax,trwspp}!ucla-cs!lcc!richard
gwyn@brl-smoke.ARPA (Doug Gwyn ) (01/17/87)
In article <2338@brl-adm.ARPA> lcc.richard@LOCUS.UCLA.EDU (Richard Mathews) writes: >I believe that someone said about a year and a half ago that they had a >version of the System V Bourne Shell with lots of bug fixes and with BSD >job control added. Where can I get this? Do I need anything besides a >System V license? I intend to use it for private use, but would be >interested in knowing about its availability for commercial use. BRL distributes a version of the SVR2 Bourne shell that is conditionally compiled (following instructions in its Makefile) to turn on or off a number of significant enhancements, including: compilation under a variety of C environments, including System V, 4BSD, and BRL's UNIX System V emulation for 4.nBSD use as native 4BSD shell (different selection of built-ins and "echo" semantics) pathname (if any) of system profile shell accounting logging BRL or Georgia Tech local features 8th Edition UNIX "builtin" and "whatis" builtins avoidance of Bourne's SIGSEGV memory management technique echo -n option (added to System V environments) 8th Edition UNIX echo -e option (for 4BSD environments) $ENV set to per-invocation startup file (similar to .cshrc) name flag to protect against accidental logout on EOF $HISTORY set to name of command history file EMACS-style command-line editing (useful with history) reporting of child process resource usage 4BSD csh-style job control (requires wait3() or equivalent) amount of automatic nicing of background processes ^ symbol optionally taken as synonym for | $PPID (shell's parent process ID) optional support for "rsh" (restricted shell) features avoid attempting to exec directories etc. track symbolic links used to "cd" rather than real path ("pwd" is built-in, so this comes in very handy in practice) support for ~ and ~user substitution automatic timeout if left idle too long after prompt Pyramid-style "att" and "ucb" universe-switching builtins Things that I wish we had included but haven't done yet: 8th Edition UNIX exporting of functions via the environment SVR3 "getopts" built-in The enhancements and bug fixes were provided by a number of people, including but not limited to the following: Ron Natalie, Doug Kingston, and Doug Gwyn of BRL Arnold Robbins of Emory University and Georgia Tech Guy Harris of Sun Microsystems Inc. Sources for this edition of the SVR2 shell are normally shipped as part of the BRL UNIX System V emulation for 4.nBSD; I believe Arnold Robbins also distributes a similar shell. The only requirement is a valid SVR2 (or later) source license (and a magtape). There's no restriction on commercial use other than that imposed by the SVR2 license. Contact me for further information. P.S. There have been numerous improvements to the version that went out on earlier distributions of the BRL UNIX System V emulation. In particular the job control code and manual page were overhauled.