SLI_RECEIVE

SLI_RECEIVE動詞は、応答、SNA コマンド、およびデータを Microsoft® Windows® 論理ユニット アプリケーション (LUA) アプリケーション バッファーに受信します。 SLI_RECEIVE は、Windows LUA アプリケーションへのセッションの現在の状態も提供します。

次の構造体は、SLI_RECEIVEによって使用される動詞制御ブロック (VCB) のLUA_COMMONメンバーについて説明します。

構文

  
struct LUA_COMMON {  
    unsigned short    lua_verb;  
    unsigned short    lua_verb_length;  
    unsigned short    lua_prim_rc;  
    unsigned long     lua_sec_rc;  
    unsigned short    lua_opcode;  
    unsigned long     lua_correlator;  
    unsigned char     lua_luname[8];  
    unsigned short    lua_extension_list_offset;  
    unsigned short    lua_cobol_offset;  
    unsigned long     lua_sid;  
    unsigned short    lua_max_length;  
    unsigned short    lua_data_length;  
    char FAR *        lua_data_ptr;  
    unsigned long     lua_post_handle;  
    struct LUA_TH     lua_th;  
    struct LUA_RH     lua_rh;  
    struct LUA_FLAG1  lua_flag1;  
    unsigned char     lua_message_type;  
    struct LUA_FLAG2  lua_flag2;   
    unsigned char     lua_resv56[7];  
    unsigned char     lua_encr_decr_option;  
};  

メンバー

lua_verb
指定されたパラメーター。 セッション レベル インターフェイス (SLI) 動詞のLUA_VERB_SLI動詞コードが含まれています。

lua_verb_length
指定されたパラメーター。 LUA VCB の長さをバイト単位で指定します。 発行される動詞レコードの長さを含む必要があります。

lua_prim_rc
動詞の完了時に LUA によって設定された主なリターン コード。 有効な戻りコードは、発行される LUA 動詞によって異なります。

lua_sec_rc
動詞の完了時に LUA によって設定されたセカンダリ リターン コード。 有効な戻りコードは、発行される LUA 動詞によって異なります。

lua_opcode
指定されたパラメーター。 発行される動詞の LUA コマンド コード (動詞操作コード) が含LUA_OPCODE_SLI_RECEIVE。

lua_correlator
指定されたパラメーター。 動詞を他のユーザー指定の情報とリンクする、ユーザー指定の値が含まれます。 LUA では、この情報は使用または変更されません。 このパラメーターは省略可能です。

lua_luname
指定されたパラメーター。 Windows LUA セッションで使用されるローカル LU の ASCII 名を指定します。

SLI_RECEIVEは、lua_sidが 0 の場合にのみこのパラメーターを必要とします。

このパラメーターの長さは 8 バイトで、名前が 8 文字より短い場合は、右側にスペース (0x20) が埋め込まれます。

lua_extension_list_offset
SLI_RECEIVEでは使用されず、0 に設定する必要があります。

lua_cobol_offset
Microsoft® Host Integration Server または SNA Server の LUA では使用されず、ゼロにする必要があります。

lua_sid
指定され、返されるパラメーター。 セッション識別子を指定し、 SLI_OPEN および RUI_INITによって返されます。 他の動詞では、このパラメーターを使用して、 コマンドに使用されるセッションを識別します。 他の動詞で lua_luname パラメーターを使用してセッションを識別する場合は、 lua_sid パラメーターを 0 に設定します。

lua_max_length
RUI_READSLI_RECEIVEの受信バッファーの長さを指定します。

lua_data_length
返されたパラメーター。 受信バッファーで返されるデータの長さを指定します。

lua_data_ptr
SLI_RECEIVE動詞からデータを受け取るアプリケーション提供のバッファーへのポインター。 SNA コマンドとデータの両方がこのバッファーに配置され、拡張バイナリ コード 10 進交換コード (EBCDIC) 形式にすることができます。

SLI_RECEIVEが発行されると、このパラメーターはホストからデータを受信する場所を指します。

lua_post_handle
指定されたパラメーター。 イベントによって非同期通知を実行する場合は、Microsoft® Windows Server で使用されます。 この変数には、シグナル処理されるイベントまたはウィンドウ ハンドルのハンドルが含まれます。

lua_th
返されたパラメーター。 受信したメッセージの SNA 伝送ヘッダー (TH) を格納します。 読み取り関数と入札関数では、さまざまなサブパラメーターが返されます。 そのサブパラメーターは次のとおりです。

lua_th.flags_fid

形式識別タイプ 2、4 ビット。

lua_th.flags_mpf

セグメントマッピングフィールド、2ビット。 データ セグメントの種類を定義します。 有効な値は、次のとおりです。

0x0 中間セグメント 0x04 最後 セグメント0x08 最初の セグメント0x0C セグメントのみ

lua_th.flags_odai

発信元アドレス・フィールド・宛先アドレス・フィールド (OAF–DAF) アロケーター標識 (1 ビット)。

lua_th.flags_efi

迅速なフロー インジケーター、1 ビット。

lua_th.daf

宛先アドレス フィールド (DAF)、符号なし文字。

lua_th.oaf

発信元アドレス フィールド (OAF)、符号なし文字。

lua_th.snf

シーケンス番号フィールド。符号なし char[2]。

lua_rh
返されたパラメーター。 送受信されるメッセージの SNA 要求/応答ヘッダー (RH) が含まれます。 そのサブパラメーターは次のとおりです。

lua_rh.rri

要求応答インジケーター、1 ビット。

lua_rh.ruc

要求/応答ユニット (RU) カテゴリ、2 ビット。 有効な値は、次のとおりです。

LUA_RH_FMD (0x00) FM データ セグメントLUA_RH_NC (0x20) ネットワーク制御LUA_RH_DFC (0x40) データ フロー制御LUA_RH_SC (0x60) セッション制御

lua_rh.fi

書式インジケーター、1 ビット。

lua_rh.sdi

センサー データに含まれるインジケーター、1 ビット。

lua_rh.bci

開始チェーン インジケーター(1 ビット)。

lua_rh.eci

エンド チェーン インジケーター、1 ビット。

lua_rh.dr1i

確定応答 1 インジケーター、1 ビット。

lua_rh.dr2i

確定応答 2 インジケーター、1 ビット。

lua_rh.ri

例外応答インジケーター (要求の場合)、または応答の種類インジケーター (応答の場合)、1 ビット。

lua_rh.qri

キューに入った応答インジケーター(1 ビット)。

lua_rh.pi

ペースインジケーター、1ビット。

lua_rh.bbi

開始角かっこインジケーター(1 ビット)。

lua_rh.ebi

端かっこインジケーター、1 ビット。

lua_rh.cdi

方向インジケーターを 1 ビット変更します。

lua_rh.csi

コード選択インジケーター、1 ビット。

lua_rh.edi

暗号化されたデータ インジケーター(1 ビット)。

lua_rh.pdi

1 ビットの埋め込みデータ インジケーター。

lua_flag1
指定されたパラメーター。 アプリケーションによって提供されるメッセージのフラグを含むデータ構造が含まれます。 このパラメーターは、RUI_BIDRUI_READ、RUI_WRITESLI_BIDSLI_RECEIVEおよびSLI_SENDで使用されます。 そのサブパラメーターは次のとおりです。

lua_flag1.bid_enable

入札単価有効化インジケーター(1 ビット)。

lua_flag1.close_abend

即時インジケーター (1 ビット) を閉じます。

lua_flag1.nowait

データ フラグ (1 ビット) を待機しません。

lua_flag1.sscp_exp

システム サービス制御ポイント (SSCP) の優先フロー(1 ビット)。

lua_flag1.sscp_norm

SSCP 標準フロー、1 ビット。

lua_flag1.lu_exp

LU 優先フロー、1 ビット。

lua_flag1.lu_norm

LU 標準フロー、1 ビット。

lua_flag1.bid_enable を 1 に設定して、最新のSLI_BIDを再度有効にします (以前とまったく同じパラメーターでSLI_BIDを再度発行することと同じです)、SLI_BIDを再度有効にしない場合は 0 に設定します。 前の SLI_BID を再度有効にすると、最初に割り当てられた VCB が再利用されるため、この VCB が解放または変更されていない必要があることに注意してください。

lua_flag1.nowait を 1 に設定して、データを読み取ることができるかどうかをすぐに返すSLI_RECEIVEを指定するか、動詞がデータを返す前に待機する場合は 0 に設定します。

次の 1 つ以上のフラグを 1 に設定して、データを読み取るメッセージ フローを示します。

lua_flag1.sscp_exp

lua_flag1.lu_exp

lua_flag1.sscp_norm

lua_flag1.lu_norm

複数のフラグが設定されている場合は、使用可能な最も優先度の高いデータが返されます。 優先順位の順序 (最も高い順) は、SSCP 優先、LU 優先、SSCP 標準、LU 標準です。 lua_flag2 グループ内の同等のフラグは、データが読み取られたフローを示すように設定されます。

lua_message_type
インバウンドまたはアウトバウンドの SNA コマンドおよびデータのタイプを指定します。 返されたパラメーター。 SLI_RECEIVEに示される SNA メッセージの種類を指定します。 次のいずれかの値になります。

LUA_MESSAGE_TYPE_LU_DATA

LUA_MESSAGE_TYPE_SSCP_DATA

LUA_MESSAGE_TYPE_RSP

LUA_MESSAGE_TYPE_BID

LUA_MESSAGE_TYPE_BIND

LUA_MESSAGE_TYPE_BIS

LUA_MESSAGE_TYPE_CANCEL

LUA_MESSAGE_TYPE_CHASE

LUA_MESSAGE_TYPE_LUSTAT_LU

LUA_MESSAGE_TYPE_LUSTAT_SSCP

LUA_MESSAGE_TYPE_QC

LUA_MESSAGE_TYPE_QEC

LUA_MESSAGE_TYPE_RELQ

LUA_MESSAGE_TYPE_RTR

LUA_MESSAGE_TYPE_SBI

LUA_MESSAGE_TYPE_SIGNAL

LUA_MESSAGE_TYPE_STSN

SLI は、LUA インターフェイス拡張ルーチンを介して BIND 要求と STSN 要求を受信して応答します。

LU-DATA、LUSTAT_LU、LUSTAT_SSCP、およびSSCP_DATAは SNA コマンドではありません。

lua_flag2
返されたパラメーター。 LUA によって返されるメッセージのフラグが含まれています。 RUI_BIDRUI_READ、RUI_WRITESLI_BIDSLI_RECEIVE、SLI_SENDによって返されます そのサブパラメーターは次のとおりです。

lua_flag2.bid_enable

RUI_BIDが 1 に設定されている場合に正常に再び有効にされたことを示します。

lua_flag2.async

LUA インターフェイス動詞が 1 に設定されている場合に非同期的に完了したことを示します。

lua_flag2.sscp_exp

1 に設定されている場合、SSCP 優先フローを示します。

lua_flag2.sscp_norm

1 に設定されている場合の SSCP 標準フローを示します。

lua_flag2.lu_exp

1 に設定されている場合、LU 優先フローを示します。

lua_flag2.lu_norm

1 に設定されている場合は、LU 標準フローを示します。

lua_resv56
SLI_RECEIVEでは使用されず、0 に設定する必要があります。

lua_encr_decr_option
SLI_RECEIVEでは使用されず、0 に設定する必要があります。

リターン コード

LUA_OK
プライマリ リターン コード。動詞は正常に実行されました。

LUA_SEC_OK

セカンダリ リターン コード。LUA_OKに関する追加情報は存在しません。

LUA_PARAMETER_CHECK
プライマリ リターン コード。パラメーター エラーのため、動詞は実行されませんでした。

LUA_INVALID_LUNAME

セカンダリ リターン コード。無効な lua_luname が指定されました。

LUA_BAD_SESSION_ID

セカンダリ リターン コード。VCB でlua_sid の無効な値が指定されました。

LUA_BAD_DATA_PTR

セカンダリ リターン コード。 lua_data_ptr パラメーターに有効なポインターが含まれていないか、読み取り/書き込みセグメントを指していないか、指定されたデータが必要です。

LUA_RESERVED_FIELD_NOT_ZERO

セカンダリ リターン コード。発行した動詞の予約パラメーターが 0 に設定されていません。

LUA_INVALID_POST_HANDLE

セカンダリ リターン コード。非同期投稿方法としてイベントを使用する Microsoft Windows オペレーティング システムの場合、Windows LUA VCB には有効なイベント ハンドルが含まれていません。

LUA_BID_VERB_SEGMENT_ERROR

セカンダリ リターン コード。SLI_BID VCB を含むバッファーは、lua_flag1.bid_enable が 1 に設定されたSLI_RECEIVEが発行される前に解放されました。

LUA_NO_PREVIOUS_BID_ENABLED

セカンダリ リターン コード。SLI_BIDは、lua_flag1.bid_enableSLI_RECEIVEを発行する前に発行されませんでした。

LUA_BID_ALREADY_ENABLED

セカンダリ リターン コード。 SLI_BID が既にアクティブだったときに 、lua_flag1.bid_enableでSLI_RECEIVE が発行されました。

LUA_INVALID_FLOW

セカンダリ リターン コード。動詞が発行されたときに 、lua_flag1 フロー フラグが正しく設定されませんでした。

  • SNA 応答を送信する SLI_SEND を発行する場合は、lua_flag1 フロー フラグ 1 つだけ設定します。

  • SLI_RECEIVEを発行するときは、少なくとも 1 つのlua_flag1フロー フラグを設定します。

    LUA_VERB_LENGTH_INVALID

    セカンダリ リターン コード。LUA によって予期しない lua_verb_length の値を持つ LUA 動詞が発行されました。

    LUA_STATE_CHECK
    プライマリ リターン コード。動詞は無効な状態で発行されたため、実行されませんでした。

    LUA_NO_SLI_SESSION

    セカンダリ リターン コード。コマンドの発行時に SLI_CLOSE またはセッションエラーが発生したため、セッションが開かられなかったか、または停止しました。

    LUA_RECEIVE_ON_FLOW_PENDING

    セカンダリ リターン コード。この アプリケーションが SNA フローに対して別のSLI_RECEIVEを発行しても 、SLI_RECEIVE はまだ未処理でした。

    LUA_SESSION_FAILURE
    プライマリ リターン コード。セカンダリ リターン コードで指定されたエラー条件によって、セッションが失敗しました。

    LUA_RUI_WRITE_FAILURE

    セカンダリ リターン コード。 RUI_WRITEによって予期しないエラーが SLI に投稿されました。

    LUA_RECEIVED_UNBIND

    セカンダリ リターン コード。プライマリ論理ユニット (PLU) は、セッションがアクティブな場合に SNA UNBIND コマンドを LUA インターフェイスに送信しました。 その結果、セッションは停止しました。

    LUA_SLI_LOGIC_ERROR

    セカンダリ リターン コード。LUA インターフェイスでロジックに内部エラーが見つかりました。

    LUA_NO_RUI_SESSION

    セカンダリ リターン コード。発行された LUA 動詞に対してセッションが初期化されていないか、セッションが初期化される前 にSLI_OPEN 以外の動詞が発行されました。

    LUA_MODE_INCONSISTENCY

    セカンダリ リターン コード。この関数の実行は、現在の状態では許可されません。 ハーフセッション コンポーネントに送信された要求は、理解され、サポートされていても実行されませんでした。 この SNA センス コードは、例外要求センス コードでもあります。

    LUA_RECEIVER_IN_TRANSMIT_MODE

    セカンダリ リターン コード。通常のフロー データを処理するために必要なリソースが使用できなかったか、通常フロー要求を受信したときに半二重競合の状態が受信されませんでした。 結果は競合状態です。 この SNA センス コードは、例外要求センス コードでもあります。

    LUA_LU_COMPONENT_DISCONNECTED

    セカンダリ リターン コード。LU コンポーネントが正しく接続されていないため、使用できません。 電源がオンになっていることを確認します。

    LUA_FUNCTION_NOT_SUPPORTED

    セカンダリ リターン コード。LUA では、要求された関数はサポートされていません。 制御文字、RU パラメーター、または書式設定された要求コードが関数を指定している可能性があります。 特定のセンス コード情報はバイト 2 と 3 です。

    LUA_CHAINING_ERROR

    セカンダリ リターン コード。チェーン インジケーター設定のシーケンスがエラーです。 受信側の現在のセッション制御またはデータ フロー制御状態に対する無効な要求ヘッダーまたは要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_BRACKET

    セカンダリ リターン コード。送信者がセッション 角かっこルールを適用できませんでした。 競合と競合状態は、このエラーから除外されることに注意してください。 受信側の現在のセッション制御またはデータ フロー制御状態に対する無効な要求ヘッダーまたは要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_DIRECTION

    セカンダリ リターン コード。半二重フリップフロップ状態がNOT_RECEIVEされている間に、通常のフローの要求が受信されました。 受信側の現在のセッション制御またはデータ フロー制御状態に対する無効な要求ヘッダーまたは要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_DATA_TRAFFIC_QUIESCED

    セカンダリ リターン コード。SHUTC コマンドまたは QC コマンドを送信したハーフセッションからデータ・フロー制御 (DFC) または機能管理データ (FMD) 要求が受信され、DFC または FMD 要求が RELQ コマンドに応答していません。 受信側の現在のセッション制御またはデータ フロー制御状態に対する無効な要求ヘッダーまたは要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_NO_BEGIN_BRACKET

    セカンダリ リターン コード。受信側は、BBI=BB を指定する BID または FMD 要求が受信されたときに、BIS コマンドに肯定的な応答を既に送信しています。 受信した現在のセッション制御またはデータ フロー制御状態の無効な要求ヘッダーまたは要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_IMMEDIATE_REQUEST_MODE_ERROR

    セカンダリ リターン コード。要求がイミディエイト要求モード プロトコルに違反しました。 受信した現在のセッション制御またはデータ フロー制御状態の無効なヘッダー要求または要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_QUEUED_RESPONSE_ERROR

    セカンダリ リターン コード。要求がキューに登録された応答プロトコルに違反しました。 受信した現在のセッション制御またはデータ フロー制御状態の無効なヘッダー要求または要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_ERP_SYNC_EVENT_ERROR

    セカンダリ リターン コード。ERP 同期イベント プロトコルの違反が発生しました。 受信した現在のセッション制御またはデータ フロー制御状態の無効なヘッダー要求または要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_RSP_CORRELATION_ERROR

    セカンダリ リターン コード。以前に受信した要求に対応しない応答が送信されたか、以前に送信された要求に対応しない応答が受信されました。

    LUA_RSP_PROTOCOL_ERROR

    セカンダリ リターン コード。プライマリ ハーフセッションから受信した応答で応答プロトコルの違反が見つかりました。

    LUA_BB_NOT_ALLOWED

    セカンダリ リターン コード。開始角かっこインジケーターが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    許可LUA_EB_NOT

    セカンダリ リターン コード。端かっこインジケーターが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_EXCEPTION_RSP_NOT_ALLOWED

    セカンダリ リターン コード。例外応答が許可されなかった場合は、1 つが要求されました。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_DEFINITE_RSP_NOT_ALLOWED

    セカンダリ リターン コード。明確な応答が許可されなかった場合は、1 つが要求されました。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_CD_NOT_ALLOWED

    セカンダリ リターン コード。変更方向インジケーターが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_NO_RESPONSE_NOT_ALLOWED

    セカンダリ リターン コード。EXR 以外の要求に NO RESPONSE が含まれていました。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_CHAINING_NOT_SUPPORTED

    セカンダリ リターン コード。チェーン インジケーターが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_BRACKETS_NOT_SUPPORTED

    セカンダリ リターン コード。角かっこインジケーターが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_CD_NOT_SUPPORTED

    セカンダリ リターン コード。変更方向インジケーターが設定されましたが、LUA ではこの状況の変更方向はサポートされていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_INCORRECT_USE_OF_FI

    セカンダリ リターン コード。書式インジケーターが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_ALTERNATE_CODE_NOT_SUPPORTED

    セカンダリ リターン コード。コード選択インジケーターが設定されましたが、LUA ではこのセッションのコード選択はサポートされていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_INCORRECT_RU_CATEGORY

    セカンダリ リターン コード。要求ユニット カテゴリ インジケーターが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_INCORRECT_REQUEST_CODE

    セカンダリ リターン コード。要求コードが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_INCORRECT_SPEC_OF_SDI_RTI

    セカンダリ リターン コード。SDI と RTI が応答で正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_INCORRECT_DR1I_DR2I_ERI

    セカンダリ リターン コード。DR1I、DR2I、および ERI が正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_INCORRECT_USE_OF_QRI

    セカンダリ リターン コード。キューに登録された応答インジケーターが正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_INCORRECT_USE_OF_EDI

    セカンダリ リターン コード。EDI が正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_INCORRECT_USE_OF_PDI

    セカンダリ リターン コード。PDI が正しく指定されていません。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できなかった場合、エラーが発生している可能性があります。

    LUA_UNSUCCESSFUL
    主なリターン コード。指定された動詞レコードは有効でしたが、動詞が正常に完了しませんでした。

    LUA_DATA_TRUNCATED

    セカンダリ リターン コード。受信したデータが、 lua_max_lengthで指定されたバッファー長より長かったため、データが切り捨てられました。

    LUA_DATA_SEGMENT_LENGTH_ERROR

    セカンダリ リターン コード。次のいずれかが発生しました。

  • SLI_RECEIVEまたはSLI_SENDに指定されたデータ セグメントは、必要に応じて読み取り/書き込みデータ セグメントではありません。

  • SLI_RECEIVEに指定されたデータ セグメントは、lua_max_lengthで提供されている限りではありません。

  • SLI_SENDに指定されたデータ セグメントは、lua_data_lengthで提供されている限りではありません。

    LUA_NO_DATA

    セカンダリ リターン コード。待機パラメーターを含まない SLI_RECEIVE が発行されたときに、読み取り可能なデータがありませんでした。

    LUA_VERB_RECORD_SPANS_SEGMENTS

    セカンダリ リターン コード。LUA VCB 長さパラメーターとセグメント オフセットがセグメント終端を超えています。

    LUA_NOT_ACTIVE

    セカンダリ リターン コード。LUA 動詞が発行されたときに、LUA が Microsoft Host Integration Server または SNA Server 内でアクティブでなかった。

    LUA_NOT_READY

    セカンダリ リターン コード。SLI セッションが一時的に中断された原因は次のいずれかです。

  • コマンド0x02 SNA UNBIND タイプが受信されました。これは、新しい BIND が着信したことを示します。 開始SLI_OPENが完了した後に UNBIND タイプ0x02を受信した場合、BIND、オプションの CRV および STSN、および SDT フローが受信されるまでセッションは中断されます。 これらのルーチンは、再度呼び出す必要があるため、再入可能です。 セッションは、SLI が SDT コマンドを処理した後に再開されます。 SLI_OPENの処理中に UNBIND 型0x02を受け取った場合、1 次戻りコードはLUA_STATUSではなくLUA_SESSION_FAILUREされます。

  • SNA CLEAR を受信すると、中断が発生しました。 SNA SDT を受信すると、セッションが再開されます。

    LUA_SLI_LOGIC_ERROR

    セカンダリ リターン コード。LUA インターフェイスがロジックで内部エラーを検出しました。

    LUA_INVALID_PROCESS

    セカンダリ リターン コード。別の OS/2 プロセスがセッションを所有しているため、LUA 動詞が発行されたセッションは使用できません。

    LUA_LU_INOPERATIVE

    セカンダリ リターン コード。LUA がセッションの停止を試みている間に重大なエラーが発生しました。 この LU は、アクティブ化論理ユニット (ACTLU) がホストから受信されるまで、すべての LUA 要求で使用できません。

    LUA_RECEIVE_CORRELATION_TABLE_FULL

    セカンダリ リターン コード。要求されたフローのセッション受信相関テーブルがその容量に達しました。

    LUA_NEGATIVE_RESPONSE
    主なリターン コード。LUA がプライマリ論理ユニット (PLU) から受信したメッセージに否定応答を送信したか、メッセージでエラーが見つかったか、アプリケーションがチェーンの終了が到着したチェーンに否定的に応答しました。

    LUA_MODE_INCONSISTENCY

    セカンダリ リターン コード。この関数の実行は、現在の状態では許可されません。 ハーフセッション コンポーネントに送信された要求は、認識され、サポートされていても実行されませんでした。 この SNA センス コードは、例外要求センス コードでもあります。

    LUA_FUNCTION_NOT_SUPPORTED

    セカンダリ リターン コード。LUA は、要求された関数をサポートしていません。 制御文字、RU パラメーター、または書式設定された要求コードによって、関数が指定されている可能性があります。 特定のセンス コード情報はバイト 2 と 3 です。

    LUA_DATA_TRAFFIC_RESET

    セカンダリ リターン コード。アクティブなセッションのハーフセッションですが、非アクティブなデータ トラフィックでは、通常のフロー DFC または FMD 要求が受信されました。 受信側の現在のセッション制御またはデータ フロー制御状態に無効な要求ヘッダーまたは要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_DATA_TRAFFIC_NOT_RESET

    セカンダリ リターン コード。データ トラフィックの状態がリセットされていない間に、セッション制御要求が受信されました。 受信した現在のセッション制御またはデータ フロー制御状態の無効な要求ヘッダーまたは要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_SC_PROTOCOL_VIOLATION

    セカンダリ リターン コード。SC プロトコル違反が発生しました。 要求 (SC 要求とその要求に対する肯定的な応答が正常に交換された後にのみ許可されます) が、必要な交換の前に受信されました。 センス・データのバイト 4 には、要求コードが含まれています。 このセンス コードのユーザー データは存在しません。 受信した現在のセッション制御またはデータ フロー制御状態の無効なヘッダー要求または要求ユニットが見つかりました。 ハーフセッション コンポーネントへの配信が禁止されました。

    LUA_INVALID_SC_OR_NC_RH

    セカンダリ リターン コード。SC または NC 要求の RH が無効です。

    LUA_PACING_NOT_SUPPORTED

    セカンダリ リターン コード。受信するハーフセッションまたは境界関数のハーフセッションに対してこのセッションのペーシングのサポートが存在しない場合、要求にはペースインジケーターが含まれていました。 以前に選択した BIND オプション、またはアーキテクチャ規則に違反した要求ヘッダー パラメーター値。 ハーフセッション コンポーネントへの配信が禁止されました。 エラーは、現在のセッション状態に依存しません。 送信者がセッション ルールを適用できないと、エラーが発生した可能性があります。

    LUA_NAU_INOPERATIVE

    セカンダリ リターン コード。ネットワーク アドレス指定可能ユニットは、応答または要求を処理できません。 受信側への配信は、次のいずれかの理由で行われませんでした。

  • パス情報ユニット エラー

  • パスの停止

  • アクティブ化の要求のシーケンスが無効です

    アクティブなセッション中にパス エラーが発生した場合、通常はセッション パートナーへの有効なパスがないことを意味します。

    LUA_CANCELED
    主なリターン コード。セカンダリリターンコードは、コマンドを取り消す理由を与えます。

    LUA_PURGED

    セカンダリ リターン コード。 SLI_PURGE が発行され、 SLI_RECEIVE取り消されました。

    LUA_NO_SLI_SESSION

    セカンダリ リターン コード。コマンドの発行時に SLI_CLOSE またはセッションエラーが発生したため、セッションが開かなかったか、ダウンしました。

    LUA_CANCEL_COMMAND_RECEIVED

    セカンダリ リターン コード。ホストは SNA CANCEL コマンドを送信して、 SLI_RECEIVEによって現在受信されているデータ チェーンを取り消しました。

    LUA_TERMINATED

    セカンダリ リターン コード。動詞が保留中のときにセッションが終了しました。 動詞プロセスが取り消されました。

    LUA_IN_PROGRESS
    主なリターン コード。非同期コマンドが受信されましたが、完了していません。

    LUA_STATUS
    主なリターン コード。セカンダリ リターン コードには、アプリケーションの SLI 状態情報が含まれています。

    LUA_READY

    セカンダリ リターン コード。この状態は、SLI がコマンドを処理する準備ができていることを通知するために発行されます。

    LUA_NOT_READY

    セカンダリ リターン コード。SLI セッションは、次の理由で一時的に中断されます。

  • コマンド0x02 SNA UNBIND タイプが受信されました。つまり、新しい BIND が送信されます。 開始SLI_OPENが完了した後に UNBIND タイプ0x02を受信した場合、BIND、オプションの CRV および STSN、および SDT フローが受信されるまでセッションは中断されます。 これらのルーチンは、再度呼び出す必要があるため、再入可能です。 セッションは、SLI が SDT コマンドを処理した後に再開されます。 SLI_OPENの処理中に UNBIND 型0x02を受け取った場合、1 次戻りコードは状態ではなくセッション障害になります。

  • SNA CLEAR を受信すると、中断が発生しました。 SNA SDT を受信すると、セッションが再開されます。

    LUA_INIT_COMPLETE

    セカンダリ リターン コード。LUA インターフェイスは、SLI_OPEN処理中にセッション 初期化しました。 lua_open_type_prim_sscpでSLI_OPENを発行する LUA アプリケーションは、SLI_RECEIVEまたはSLI_BIDでこの状態を受け取ります

    LUA_SESSION_END_REQUESTED

    セカンダリ リターン コード。LUA インターフェイスはホストから SNA SHUTD を受信しました。つまり、ホストはセッションをシャットダウンする準備ができています。

    LUA_COMM_SUBSYSTEM_ABENDED
    プライマリ リターン コード。次のいずれかの条件を示します。

  • このメッセージ交換で使用されているノードで、ABEND が発生しました。

  • トランザクション・プログラム (TP) と物理装置 (PU) 2.1 ノードの間の接続が切断されました (LAN エラー)。

  • TPs コンピューターの SnaBase で、ABEND が発生しました。

    LUA_COMM_SUBSYSTEM_NOT_LOADED
    プライマリ リターン コード。動詞の処理中に、必要なコンポーネントを読み込めなかったか、終了できませんでした。 そのため、通信を行うことができませんでした。 是正措置については、システム管理者に問い合わせてください。

    LUA_INVALID_VERB_SEGMENT
    プライマリ リターン コード。VCB がデータ セグメントの終わりを越えています。

    LUA_UNEXPECTED_DOS_ERROR
    プライマリ リターン コード。オペレーティング システム呼び出しを発行した後、予期しないオペレーティング システムのリターン コードが受信され、セカンダリ リターン コードで指定されます。

    LUA_STACK_TOO_SMALL
    プライマリ リターン コード。アプリケーションのスタック サイズが小さすぎて動詞を実行できません。 アプリケーションのスタック サイズを増やしてください。

    LUA_INVALID_VERB
    プライマリ リターン コード。動詞コードまたは操作コード、またはその両方が無効です。 動詞が実行されませんでした。

注釈

SLI_RECEIVE は、ホストから応答、SNA コマンド、および要求ユニット データを受信します。 SLI_RECEIVE は、Windows LUA アプリケーションへのセッションの状態も提供します。 SLI_OPEN要求はSLI_RECEIVEを発行する前に完了する必要があります。 ただし、lua_init_typeLUA_INIT_TYPE_PRIM_SSCP に設定された状態でSLI_OPENが発行された場合、SLI_OPENがIN_PROGRESSを返すとすぐに、SSCP 標準フローに対するSLI_RECEIVEを発行できます。

データは、4 つのセッション フローのいずれかでアプリケーションによって受信されます。 優先度が最も高いものから最も低いものの 4 つのセッション フローは次のとおりです。

  • SSCP 優先

  • LU 優先

  • SSCP 標準

  • LU 標準

    SLI_RECEIVE処理するデータ フローの種類は、lua_flag1で指定します。 アプリケーションでは、複数の種類のデータ フローを調べるかどうかを指定することもできます。 複数のフロー ビットが設定されている場合、最も高い優先度が最初に受信されます。 SLI_RECEIVE処理が完了すると、lua_flag2は、Windows LUA アプリケーションによってデータが受信された特定の種類のフローを示します。

    SLI_RECEIVEが発行される前にSLI_BIDが正常に完了した場合は、Windows LUA インターフェイスに最後のSLI_BID動詞 VCB を再利用するように指示できます。 これを行うには、lua_flag1.bid_enable を 1 に設定してSLI_RECEIVEを発行します。

    lua_flag1.bid_enable を使用する場合、最後のSLI_BID動詞 VCB が使用されるため、SLI_BIDストレージを解放しないでください。 また、lua_flag1.bid_enable を使用すると、SLI_BIDの正常な完了が投稿されます。

    データを受信できないときに lua_flag1.nowait でSLI_RECEIVEが発行された場合、LUA_NO_DATAは Windows LUA インターフェイスによって設定されたセカンダリ リターン コードになります。

セッション状態の戻り値

LUA_STATUSがプライマリ リターン コードの場合、セカンダリ リターン コードは次のいずれかになります。

LUA_READY

LUA_NOT_READY

LUA_SESSION_END_REQUESTED

LUA_INIT_COMPLETE

さらに、LUA_STATUSが主なリターン コードである場合は、次のパラメーターが使用されます。

lua_sec_rc

lua_sid

LUA_READYは、LUA_NOT_READY状態の後に返され、SLI が再びすべてのコマンドを実行する準備ができていることを示します。

LUA_NOT_READYは、SLI が SNA CLEAR コマンドまたは 0X02 UNBIND タイプの SNA UNBIND コマンド (BIND を使用した UNBIND) を受信したため、SLI セッションが中断されたことを示します。 中断の原因に応じて、次のようにセッションを再アクティブ化できます。

  • 中断が SNA CLEAR によって引き起こされると、SNA SDT を受信するとセッションが再アクティブ化されます。

  • SNA UNBIND タイプ BIND が今後発生するとセッションが中断され、セッションを開いた SLI_OPEN が完了すると、SLI が BIND および SDT コマンドを受け取るまでセッションは中断されます。 セッションは、必要に応じて STSN コマンドを受け取ることもできます。 その結果、初期SLI_OPENで発行されたユーザー指定ルーチンは、呼び戻されるため、再入力する必要があります。

    アプリケーションは、CLEAR 型または UNBIND 型の BIND が到着した後、およびNOT_READYの状態が読み取られた前に、SSCP データを送信できます。 アプリケーションは、NOT_READYの読み取り後に SSCP データを送受信できます。

    セッションを開いたSLI_OPENが完了する前に SNA UNBIND タイプ BIND が到着すると、(LUA_STATUSではなく) LUA_SESSION_FAILUREが 1 次戻りコードになります。

    LUA_SESSION_END_REQUESTEDは、アプリケーションがホストから SNA SHUTD を受信したことを示します。 Windows LUA アプリケーションでは、 SLI_CLOSE を発行して、便利な場合にセッションを閉じる必要があります。

    LUA_INIT_COMPLETEは、SLI_OPENのlua_init_type がLUA_INIT_TYPE_PRIM_SSCP された場合にのみ返されます。 状態は、SSCP データの送受信を許可するために、SLI_OPENが十分に処理されたことを意味します。

例外要求

ホスト・アプリケーション要求単位が EXR に変換されると、センス・データが戻されます。 SLI_BIDが、返された動詞パラメーターを示すように設定して完了すると、EXR 変換が行われます。

メンバー 設定値
lua_prim_rc OK (0x0000)
lua_sec_rc OK (0x00000000)
lua_rh.rri bit off (要求ユニット)
lua_rh.sdi ビットオン (センス データを含む)

lua_peek_dataの 7 バイトのデータのうち、0 ~ 3 バイトで検出されたエラーが定義されます。 次の表は、使用可能なセンス データと、バイト 0 から 3 の値を示しています。

データを検出する バイト 0 から 3 の値
LUA_MODE_INCONSISTENCY 0x08090000
LUA_BRACKET_RACE_ERROR 0x080B0000
LUA_BB_REJECT_NO_RTR 0x08130000
LUA_RECEIVER_IN_TRANSMIT_MODE 0x081B0000
LUA_CRYPTOGRAPHY_FUNCTION_INOP 0x08480000
LUA_SYNC_EVENT_RESPONSE 0x10010000
LUA_RU_DATA_ERROR 0x10020000
LUA_RU_LENGTH_ERROR 0x10020000
LUA_INCORRECT_SEQUENCE_NUMBER 0x20010000

lua_peek_dataのバイト 3 から 6 に返される情報は、エラーの原因となった初期要求ユニットの最初の 3 バイトによって決定されます。

参照

RUI_INIT
RUI_PURGE
RUI_READ
RUI_WRITE
SLI_BID
SLI_CLOSE
SLI_OPEN
SLI_PURGE
SLI_SEND