前へ | 次へ | 目次 | 索引 |
ACL セクション・ファイル SYS$LIBRARY:ACLEDIT.TPU を変更して再コンパイルすることにより,ACL (アクセス制御リスト) エディタを変更することができます。 SYS$LIBRARY:ACLEDIT.TPU ファイルは,コンパイル済みの ACL セクション・ファイル SYS$LIBRARY:ACLEDT$SECTION.TPU$SECTION のソース・ファイルです。独自の ACL セクション・ファイルを作成することもできます。
セクション・ファイルの作成と処理の詳細については,『DEC Text Processing Utility Reference Manual』を参照してください。
B.1 ACL セクション・ファイルに格納されている変数の変更
表 B-1 は,ACL セクション・ファイルの変数と省略時の値の一覧です。
変数 | 意味 | ||||
---|---|---|---|---|---|
ACLEDIT$X_CHECK_DUPLICATES | 重複 ACE をチェックするかどうかを制御する。次の値を定義できる。
|
||||
ACLEDIT$X_CHECK_MODIFY | ACE の変更を許可または禁止する。次の値を定義できる。
|
||||
ACLEDIT$X_DIRECTORY_FILE | オブジェクトがディレクトリ・ファイルであるかどうかを示す。次の値を定義できる。
|
||||
ACLEDIT$X_PASTE_BUFFER | VT200 シリーズ・ターミナルに対し, PASTE バッファのサポートを許可するかどうかを制御する。次の値を定義できる。
|
||||
ACLEDIT$X_PROMPT | 自動テキスト挿入 (プロンプト・モード) を許可するかどうかを制御する。次の値を定義できる。
|
||||
ACLEDIT$X_USE_DEFAULT_OPT | DEFAULT オプションをディレクトリ以外の ACE で使用できるかどうかを制御する。次の値を定義できる。
|
||||
ACLEDIT$C_WINDOW_SHIFT | 指定方向で編集ウィンドウを移行するカラム数を指定する。左方向の移行には GOLD キーと左向き矢印キー,右方向の移行には GOLD キーと右向き矢印キーを使用する。省略時の値は,8 カラムである。 |
表 B-1 に示されている変数を変更した場合や ACL セクション・ファイルの他の部分を変更した場合,次のコマンドでセクション・ファイルを再コンパイルします。
$ EDIT/TPU/NOSECTION/COMMAND=SYS$LIBRARY:ACLEDIT |
上記のコマンドは,コンパイル済み ACL セクション・ファイル
SYS$LIBRARY:ACLEDT$SECTION を作成するソース・コード・ファイル SYS$LIBRARY:ACLEDIT を直接変更する場合に使用します。既存の ACL セクション・ファイルにプライベート・コマンド・ファイルを追加する場合には,次のコマンドを使用します。
$ EDIT/TPU/SECTION=SYS$LIBRARY:ACLEDT$SECTION/COMMAND=CUSTOM_ACL.TPU |
コンパイルされた DECtpu ACL セクション・ファイルは,現在のディレクトリに格納されます。このセクション・ファイルを実行するには,次のいずれかの作業を行います。
$ DEFINE ACLEDT$SECTION yourdisk:[yourdir]ACLEDT$SECTION |
コンパイルする前のセクション・ファイル (ソース・ファイル) の省略時のファイル・タイプは TPU であり,コンパイル済みセクション・ファイルの省略時のファイル・タイプは TPU$SECTION です。
DECtpu セクション・ファイルの作成と処理の詳細については,『DEC Text Processing Utility Reference Manual』を参照してください。
B.2 ACL エディタ・ルーチン CALL_USER の使用法
ACL エディタ・ルーチン CALL_USER は,共用可能イメージ
SYS$LIBRARY:ACLEDTSHR.EXE の一部です。このルーチンは,その既存機能コードとともに ACL セクション・ファイルに含めることができます。また,別の機能コードを認識する CALL_USER ルーチンを,新たに作成することもできます。
ACL エディタ・ルーチン CALL_USER は,ACL エディタの DECtpu セクション・ファイルが使用する機能だけを認識します。その他の機能コードは,ユーザが提供する CALL_USER ルーチンに渡されます。ACL エディタ・ファシリティ・コード (10 進値 277 または 16 進値 115) を上位ワードに含んでいる CALL_USER 機能コードは,ACL エディタの CALL_USER ルーチンで処理されます。その他の機能コードの場合,ユーザが提供する CALL_USER ルーチンが使用されます。CALL_USER ルーチンの作成方法については,『DEC Text Processing Utility Reference Manual』の CALL_USER ルーチンの説明を参照してください。
表 B-2 は,ACL エディタがサポートする CALL_USER ルーチンの機能コードの一覧です。
機能 コード |
ニーモニック | 説明 |
---|---|---|
18153473 | ACLEDIT$C_PARSE_ACE | 入力文字列 (ACE) を解析し,エラーが存在しない場合は解析済み (バイナリ) ACE を戻す。エラーを検出した場合,最初の 2 文字が 0,入力 ACE の中で解析されなかった箇所を 3 文字目以降とする文字列を戻す。 |
18153474 | ACLEDIT$C_CHECK_MODIFY | ユーザが変更できる ACE の場合,文字列 "READ_WRITE" を戻す。変更できない ACE の場合,文字列 "READ_ONLY" を戻す。 |
18153475 | ACLEDIT$C_PROMPT_MODE | プロンプト・モードが指定されている場合,文字列 "PROMPT_MODE" を戻す。プロンプト・モードが指定されていない場合,文字列 "NOPROMPT_MODE" を戻す。 |
18153476 | ACLEDIT$C_CHECK_ACE | 入力文字列 (ACE) を解析し,エラーが存在しない場合は解析済み (バイナリ) ACE を戻す。エラーを検出した場合,ACE テキストを強調表示し,エラーがある ACE であることを示す DECtpu 変数 ACLEDIT$X_RANGE_x を作成する。 "x" は,1 から始まる通し番号である。 |
18153477 | ACLEDIT$C_CHECK_DIR | 編集対象オブジェクトがディレクトリ・ファイルである場合,文字列 "DIRECTORY_FILE" を戻す。ディレクトリ・ファイルでない場合,文字列 "NODIRECTORY_FILE" を戻す。 |
18153478 | ACLEDIT$C_SET_CANDIDATE | 入力文字列 (ACE) を解析し,エラーが存在しない場合は文字列 "PARSE_OK" を戻す。エラーを検出した場合,文字列 "PARSE_ERROR" を戻す。解析が正常終了した場合,CALL_USER の ACLEDIT$C_CHECK_DUP 機能が重複 ACE をチェックする。 |
18153479 | ACLEDIT$C_CHECK_DUP | 入力文字列 (ACE) を解析し,エラーを検出した場合は文字列 "PARSE_ERROR" を戻す。エラーが存在しない場合,CALL_USER の ACLEDIT$C_SET_CANDIDATE 機能が設定した候補 ACE と解析済み (バイナリ) ACE とを比較する。 ACE が重複している場合は文字列 "DUPLICATE_ACE" を戻し,重複していない場合は文字列 "UNIQUE_ACE" を戻す。 |
18153482 | ACLEDIT$C_MESSAGE | 入力文字列がシステム・エラー・コードであると仮定し,そのエラー・コードに対応するメッセージ・テキストを ACL エディタのメッセージ・ウィンドウに戻す。 |
表 C-1 は,会計情報に関係するシステム・サービスを示しています。会計情報ファイルを読み込むシステム・サービスはありません。このため,読み込み処理を行うには,会計情報ファイルの構造を充分理解する必要があります。
システム・サービス | 説明 |
---|---|
$CREPRC | 会計情報を禁止できるプロセスを作成する。 |
$SNDJBC | どの資源を現在の会計情報ファイルに記録するかを制御する。または,ユーザが定義したレコードを現在の会計情報ファイルに記録する。 |
この付録では,会計情報ファイルの構造について説明します。会計情報データに直接アクセスしたいプログラマを対象としています。
記載されている形式は,今後のリリースで断りなく変更する場合があります。 |
この付録で説明するシンボルとオフセットは,STARLET ライブラリの $ACRDEF マクロで定義します。
C.1 会計情報ファイル・レコードの形式
会計情報レコードは,1 つの会計情報レコード・ヘッダと複数の情報パケットで構成されます。情報パケットの数とタイプは,レコードのタイプによって異なります。
図 C-1 は会計情報レコードの標準形式, 表 C-2 はレコード・ヘッダのフィールドを示しています。レコード・ヘッダのタイプ・フィールドは, 表 C-3 に示す 5 つのフィールドに分割されます。
図 C-1 会計情報レコードの形式
シンボリック・オフセット | 説明 |
---|---|
ACR$W_TYPE | レコードのタイプを示す。 表 C-3 に示す 5 つのフィールドに分割される。(ワード) |
ACR$W_LENGTH | バイト単位によるレコード長。(ワード) |
ACR$Q_SYSTIME | 64 ビットの絶対時刻によるシステム時間。 (クォドワード) |
シンボリック・オフセット | 説明 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ACR$V_PACKET | レコード・ヘッダであることを示す。 0 でなければならない。(1 ビット) | ||||||||||||
ACR$V_TYPE | レコードのタイプを示す。現在, 表 C-4 に示す 8 つのレコード・タイプがある。(7 ビット) | ||||||||||||
ACR$V_SUBTYPE | レコードを対応づけるプロセスのタイプを示す。次のタイプがある。(4 ビット)
このフィールドが適用されるのは, ACR$K_IMGDEL と ACR$K_PRCDEL のタイプのレコードだけである。 |
||||||||||||
ACR$V_VERSION | 会計情報ファイル・レコード構造のバージョンを示す。次のバージョンがある。(3 ビット)
|
||||||||||||
ACR$V_CUSTOMER | レコードの書き込みに使用したソフトウェアが,HP のソフトウェアとカスタマ・ソフトウェアのどちらであるかを示す。0 は HP のソフトウェア,1 はカスタマ・ソフトウェアを示す。(1 ビット) |
ACR$K_CURVER = 現在のバージョン。今回のリリースでは ACR$K_VERSION3 と同じに設定してください。 |
会計情報レコードのタイプは,レコードを記録させたイベントのタイプを示します。現在, 表 C-4 に示す 8 種類の会計情報レコードがあります。この表では,各レコード・タイプに格納される情報パケットも一覧しています。
シンボル | イベント | 情報パケット |
---|---|---|
ACR$K_FILE_BL | 会計情報ファイルがオープンされた | ACR$K_FILENAME |
ACR$K_FILE_FL | 会計情報ファイルがクローズされた | ACR$K_FILENAME |
ACR$K_IMGDEL | イメージが終了した | ACR$K_ID
ACR$K_RESOURCE ACR$K_IMAGENAME |
ACR$K_LOGFAIL | ログインが異常終了した | ACR$K_ID
ACR$K_RESOURCE |
ACR$K_PRCDEL | プロセスが終了した | ACR$K_ID
ACR$K_RESOURCE |
ACR$K_PRINT | 印刷ジョブが終了した | ACR$K_ID
ACR$K_PRINT |
ACR$K_SYSINIT | システムが初期化された | ACR$K_ID
ACR$K_RESOURCE |
ACR$K_USER | $SNDJBC システム・サービスが会計情報メッセージを送信した | ACR$K_ID
ACR$K_USER_DATA |
情報パケットは,6 種類あります。パケット・タイプは,情報パケットのヘッダによって,次のように定義します。
情報パケットの標準形式については 付録 C.1.2.1 項 ,各情報パケット・タイプの形式については 付録 C.1.2.2 項 から 付録 C.1.2.7 項 で説明します。
前へ | 次へ | 目次 | 索引 |