NAME
libxrx - RX Netscape Navigator Plug-in
DESCRIPTION
The RX Plug-in may be used with Netscape
Navigator (3.0 or later) to interpret documents in the RX MIME type
format and start remote applications.
The RX Plug-in reads an RX document, from which it gets
the list of services the application wants to use. Based on this
information, the RX Plug-in sets the various requested
services, including creating authorization keys if your X server
supports the SECURITY extension. It then passes the relevant data,
such as the X display name, 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. The client runs on the web
server host connected to your X server. In addition when the RX
document is used within the EMBED tag (a Netscape extension to
HTML), the RX Plug-in uses the XC-APPGROUP extension, if it
is supported by your X server, to cause the remote application to
be embedded within the browser page from which it was launched.
INSTALLATION
To install the RX Plug-in so that
Netscape Navigator can use it, 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.4/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 would
confuse Netscape.
If you have configured Netscape Navigator to use the RX helper
program (xrx), you must reconfigure it. Generally you simply
need to 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 restart 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/local/lib/netscape/plugins/libxrx.sl.6.3
X Remote Activation Plug-in
Mime Type Description Suffixes Enabled
application/x-rx X Remote Activation Plug-in xrx Yes
Once correctly configured, Netscape Navigator will activate the
RX Plug-in whenever you retrieve any document of the MIME
type application/x-rx.
RESOURCES
The RX Plug-in looks for resources
associated with the widget netscape.Navigator (class
Netscape.TopLevelShell) and understands the following
resource names and classes:
- xrxHasFirewallProxy (class XrxHasFirewallProxy)
- Specifies whether an X server firewall proxy (see xfwp) is
running and should be used. Default is ``False.'' The X firewall
proxy uses the X Security Extension and this extension will only
allow clients to connect to the X server if host-based
authentication is turned on. See xfwp(1) for
more information.
- xrxInternalWebServers (class
XrxInternalWebServers)
- The web servers for which the X server firewall proxy should
not be used (only relevant when xrxHasFirewallProxy is
``True''). Its value is a comma separated list of mask/value pairs
to be used to filter internal web servers, based on their address.
The mask part specifies which segments of the address are to be
considered and the value part specifies what the result should
match. For instance the following list:
255.255.255.0/198.112.45.0, 255.255.255.0/198.112.46.0
matches the address sets: 198.112.45.* and 198.112.46.*. More
precisely, the test is (address & mask) == value.
- xrxFastWebServers (class XrxFastWebServers)
- The web servers for which LBX should not be used. The resource
value is a list of address mask/value pairs, as previously
described.
- xrxTrustedWebServers (class XrxTrustedWebServers)
- The web servers from which remote applications should be run as
trusted clients. The default is to run remote applications as
untrusted clients. The resource value is a list of address
mask/value pairs, as previously described.
ENVIRONMENT
If the RX document requests X-UI-LBX service
and the default X server does not advertise the LBX extension, the
RX Plug-in will look for the environment variable
``XREALDISPLAY'' to get a second address for your X server and look
for the LBX extension there. When running your browser through
lbxproxy you will need to set XREALDISPLAY to the actual
address of your server if you wish remote applications to be able
to use LBX across the Internet.
If the RX document requests XPRINT service, RX Plug-in
looks for the variable ``XPRINTER'' to get the printer name and X
Print server address to use. If the server address is not specified
as part of XPRINTER, RX Plug-in uses the first one specified
through the variable ``XPSERVERLIST'' when it is set. When it is
not RX Plug-in then tries to use the video server as the
print server. If the printer name is not specified via XPRINTER,
RX Plug-in looks for it in the variables ``PDPRINTER'', then
``LPDEST'', and finally ``PRINTER'',
Finally, if you are using a firewall proxy, RX Plug-in
will look for ``PROXY_MANAGER'' to get the address of your proxy
manager (see proxymngr). When not specified it will use ":6500" as
the default.
KNOWN BUG
When an authorization key is created for a remote
application to use the X Print service, the RX Plug-in has
to create the key with an infinite timeout since nobody knows when
the application will actually connect to the X Print server. It
then revokes the key when its instance is destroyed (that is when
you go to another page). However, if the Plug-in does not get
destroyed properly, which happens when Netscape Navigator dies
unexpectedly, the print authorization key will never get revoked.
SEE ALSO
xrx (1), xfwp (1), lbxproxy (1), proxymngr (1),
The RX Document specification
AUTHORS
Arnaud Le Hors and Kaleb Keithley, X Consortium