dc_mcf_tlsle − 論理端末の状態取得(C言語)
- 〈このページの構成〉
形式
機能
論理端末の状態を取得します。
UAPで値を設定する引数
●action
状態を取得する論理端末の指定方法を次の形式で設定します。
DCMCFLE
- DCMCFLE
-
状態を取得する論理端末を論理端末名称で指定するときに設定します。
●leopt
この関数の対象となった論理端末の情報を,構造体dcmcf_tlsleoptに設定します。
構造体の形式を次に示します。
typedef struct { DCLONG mcfid; …MCF通信プロセス識別子 char resv01[4]; …予備領域 char idnam[9]; …論理端末名称 char resv02[7]; …予備領域 char resv03[112]; …予備領域 char resv04[376]; …予備領域 } dcmcf_tlsleopt;
-
mcfid
処理対象の論理端末を持つMCF通信サービスのMCF通信プロセス識別子※を設定します。設定できる範囲は0〜239です。
0を指定すると,該当する論理端末名称が属するMCF通信サービスを検索します。MCF通信サービスが多い構成やUAPからこの関数を多数発行する場合は,MCF通信プロセス識別子の指定をお勧めします。
- 注※
-
MCF環境定義(mcftenv -s)で指定するMCF通信プロセス識別子は16進数と見なしてください。
例えば,MCF通信プロセス識別子が10の場合,16を設定してください。
-
resv01
領域をヌル文字で埋めます。
-
idnam
状態を取得する論理端末の名称を設定します。論理端末名称は最大8バイトの長さです。論理端末名称の最後にはヌル文字を付けてください。
-
resv02,resv03,resv04
領域をヌル文字で埋めます。
●resv01,resv02,resv03
NULLを設定します。
●infcnt
論理端末の状態を格納する領域dcmcf_leinf2の個数として,1を設定します。
処理終了後は,該当する論理端末の個数が返されます。
●inf
論理端末の状態を格納する領域dcmcf_leinf2を設定します。
「構造体dcmcf_leinf2のサイズ×infcnt」バイト数分の領域が必要です。
●resv04
NULLを設定します。
OpenTP1から値が返される引数
●infcnt
この関数の対象となった論理端末の個数が返されます。
●inf
この関数の対象となった論理端末の情報が構造体dcmcf_leinf2で返されます。
構造体の形式を次に示します。
typedef struct { char idnam[9]; …論理端末名称 char resv01[7]; …予備領域 char resv02[4]; …予備領域 DCLONG status; …論理端末状態 char resv03[40]; …予備領域 } dcmcf_leinf2;
-
idnam
要求した論理端末の名称が設定されます。論理端末名称は最大8バイトの長さです。論理端末名称の最後にはヌル文字が付けられます。
-
resv01,resv02
領域をヌル文字で埋めます。
-
status
要求した論理端末の状態として,次の値が設定されます。
- DCMCF_LEST_ACT
-
閉塞解除状態
- DCMCF_LEST_DCT
-
閉塞状態
-
resv03
領域をヌル文字で埋めます。
リターン値
リターン値 |
リターン値 (数値) |
意味 |
---|---|---|
DCMCFRTN_00000 |
0 |
正常に終了しました。 |
DCMCFRTN_71001 |
-12001 |
MCFが開始処理中のため,dc_mcf_tlsle関数が受け付けられません。 |
DCMCFRTN_71004 |
-12004 |
dc_mcf_tlsle関数の処理中にメモリ不足が発生しました。 |
DCMCFRTN_71005 |
-12005 |
通信障害が発生しました。原因については,メッセージログファイルを参照してください。 |
DCMCFRTN_71006 |
-12006 |
内部障害が発生しました。原因については,メッセージログファイルを参照してください。 |
DCMCFRTN_71008 |
-12008 |
指定された論理端末名称は登録されていません。 |
DCMCFRTN_71009 |
-12009 |
dc_mcf_tlsle関数が,該当するMCF通信プロセスではサポートされていません。 |
DCMCFRTN_71010 |
-12010 |
MCF通信プロセスに論理端末の状態取得を要求しましたが,受け付けられませんでした。原因については,メッセージログファイルを参照してください。 |
DCMCFRTN_71011 |
-12011 |
論理端末が削除されているため,dc_mcf_tlsle関数が受け付けられません。 |
DCMCFRTN_72050 |
-13050 |
actionに未サポートのフラグを設定しています。 |
actionにDCMCFLEが指定されていません。 |
||
DCMCFRTN_72051 |
-13051 |
leoptにNULLが設定されています。 |
DCMCFRTN_72052 |
-13052 |
resv01にNULLが設定されていません。 |
DCMCFRTN_72053 |
-13053 |
resv02にNULLが設定されていません。 |
DCMCFRTN_72054 |
-13054 |
resv03にNULLが設定されていません。 |
DCMCFRTN_72055 |
-13055 |
resv04にNULLが設定されていません。 |
DCMCFRTN_72056 |
-13056 |
infcntにNULLが設定されています。 |
DCMCFRTN_72057 |
-13057 |
infにNULLが設定されています。 |
DCMCFRTN_72061 |
-13061 |
dcmcf_tlsleoptのmcfidに0未満または240以上の値が設定されています。 |
DCMCFRTN_72062 |
-13062 |
dcmcf_tlsleoptのresv01がヌル文字で埋められていません。 |
DCMCFRTN_72063 |
-13063 |
dcmcf_tlsleoptのidnamの先頭がヌル文字です。 |
DCMCFRTN_72064 |
-13064 |
dcmcf_tlsleoptのresv02がヌル文字で埋められていません。 |
DCMCFRTN_72065 |
-13065 |
dcmcf_tlsleoptのresv03がヌル文字で埋められていません。 |
DCMCFRTN_72067 |
-13067 |
dcmcf_tlsleoptのresv04がヌル文字で埋められていません。 |
DCMCFRTN_72073 |
-13073 |
dcmcf_tlsleoptのidnamに設定された文字数が9以上です。 |
DCMCFRTN_72074 |
-13074 |
dcmcf_tlsleoptのidnamに設定された文字列中に不正な文字があります。 |
DCMCFRTN_72076 |
-13076 |
infcntに1が設定されていません。 |