__cpl() - CPL インターフェース・サービス

標準

標準/拡張機能 C/C++ 依存項目

Language Environment

両方 OS/390 V2R9

形式

#include <sys/__cpl.h>

int __cpl(int functioncode, int bufferlen, char *buffer);

機能説明

__cpl() は現在、CFSizer (カップリング・ファシリティー構造体サイズ測定) ツールによって呼び出されます。IBM® のお客様は、IBM の Web ページにある IBM 製品に関するいくつかの質問に答えて、発信ボタンをクリックします。submit によって、C cgi プログラムが呼び出されます。このプログラムでは、データを構文解析し、カップリング・ファシリティーを照会するため、または 1 つ以上のカップリング・ファシリティー構造体のサイズを測定するために、__cpl() を呼び出し、その結果を Web クライアントのブラウザーに戻して表示します。
functioncode
関数 BPX1CPL の実行内容を指定する値。次の関数コードが定義されています。
  • CPL_QUERY (値を 1 にする)
  • CPL_CFSIZER (値を 2 にする)
  • CPL_CFSIZER_W_LVL (値を 3 にする)

computesize 関数を使用するには、CFlevel8 以上が要求されます。一貫性のある結果を提供するには、コードはすべてのオンラインのカップリング・ファシリティーをループして、一番高いカップリング・ファシリティー・レベルのものを検出する必要があります。 さまざまなレベルでカップリング・ファシリティーに computesize を発行すると、ユーザーにさまざまなサイズを戻すことになり、結果として、多重要求が発行された場合に不整合が生じます。

bufferlen
BPX1CPL 用の入出力ストレージ域 (buffer) の長さ
buffer
BPX1CPL 用の入出力ストレージ域

__cpl() は、BPX1CPL アセンブラー呼び出し可能サービスに対するインターフェースです。BPX1CPL のパラメーターと動作について詳しくは、「z/OS UNIX System Services プログラミング: アセンブラー呼び出し可能サービス 解説書) を参照してください。

戻り値

正常に実行された場合、__cpl() は 0 を戻します。

正常に実行されなかった場合、__cpl() は -1 を戻して、errno を次のいずれかの 値に設定します。
エラー・コード
説明
EFAULT
パラメーターの 1 つに、呼び出し元にアクセスできないアドレスが含まれています。
EINVAL
functioncode パラメーターに正しくない値が入っています。
EMVSCPLERROR
__cpl() サービスが失敗しました。
ENOSYS
システムのレベルが正しくないため、__cpl() サービスが失敗しました。
EPERM
呼び出しスレッドのアドレス・スペースが、許可されていません。

使用上の注意

  1. __cpl へのアクセスは、新しい RACF® クラス・プロファイル BPX.CF を介して制御されます。この関数を実行する場合は、BPX.CF クラス・プロファイルを作成し、アクセス・レベルを提供しなければなりません。

    __cpl は、CFlevel 8 以上のカップリング・ファシリティーを備えた、Parallel Sysplex®が使用可能なシステム上でのみ有効です。ほとんどのシステムでは、可用性および復元性の理由から、複数のカップリング・ファシリティーが使用されています。コードは、CF が指定されていない場合に呼び出し元が指定できるという柔軟性を提供するように設計されており、MVS™ では、検出した CFlevel 8 のうち最初の CF が選択されます。

関連情報