DEACTIVATE_SESSION動詞は、ローカル論理ユニット (LU) と指定されたパートナー LU の間の特定のセッション、または特定のモード上のすべてのセッションを非アクティブ化するように Microsoft® Host Integration Server に要求します。
次の構造体では、 DEACTIVATE_SESSION 動詞で使用される動詞制御ブロックについて説明します。
構文
typedef struct deactivate_session {
unsigned short opcode;
unsigned char reserv2[2];
unsigned short primary_rc;
unsigned long secondary_rc;
unsigned char reserv3[8];
unsigned char lu_alias[8];
unsigned char session_id[8];
unsigned char plu_alias[8];
unsigned char mode_name[8];
unsigned char type;
unsigned char reserv4[3];
unsigned short sense_data;
unsigned char fqplu_name[17];
unsigned char reserv5[19];
} DEACTIVATE_SESSION;
メンバー
オペコード
指定されたパラメーター。 動詞の操作コード (AP_DEACTIVATE_SESSION) を指定します。
reserv2
予約済みフィールド。
primary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定される主なリターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラー コードについては、リターン コードを参照してください。
secondary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定されるセカンダリ リターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラー コードについては、リターン コードを参照してください。
reserv3
予約済みフィールド。
lu_alias
指定されたパラメーター。 LU にローカルで使用される 8 バイトの ASCII 名を提供します。
セッションID
指定されたパラメーター。 非アクティブ化するセッションの 8 バイト識別子を提供します ( ACTIVATE_SESSION 動詞で返されます)。 このフィールドが 8 バイナリ ゼロに設定されている場合、Host Integration Server はパートナー LU とモードのすべてのセッションを非アクティブ化します。
plu_alias
指定されたパラメーター。 パートナー LU にローカルで使用される 8 バイトの ASCII 名を提供します。 既定のリモート LU を使用する場合は、このパラメーターにスペースを入力します。 パートナー LU を fqplu_name パラメーターで指定する場合は、このパラメーターに 2 進ゼロを入力します。
mode_name
指定されたパラメーター。 EBCDIC (タイプ A) モード名を指定します。
種類
指定されたパラメーター。 非アクティブ化の種類を指定します。 使用可能な値は次のとおりです。
AP_DEACT_CLEANUP
セッションが終了するのを待たずに、セッションを直ちに非アクティブ化します。
AP_DEACT_NORMAL
セッションを使用するすべての会話が終了するまで、セッションを非アクティブ化しないでください。
sense_data
返されたパラメーター。 セッションの非アクティブ化センス・データを指定します。
reserv4
予約済みフィールド。
fqplu_name
指定されたパラメーター。 ローカル ノードで plu_alias 名が定義されておらず、パートナー LU が別のノードにある場合に、EBCDIC (タイプ A) でパートナー LU 名を提供します。
plu_aliasが指定されている場合、このパラメーターは無視されます。
reserv5
予約済みフィールド。
リターン コード
AP_OK
プライマリ リターン コード。動詞が正常に実行されました。 セカンダリ リターン コードは、確立されたセッションの極性を示します。 次の値を返すことができます。
AP_PARAMETER_CHECK
プライマリ リターン コード。次のいずれかのセカンダリ リターン コードで指定されたパラメーター エラーのため、動詞が実行されませんでした。
AP_INVALID_LU_ALIAS
セカンダリ リターン コード。APPC は、定義されているlu_aliasのうち、指定された lu_alias を見つけることができません。
AP_INVALID_PLU_ALIAS
セカンダリ リターン コード。APPC は、指定された plu_aliasを認識しませんでした。
AP_INVALID_SESSION_ID
セカンダリ リターン コード。APPC は、指定された session_idを認識しませんでした。
AP_INVALID_MODE_NAME
セカンダリ リターン コード。APPC は、指定された mode_nameを認識しませんでした。
AP_INVALID_FQPLU_NAME
セカンダリ リターン コード。APPC は、指定された fqplu_nameを認識しませんでした。
AP_INVALID_TYPE
セカンダリ リターン コード。APPC は、指定された 型を認識しませんでした。
AP_COMM_SUBSYSTEM_ABENDED
プライマリ リターン コード。は、次のいずれかの条件が発生したことを示します。
この会話で使用されたノードで、異常終了が発生しました。
TP と PU 2.1 ノード間の接続が切断されました (ローカル エリア ネットワーク エラーが発生しました)。
TP のコンピューターの SnaBase で、異常終了が発生しました。
システム管理者は、エラー・ログを調べて、異常終了の理由を判別する必要があります。
AP_COMM_SUBSYSTEM_NOT_LOADED
プライマリ リターン コード。動詞の処理中に必要なコンポーネントを読み込んだり終了したりできませんでした。 したがって、通信は行われませんでした。 修正措置については、システム管理者に問い合わせてください。
AP_STACK_TOO_SMALL
プライマリ リターン コード。アプリケーションのスタック サイズが小さすぎて動詞を実行できませんでした。 アプリケーションのスタック サイズを増やします。
AP_THREAD_BLOCKING
プライマリ リターン コード。呼び出し元スレッドは既にブロック呼び出し中です。