CreateWorkUnit() - WLM 作業単位の作成

標準

標準/拡張機能 C/C++ 依存項目
z/OS® UNIX 両方  

形式

#include <sys/__wlm.h>

int CreateWorkUnit(wlmetok_t *enclavetoken,
                   server_classify_t classify,
                   char *arrival_time,
                   char *func_name);

機能説明

CreateWorkUnit 関数によって、アプリケーションは、WLM 作業単位を作成 できます。
*enclavetoken
CreateWorkUnit() 関数が WLM 作業単位エンクレーブ・トークン を戻す wlmetok_t 型のデータ・フィールドを指します。
*classify
作業要求マクロについての種別情報を 含む server_classify_t 構造体を指します。
*arrival_time
作業要求の到着時刻を STCK 形式で含むダブルワード (符号なし long long) フィールドのアドレス。
*func_name
関連した作業要求の記述関数名を表す NULL 終了文字ストリング を指します。

戻り値

正常に実行された場合、CreateWorkUnit() は、wlmetok_t 型の作業単位 エンクレーブ・トークンを指すポインターを戻します。

正常に実行されなかった場合、CreateWorkUnit() は -1 を戻して、errno を次のいずれかの 値に設定します。
エラー・コード
説明
EFAULT
この関数の引数に、呼び出し元からアクセスできないアドレスが入っていました。
EINVAL
この関数の引数に、正しくない値が入っていました。
EMVSSAF2ERR
セキュリティー・プロダクトでエラーが発生しました。
EMVSWLMERROR
WLM 作成が失敗しました。__errno2() を使用して、その障害についての WLM サービス理由コードを取得してください。
EPERM
呼び出しスレッドのアドレス・スペースは、BPX.WLMSERVER 機能クラスに対して許可されません。BPX.WLMSERVER が定義される場合は、BPX.WLMSERVER 機能クラスに対して呼び出し元のアドレス・スペースが許可されて いる必要があります。BPX.WLMSERVER が定義されないと、呼び出しプロセスは、スーパーユーザー (UID=0) として定義されません。

関連情報