dc_mcf_tdctcnコネクションの解放(C言語)

形式

ANSI C,C++の形式

#include <dcmcf.h>
int dc_mcf_tdctcn (DCLONG action, dcmcf_tdctcnopt *cnopt,
                   char *proinf, DCLONG *resv02, char *resv03,
                   char *resv04)

K&R版Cの形式

#include <dcmcf.h>
int dc_mcf_tdctcn (action, cnopt, proinf, resv02, resv03, resv04)
DCLONG               action;
dcmcf_tdctcnopt      *cnopt;
char                 *proinf;
DCLONG               *resv02;
char                 *resv03;
char                 *resv04;

機能

コネクションを解放します。

なお,dc_mcf_tdctcn関数の正常終了は,コネクション解放要求をTP1/NET/XMAP3が正常に受け付けたことを意味します。このため,相手システムとのコネクションの解放が正常に完了したことを示すものではありません。

dc_mcf_tdctcn関数の呼び出し後にコネクションに関する何らかの処理をする場合は,dc_mcf_tlscn関数を用いてコネクションの状態を確認してください。

UAPで値を設定する引数

●action

解放するコネクションの指定方法を次の形式で設定します。

DCMCFLE|DCMCFCN}DCMCFFRC

DCMCFLE
解放するコネクションを論理端末名称で指定するときに設定します。
DCMCFCN
解放するコネクションをコネクションIDで指定するときに設定します。
DCMCFFRC
コネクションを強制的に解放するときに設定します。

●cnopt

この関数の対象となったコネクションの情報を,構造体dcmcf_tdctcnoptに設定します。

構造体の形式を次に示します。

typedef struct {
               DCLONG    mcfid;         …MCF通信プロセス識別子
               char      resv01[4];     …予備領域
               char      idnam[9];      …論理端末名称,コネクションID
               char      resv02[7];     …予備領域
               char      resv03[112];   …予備領域
               char      scnnam[9];     …MCF使用領域
               char      resv04[7];     …予備領域
               char      resv05[360];   …予備領域
               } dcmcf_tdctcnopt;

●proinf,resv02,resv03,resv04

NULLを設定します。

リターン値

リターン値リターン値
(数値)
意味
DCMCFRTN_000000正常に終了しました。
DCMCFRTN_71001-12001MCFが開始処理中のため,dc_mcf_tdctcn関数が受け付けられません。
DCMCFRTN_71002-12002MCFが終了処理中のため,dc_mcf_tdctcn関数が受け付けられません。
DCMCFRTN_71004-12004dc_mcf_tdctcn関数の処理中にメモリ不足が発生しました。
DCMCFRTN_71005-12005通信障害が発生しました。原因については,メッセージログファイルを参照してください。
DCMCFRTN_71006-12006内部障害が発生しました。原因については,メッセージログファイルを参照してください。
DCMCFRTN_71007-12007指定されたコネクションIDは登録されていません。
DCMCFRTN_71008-12008指定された論理端末名称は登録されていません。
DCMCFRTN_71009-12009dc_mcf_tdctcn関数が,該当するMCF通信プロセスではサポートされていません。
DCMCFRTN_71010-12010MCF通信プロセスにコネクションの解放を要求しましたが,受け付けられませんでした。原因については,メッセージログファイルを参照してください。
DCMCFRTN_71011-12011コネクションが削除されているため,dc_mcf_tdctcn関数が受け付けられません。
DCMCFRTN_71014-12014TP1/NET/NCSB,またはTP1/NET/X25-Extendedの論理端末名称を指定しています。またはTP1/NET/OSI-TPのコネクショングループ名を指定しています。
DCMCFRTN_72050-13050actionに未サポートのフラグを設定しています。
DCMCFRTN_72051-13051cnoptにNULLが設定されています。
DCMCFRTN_72052-13052proinfにNULLが設定されていません。
DCMCFRTN_72053-13053resv02にNULLが設定されていません。
DCMCFRTN_72054-13054resv03にNULLが設定されていません。
DCMCFRTN_72055-13055resv04にNULLが設定されていません。
DCMCFRTN_72060-13060actionにはDCMCFLEとDCMCFCNを同時に設定できません。
DCMCFRTN_72061-13061dcmcf_tdctcnoptのmcfidに0未満または240以上の値が設定されています。
DCMCFRTN_72062-13062dcmcf_tdctcnoptのresv01がヌル文字で埋められていません。
DCMCFRTN_72063-13063dcmcf_tdctcnoptのidnamの先頭がヌル文字です。
DCMCFRTN_72064-13064dcmcf_tdctcnoptのresv02がヌル文字で埋められていません。
DCMCFRTN_72065-13065dcmcf_tdctcnoptのresv03がヌル文字で埋められていません。
DCMCFRTN_72066-13066dcmcf_tdctcnoptのscnnamがヌル文字で埋められていません。
DCMCFRTN_72067-13067dcmcf_tdctcnoptのresv04がヌル文字で埋められていません。
DCMCFRTN_72069-13069dcmcf_tdctcnoptのresv05がヌル文字で埋められていません。
DCMCFRTN_72073-13073dcmcf_tdctcnoptのidnamに設定された文字数が9以上です。
DCMCFRTN_72074-13074dcmcf_tdctcnoptのidnamに設定された文字列中に不正な文字があります。