Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 TP1/EE/Message Control Extension 使用の手引


5.4.11 コネクション確立UOCインタフェース

〈この項の構成〉

(1) 形式

ANSI C,C++の形式
#include <eemcp.h>
int uoc_func(struct eemcp_uoc_con_n *parm)

(2) 説明

コネクション確立UOCを呼び出すとき,MCPは次に示す所定のパラメタをparmに設定します。

(3) パラメタの内容

(a) eemcp_uoc_con_nの内容

typedef struct eemcp_uoc_con_n {
    char con_id[9];                … コネクションID
    char reserve1[7];              … 予備
    unsigned char ripaddr[16];     … 自システムのIPアドレス
    unsigned char oipaddr[16];     … 相手システムのIPアドレス
    unsigned short rportno;        … 自システムのポート番号
    unsigned short oportno;        … 相手システムのポート番号
    EELONG reject_reason;          … コネクション確立拒否理由
    EELONG rtn_detail;             … 詳細リターンコード
    char reserve2[4];              … 予備
    char *usat_adr;                … ユーザSATアドレス
    EEULONG64 usat_large_size;     … ユーザSATサイズ(拡張)
    char reserve3[32];             … 予備
} EEMCPUOCCONN;

(4) MCPが値を設定する項目

(a) eemcp_uoc_con_n

●con_id

確立要求を受け付けたコネクションIDが設定されます。

●ripaddr

確立要求を受け付けた自システムのIPアドレスが設定されます。

IPアドレスはripaddrの下位4バイトに次の形式で設定されます。

[図データ]

●oipaddr

確立要求を行った相手システムのIPアドレスが設定されます。

IPアドレスの設定形式はripaddrを参照してください。

●rportno

確立要求を受け付けた自システムのポート番号が設定されます。

ポート番号はホストバイトオーダー形式の数値で設定されます。

●oportno

確立要求を行った相手システムのポート番号が設定されます。

ポート番号はホストバイトオーダー形式の数値で設定されます。

●usat_adr

ユーザSATエリアのアドレスが設定されます。TP1/EEのサービス定義のメモリ関連定義のsystem_user_areaオペランドに0を指定した場合は,値を参照できません。該当領域に排他を掛けています。

●usat_large_size

ユーザSATエリアのサイズが設定されます(単位:バイト)。

(5) ユーザが値を設定する項目

(a) eemcp_uoc_con_n

●reject_reason

コネクション確立UOCがEEMCP_UOC_CON_OK_REJECT(コネクション確立拒否)でリターンするときの拒否理由を設定します。値は任意です。この拒否理由はログメッセージ(KFSB81406-I)に出力されます。

●rtn_detail

コネクション確立UOCがEEMCP_UOC_CON_NG(UOC異常終了)でリターンするときの詳細リターンコードを設定します。この詳細リターンコードはログメッセージ(KFSB51401-E)に出力されます。値は-19999〜-19000の範囲内で設定します。MCPは,値の範囲をチェックしません。

(6) リターン値

コネクション確立UOCは次のコードでリターンしてください。

リターン値

意味

EEMCP_UOC_CON_OK_ACCEPT

正常リターン(コネクション確立要求を受け入れ)

EEMCP_UOC_CON_OK_REJECT

正常リターン(コネクション確立要求拒否)

EEMCP_UOC_CON_NG

コネクション確立要求判定エラー

注 上記以外のリターン値を設定した場合,EEMCP_UOC_CON_NGを設定したものとして扱います。

■EEMCP_UOC_CON_OK_REJECTの場合

UOCからEEMCP_UOC_CON_OK_REJECTでリターンした場合,MCPはメッセージログを出力し,コネクションの確立を拒否します。

■EEMCP_UOC_CON_NGの場合

UOCからEEMCP_UOC_CON_NGでリターンした場合,MCPはメッセージログを出力し,コネクションの確立を拒否します。