呼び出し可能サービス構文

本書では、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 を使用して呼び出すことができます。 アプリケーションを複数の暗号製品と連携させたい場合は、汎用フォーマットを使用してください。 フォーマット CSFxxxxCSNBxxx の代わりに使用できます。 その他の場合は、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)

高水準言語を使用したコーディング例は コーディング例に示されています。