[oi-dev] Desktop Illumos Still Matters

Joerg Schilling Joerg.Schilling at fokus.fraunhofer.de
Wed Sep 5 10:55:33 UTC 2012


Jonathan Adams <t12nslookup at gmail.com> wrote:

> On 5 September 2012 11:14, Joerg Schilling
> <Joerg.Schilling at fokus.fraunhofer.de> wrote:
> > Linking /sbin/sh to ksh definitely was a mistake and I plan to fix this in
> > SchilliX-ON since a longer time. Before I introduce my fix, I will first
> > replace the unmaintained Bourne Shell from Sun sources by the current
> > maintained one which you can find in:
> >
> >         ftp://ftp.berlios.de/pub/schily/
> >
>
> do you have a patch/diffs to source supplied elsewhere? Is this
> project stored in a git repository, or even in an SCCS tar ball
> separate to the Schillix-ON project?

The Bourne Shell enhancement project started in November 2006 and the first 
action was to transform the unmaintained code into modern code that makes use 
of C prototypes to allow for better code review. These changes alone will 
prevent you from being able to do anything useful by comparing older versions 
of the source from Sun with recent ones as half of the code did change even 
though I did not yet re-indent the code to match cstyle.

The project itself is implemented using SCCS, you may know that I am also 
enhancing SCCS towards a network aware distributed suystem that handles 
changesets. This SCCS will soon appear in SchillIX-ON as I believe that 
everything that was traditionally inside the UNIX sources should become part of 
ONNV again.

> Are you offering these changes as an update to the Illumos bash
> project to be upstreamed, will you be working with these changes in
> the community?

What is the Illumos bsh project?

I tried to get interaction with the OpenSolaris community before to no avail.
Later, Illumos signalled not to be interested in collaboration with non-Nexenta 
people. The discussions I had, have been made with the Bourne Shell "expert" 
Sven Maschek, see http://www.in-ulm.de/~mascheck/bourne/ for a list of features 
and Bugs I fixed.

I plan to rename usr/src/cmd/sh into usr/src/cmd/osh and to add the current 
state of the Bourne Shell into SchilliX-ON as usr/src/cmd/sh.

> is it possible to exclude your added functionality that was not in the
> original shell so that we can stay compatible with all older POSIX
> compliant systems that don't have this additional functionality?

There are #ifdefs for the editor, but not for the rest of the enhancements.
Please note that the Bourne Shell is not in POSIX and it is questuonable 
whether a reduced functionality will make sense.

Switching off new builtins would be easy, but things like support for "set -o"
is spread over the code. On the other side, there is a #ifdef ARGS_RIGHT_TO_LEFT
to switch back to the old incorrect macro evaluation order that is a result 
from the fact that Steve Bourne may not yet have known how to effiviently add to 
the end of a list in 1977.

There is also no #ifdef to switch on the security bugs introduced by Sun when 
implementing a kernel based ofexec().

Jörg

-- 
 EMail:joerg at schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin
       js at cs.tu-berlin.de                (uni)  
       joerg.schilling at fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/
 URL:  http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily




More information about the oi-dev mailing list