LIBXRX(1)

名前
libxrx - RX Netscape Navigator プラグイン

説明
RX Plug-in Netscape Navigator (3.0 以降)で MIME 型が RX フォーマットの文章を解釈し、リモートアプリケーションを起動するのに 使うことができる。

RX Plug-in は RX 文書を読み、この文書からアプリケーションが使おうとするサービスのリストを取得する。 この情報に基づいて RX Plug-in は要求された様々なサービスを設定する。 X サーバがSECURITY 拡張をサポートしている場合、このサービスは認証キーの生成も含 む。 続いて RX Plug-in は対応する CGI スクリプトにおける HTTP の GET リ クエストを使って関連するデータ(X のディスプレイ名等)をアプリケーション に渡す。ウェブサーバは、この CGI スクリプトを実行してアプリケーション を起動する。クライアントは、ウェブサーバのホスト上でユーザの X サーバ に接続して動作する。 加えて、RX 文書が EMBED タグ (Netscape の拡張HTML)の中で使われた時、 リモートアプリケーションをそれが起動されたブラウザページ内に埋め込まれるよう RX Plug-in は XC-APPGROUP 拡張を使う。(もしサポートされていれば)

インストール
Netscape Navigator で RX Plug-in を使うようインストールをするには、 libxrx.so.6.3 か libxrx.sl.6.3 (もしくは似たようなもの。あなたのシステムによる) という名前のファイルを <ProjectRoot>/lib (例えば /usr/X11R6.3/lib) から 見つけて、それを /usr/local/lib/netscape/plugins か $HOME/.netscape/plugins にコピーする。 Netscape を混乱させてしまうので、 シンボリックリンクの libxrx.so または libxrx.sl をインストールしてはならない。

Netscape Navigator に RX 補助プログラム(xrx) を設定していたなら、 あらためて設定し直さなくてはならない。通例、 RX 補助プログラムを使うために mailcap ファイルに加えただろう行を 単に除去もしくはコメントアウトする必要がある。 さもなくばプラグインを使うことができない。(普通 mailcap のコメント文字は ''#'' である。)

もし既に Netscape Navigator を実行しているなら、 プラグインライブラリをコピーした後、新たなプラグインを見つけさせるために 終了して再実行する必要がある。 ヘルプメニューの ``About Plug-ins'' ページを調べることによって Navigator がプラグインをうまく読み込んだかどうかチェックできる。 このように表示される
                        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

一度正しく設定すれば、Netscape Navigator は MIME タイプが application/x-rx の文書にいつでも RX Plug-in を起動する。

リソース
RX Plug-in は netscape.Navigator のウィジェット (class Netscape.TopLevelShell) と関連づけられたリソースを探す。 以下のリソース名とクラス名を認識する。

xrxHasFirewallProxy (class XrxHasFirewallProxy)
    X サーバのファイアウォールプロキシ(xfwp 参照)が動作しているかどうか、 またこれを利用するかどうかを指定する。デフォルト値は ``False'' である。

xrxInternalWebServers (class XrxInternalWebServers)
    X サーバのファイアウォールプロキシが使用されないウェブサーバを指定する (xrxHasFirewallProxy が ``True'' の場合だけ関係がある)。この値は マスクと値のペアのコンマ区切りのリストであり、そのアドレスに基づいて内 部ウェブサーバのフィルタリングに使われる。マスク部分はアドレスのどのセ グメントを考慮するか指定し、値の部分は結果がマッチしなければならない値 を指定する。例えば次のリスト
          255.255.255.0/198.112.45.0, 255.255.255.0/198.112.46.0 は、アドレスの集合 198.112.45.* と 198.112.46.* にマッチする。簡潔に書 くと、これは「(アドレス & マスク) == 値」を評価する。

xrxFastWebServers (class XrxFastWebServers)
    LBX が使用されないウェブサーバを指定する。このリソース値は、先に説明し たようなマスク/値のペアのリストである。

xrxTrustedWebServers (class XrxTrustedWebServers)
    リモートのアプリケーションが、信頼されるクライアントとして実行されるウェ ブサーバを指定する。デフォルトでは、リモートアプリケーションは信頼でき ないクライアントとして実行される。このリソース値は、先に説明したような マスク/値のペアのリストである。

環境変数
RX 文書が X-UI-LBX サービスをリクエストしたがデフォルトの X サーバが LBX 拡張の使用を宣言してしない場合、RX Plug-in は環境変数 ``XREALDISPLAY'' を調べて次の X サーバのアドレスを取得し、そこで LBX 拡張を探す。 lbxproxy 経由でブラウザを実行している場合、リモートアプリケーショ ンがインターネット上の LBX を利用できるようにしたければ、ユーザは XREALDISPLAYにサーバの実際のアドレスを設定する必要がある。

RX 文書が XPRINT サービスをリクエストした場合、RX Plug-in は環境変数 ``XPRINTER'' を調べ、利用するプリンタ名と X プリントサーバのアドレスを 取得する。サーバのアドレスが XPRINTER の一部として指定されていない場合、 RX Plug-in は環境変数 ``XPSERVERLIST'' が設定されていれば、この最初に指 定されているサーバを使用する。XPSERVERLIST も設定されていなければ、 RX Plug-in は次にビデオサーバをプリントサーバとして使おうとする。プリン タ名が XPRINTER で指定されていない場合、RX Plug-in は環境変数 ``PDPRINTER'', ``LPDEST'', ``PRINTER'' を順番に試す。

最後に、ユーザがファイアウォールプロキシを使っている場合、RX Plug-in は 環境変数 ``PROXY_MANAGER'' を調べてプロキシマネージャのアドレスを取得 する(proxymngr を参照)。これが指定されていなければ、RX Plug-in は
 ":6500" をデフォルト値として使用する。

既知のバグ
X プリントサービスを使うため認証キーをリモートアプリケーションに対して 生成するとき、RX Plug-in は無限のタイムアウト時間を設定してキーを作 らなければならない。なぜなら、アプリケーションが実際にいつ X プリン トサーバに接続するかはわからないからである。 そのインスタンスが終了した時(別のページに行った時)、キーは無効にされる。 しかし、プラグインが適切に終了されないと(Netscape Navigator が不意に 破棄された場合など)、プリントの認証は無効にされないまま残ってしまう。

関連項目
xrx (1), xfwp (1), lbxproxy (1), proxymngr (1), The RX Document specification

著者
Arnaud Le Hors and Kaleb Keithley, X Consortium