[This is an update of my former design note, which clarifies some points]

THE WORKBENCH

The users starts 'ewb' normally. He then decides on which machine M he wants to
run the application and he requests the workbench to connect itself to the
remote 'ised' daemon on that machine. The workbench then gives the user a path
name like "/tmp/ised-013456", which must be remembered.

Once this is done, the user must issue an 'rlogin' on that machine and set the
ISED environment variable to the cookie the workbench gave him when it started
the connection on the machine.

THE DAEMON

The 'ised' daemon runs as root and does not play any active role in the
communication process. It simply acts as a relay and an initiator.

When invoked, the daemon computes a unique path name in /tmp, say
/tmp/ised-0001 and sends it back to the workbench which in turn will give
it to the user. Ised then starts opening this file for reading and therefore
falls into a peaceful kernel sleep.

The daemon will wake up as soon as someone opens the named socket or pipe
for writing. Then, it will immediately act as a 'blocking' relay, which
means its I/O communications with the other end of the named socket or pipe
will be blocking ones. Everything which comes from the application is
immediately routed to the attached 'ewb' process while everything coming from
that process will be written into the application.

THE APPLICATION

Upon start up, the application looks at its 'ISED' environment variable and
uses it to get the pathname of the named socket.  It then opens it for writing
(hence waking up the daemon waiting on the other end) and is ready to start
its processing, connected to the remote workbench.

[Discussions of pros and cons removed--no change]

WHAT CHANGED

The white pages mechanism has been replaced by a lower-level mechanism where
the user deals with pathnames directly. This is much more easy for us to
handle, as it solves the ever-growing problem we would have otherwise
encountered with the so-called 'wp' file.

DEADLINE

This scheme will be implemented by Thursday April 23th, 17:00:32 PST :-)
