呼び出し可能サービス構文
本書では、ICSF 呼び出し可能サービスの名前とそのパラメーターを示すために、一般的な呼び出し形式を使用します。
形式の例を以下に示します。
CALL CSNBxxx (return_code,
reason_code,
exit_data_length,
exit_data,
parameter_5,
parameter_6,
.
.
.
parameter_N)
CSNBxxx は呼び出し可能サービスの名前です。 戻りコード、理由コード、出口データ長、出口データ、パラメーター 5 からパラメーター N は、パラメーター・リストを表します。 呼び出しにより、固定長のパラメーター・リストが生成されます。 パラメーターは、構文図に示された順序で指定する必要があります。 パラメーター定義に、より詳細なパラメーターの説明があります。
ICSF 呼び出し可能サービスは、アセンブラーに加えて、数多くの高水準言語で書かれたアプリケーション・プログラムから呼び出すことができます。
高水準言語には以下があります。
- C
- COBOL
- FORTRAN
- PL/I
ICSF 呼び出し可能サービスは IBM Common Cryptographic Architecture: Cryptographic Application Programming Interface に準拠します。 サービスは汎用フォーマット CSNBxxx を使用して呼び出すことができます。 アプリケーションを複数の暗号製品と連携させたい場合は、汎用フォーマットを使用してください。 フォーマット CSFxxxx を CSNBxxx の代わりに使用できます。 その他の場合は、CSFxxxx フォーマットを使用してください。
ICSF 呼び出し可能サービスを呼び出すことができる言語に固有のフォーマットは以下のとおりです。
- C
CSNBxxxx (return_code,reason_code,exit_data_length,exit_data, parameter_5,…parameter_N)
- COBOL
CALL ‘CSNBxxxx’ USING return_code,reason_code,exit_data_length, exit_data,parameter_5,…parameter_N
- FORTRAN
CALL CSNBxxxx (return_code,reason_code,exit_data_length,exit_data, parameter_5,…parameter_N)
- PL/I
DCL CSNBxxxx ENTRY OPTIONS(ASM); CALL CSNBxxxx return_code,reason_code,exit_data_length,exit_data, parameter_5,…parameter_N;
- アセンブラー言語プログラムでは、ICSF 呼び出し可能サービスの起動時には標準のリンケージ規約を使用する必要があります。
アセンブラー言語プログラムによる呼び出し可能サービスの起動例を以下に示します。
CALL CSNBxxxx,(return_code,reason_code,exit_data_length,exit_data, parameter_5,…parameter_N)
高水準言語を使用したコーディング例は コーディング例に示されています。