summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README266
1 files changed, 266 insertions, 0 deletions
diff --git a/README b/README
index e69de29..baea969 100644
--- a/README
+++ b/README
@@ -0,0 +1,266 @@
+RX: X Remote eXecution
+----------------------
+
+The remote execution (RX) service specifies a MIME format for invoking
+applications remotely, for example via a World Wide Web browser. This
+RX format specifies a syntax for listing network services required by
+the application, for example an X display server. The requesting Web
+browser must identify specific instances of the services in the request
+to invoke the application.
+
+The distribution contains a helper program (xrx) and a Netscape Naviga-
+tor plug-in (libxrx) that demonstrate this protocol. The plug-in
+requires Navigator 3.0.
+
+We have only been able to test the plug-in on HP-UX, IRIX, Digital Unix,
+and Solaris2. Netscape Navigator binaries for other platforms are
+either not available at all or were not available in time to be included
+in the testing for this release.
+
+The specification for the RX mime type is in xc/doc/specs/RX/RX.mif
+(FrameMaker interchange source) and xc/doc/hardcopy/RX/RX.PS.Z
+(compressed PostScript).
+
+The following section describes the procedure to set up your environment
+and try the examples provided in this distribution.
+
+
+1. Preparing Your Web Server
+
+
+In order to demonstrate the RX helper program and the RX Netscape plug-
+in you need to have access to an HTTP server to install ``common gateway
+interface'' (CGI) scripts. While CGI programs can be written in any
+compiled or interpreted language, the sample CGI programs in the distri-
+bution are written in perl.
+
+If you don't currently have a web server the NCSA server is a good one
+to try. Binaries for various systems are available at:
+
+ http://hoohoo.ncsa.uiuc.edu/docs/setup/PreExec.html
+
+If you don't have perl you can get the source code from:
+ ftp://prep.ai.mit.edu/pub/gnu/perl-4.036.tar.gz
+
+You need to install the HTML, RX, and CGI sample files into your
+server's HTML and CGI directories. The process can be partially
+automated by adding the following definitions to your site.def or
+host.def file:
+
+
+WebServer defines the hostname and port of your web server, for
+ example
+
+ #define WebServer www.myorg.org:8001
+
+HtmlDir defines the path at which HTML and RX documents are
+ installed, for example
+
+ #define HtmlDir /usr/local/etc/httpd/htdocs
+
+CgiBinDir defines the path at which CGI programs are installed, for
+ example
+
+ #define CgiBinDir /usr/local/etc/httpd/cgi-bin
+
+ProxyManager defines the transport scheme, hostname, and port for CGI
+ programs to contact the Proxy Manager. See the proxymngr
+ man pages for further details. Typically the proxy
+ manager host will be the same as your web server, for
+ example:
+
+ #define ProxyManager tcp/www.myorg.org:6500
+
+Then make the Makefiles and build the directories with the following
+command sequence:
+
+cd xc/programs/xrx/htdocs
+xmkmf ../../.. programs/xrx/htdocs
+make
+make install
+cd ../cgi-bin
+xmkmf ../../.. programs/xrx/cgi-bin
+make
+make install
+
+
+These directories are not automatically built or installed by the top
+level Makefile because they install outside the ProjectRoot.
+
+You also need to configure your web server so that files with the exten-
+sion name ``rx'' are of the MIME type ``application/x-rx''. See your
+HTTP server's configuration documentation for the right procedure to do
+so.
+
+
+2. The RX Helper Program
+
+
+The helper program, xrx, may be used with any Web browser to interpret
+the new RX document type.
+
+The RX helper program is installed in <ProjectRoot>/bin (e.g.
+/usr/X11R6.3/bin/). You will need to configure your web browser to use
+it for RX documents by adding a line to your $HOME/.mailcap:
+
+ application/x-rx; /X11/bin/xrx %s
+
+You may need to refer to your web browser's documentation for exact
+instructions on configuring helper applications.
+
+The helper program is activated by your browser as soon as you retrieve
+any document of the MIME type application/x-rx. All you need to do is to
+point your browser at the URL:
+ http://your.web.server/xload.rx
+
+The application (i.e. xload) should appear on your DISPLAY as a new
+top-level client. The client will be running on your web server host
+and connected to your X server. If your X server supports the SECURITY
+extension the client will be running as an untrusted client.
+
+
+3. The RX Netscape Navigator Plug-in
+
+
+The Navigator plug-in supports all the functions of xrx and in addition
+uses the new XC-APPGROUP extension, if your X server provides it, to
+cause the remotely launched application to be embedded within the
+browser page from which it was launched.
+
+The HTML page links to an RX document via the EMBED tag, a Netscape
+extension to HTML. The RX document provides the plug-in with the list
+of services the application wants to use. Based on this information,
+the plug-in sets the various requested services, including creating
+authorization keys, and passes the relevant data to the application
+through an HTTP GET request of the associated CGI script. The Web
+server then executes the CGI script to start the application.
+
+To be able to use the RX plug-in you need Netscape Navigator 3.0.
+Binaries for various systems can be found at:
+
+ http://home.netscape.com/comprod/mirror/client_download.html
+
+To complete the installation of the Netscape plug-in, find the file
+named libxrx.so.6.3 or libxrx.sl.6.3 (or similar, depending on your
+platform) in <ProjectRoot>/lib (e.g. /usr/X11R6.3/lib) and copy it to
+either /usr/local/lib/netscape/plugins or $HOME/.netscape/plugins. Do
+not install the symlinks libxrx.so or libxrx.sl; they may confuse
+Netscape.
+
+You should remove or comment out the line you may have previously added
+in your mailcap file to use the RX helper program, otherwise the plug-in
+will not be enabled. (The usual comment character for mailcap is
+``#''.)
+
+If you are already running Netscape Navigator, you need to exit and res-
+tart it after copying the plug-in library so the new plug-in will be
+found. Once this is done you can check that Navigator has successfully
+loaded the plug-in by checking the ``About Plug-ins'' page from the Help
+menu. This should show something like:
+
+
+ RX Plug-in
+
+ File name: /usr/guest/netscape/plugins/libxrx.sl.6.3
+
+ X Remote Activation Plug-in
+
+ Mime Type Description Suffixes Enabled
+ application/x-rx X Remote Activation Plug-inxrxYes
+
+
+The plug-in will be activated by Netscape Navigator as soon as you
+retrieve any document of the MIME type application/x-rx. Several sam-
+ples are included in the distribution. The most basic one is xload. All
+you need to do is point your browser at the page:
+ http://your.web.server/xload.html
+
+If something goes wrong check on the all the previous steps listed above
+and try again. Once xload is working you can try some of the other
+examples in the distribution such as bitmap.html or dtcm.html.
+
+
+4. Trying Embedding With an Old X Server
+
+
+The Netscape Navigator plug-in, libxrx, will work with an X server that
+does not contain the application group or security extensions. The
+application will be started as a separate top-level client.
+
+If you wish to try out the embedding facilities without replacing your
+desktop X server, you may use the Xnest server.
+
+A typical Xnest session would look like the following:
+
+% Xnest :11
+% xterm -display :11
+
+
+These two commands start a ``nested'' server and a terminal emulator
+within that server. Your favorite window manager and Netscape Navigator
+can now be executed from the nested xterm window. You may wish to first
+disable access control in the nested server by running ``xhost +'' in
+the nested xterm.
+
+
+5. Setting Up Your Own Applications To Run Over The Web
+
+
+Based on the examples provided in the distribution it should be easy to
+set up your web server to run your own applications. Every application
+requires 3 additional files to identify it to Web browsers:
+
+myapp.html An HTML page to present the application embedded
+myapp.rx The RX document describing the application
+myapp.pl The CGI script to start the application
+
+Note that the separate ``.rx'' file could be omitted by implementing the
+CGI script such that if it is invoked without a QUERY_STRING it will
+return the RX content. We decided not to do so in the distributed exam-
+ples for purpose of clarity.
+
+The xload demo provides a good starting point. Simply make a copy of
+each of the files xload.rx, xload.html, and xload.pl. Then look inside
+them for every instance of ``xload'' and change it to whatever is
+appropriate for your application.
+
+You will not be able to run the dtcm demo unless you have dtcm (a CDE
+component) installed on your web server host. This example shows how a
+CGI script would look when an X Print server is requested. The script
+dtcm.pl is, for that reason, slightly more complicated than other exam-
+ples.
+
+
+------------------------------------------------------------------------------
+This text originally came from "X Window System, Version 11, Release 6.3
+Release Notes", which were covered by the following notice:
+
+Copyright 1996 X Consortium
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish, dis-
+tribute, sublicense, and/or sell copies of the Software, and to permit
+persons to whom the Software is furnished to do so, subject to the fol-
+lowing conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL-
+ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
+SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABIL-
+ITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+IN THE SOFTWARE.
+
+Except as contained in this notice, the name of the X Consortium shall
+not be used in advertising or otherwise to promote the sale, use or
+other dealings in this Software without prior written authorization from
+the X Consortium.
+
+X Window System is a trademark of X Consortium, Inc.
+
+