Netcompo アプリケーション会話サービス 2.1.1 LU6.2会話サービス編 - Solaris OE -
目次 索引 前ページ次ページ

上へ第4章 Verbインタフェース
上へ4.2 マップ会話バーブインタフェース詳細

4.2.1 mc_allocate

[記述形式]

#include  <lu62verb.h>
u_long  mc_allocate(MC_ALLOCATE *parm);

[パラメタブロックの形式]

typedef struct {
  u_char    sys_rsvd0;                                      /*[RESERVED]*/
  u_char    sys_rsvd1;                                      /*[RESERVED]*/
  u_short   sys_rsvd2;                                      /*[RESERVED]*/
  u_char    sys_rsvd3[8];                                   /*[RESERVED]*/
  u_long    return_code;                                    /*[OUT]*/ 
  u_long    conv_id;                                        /*[OUT]*/ 
  u_long    lu_id;                                          /*[IN]*/
  u_char    unique_session _name[MAX_UNIQUE_SESS_NAME+1];   /*[IN]*/
  u_char    tp_name_is_iso;                                 /*[NOT SUPPORT]*/ 
  u_char    tp_name[MAX_TP_NAME+1];                         /*[IN]*/
  u_char    rsvd0[1];                                       /*[RESERVED]*/
  CONV_TYPE conv_type;                                      /*[RESERVED]*/
  u_char    type;                                           /*[NOT SUPPORT]*/ 
  u_char    sync_level;                                     /*[IN]*/
  u_short   timeout;                                        /*[RESERVED]*/
  SECURITY_SELECT security_select;                          /*[IN]*/
  u_char    sec_user_id_is_iso;                             /*[IN]*/
  u_char    sec_user_id[MAX_USER_ID+1];                     /*[IN]*/
  u_char    sec_password_is_iso;                            /*[IN]*/
  u_char    sec_password[MAX_PASSWORD+1];                   /*[IN]*/
  u_char    sec_profile_is_iso;                             /*[IN]*/
  u_char    sec_profile[MAX_PROFILE+1];                     /*[IN]*/
  long      pip_length;                                     /*[IN]*/
  u_char    *pip_data;                                      /*[IN]*/
}MC_ALLOCATE; 

[説 明]

自LUと相手LUとの間にセションを割り当て、そのセション上にマップ会話を作成します。このとき、この会話を他の会話と識別するために、会話ごとにユニークな会話識別子が通知されます。

本バーブは、マップ会話に関するいかなるバーブよりも先に発行しなければいけません。

本バーブが正常終了すると、作成された会話は送信状態になります。

[要求時のパラメタ]

SYNC_NONE:
トランザクションプログラムが、この会話においてconfirmバーブを発行せず、確認を行わないことを指定します。
SYNC_CONFIRM:
トランザクションプログラムがこの会話において確認処理を行うことを指定します。

[復帰時のパラメタ]

OK(0x00000000):
バーブが正常終了しました。
ENVIRONMENT_ERROR_NO_RETRY(0x00FF000F):
LU6.2会話サービス環境設定で定義された情報が存在しないか、または定義された情報に異常があります。
ALLOCATION_FAILURE _NO_RETRY(0x00040003):
一時的でない理由により、会話を割り当てることができませんでした。
ALLOCATION_FAILURE_SESSION_LIMIT(0x0004000E):
セション数がオーバーしました。
ALLOCATION_FAILURE_CONV_MISM(0x00040009):
自トランザクションプログラムの指定した会話タイプが、相手トランザクションプログラムの期待していたタイプと異なったため、会話開始要求が拒否されました。
FD_FAILURE(0x00FF0001):
LU6.2会話サービスが起動されていません。
ファイルディスクリプタの獲得に失敗しました。
PARAMETER _ERROR(0x000A0000):
パラメタエラーが発生しました。
INVALID_SUB_VERB_TYPE(0x00070001):
会話の同期レベルに規定外の値が指定されました。
STATE_CHECK_BAD_STATE(0x00100001):
状態エラーが発生しました。本バーブで指定するLU識別子は、appc_openバーブ(トランザクションプログラム制御バーブ)を使用して獲得したものでなければいけません。
RESOURCE_FAILURE_NO_RETRY(0x000E0001):
リトライ不可能なエラーが発生しました。
WAIT_UNTIL_RTR(0x00FF000A):
相手システムから会話開始要求が拒否されました。
LU62_DEACTIVATE(0x00FF0007):
LU6.2会話サービスが非活性化状態です。
SESSION_DEACTIVATED(0x00FF0005):
セションが切断されました。
SYSTEM_ERROR_NO_RETRY(0x00FF0009):
システムでリトライ不可能なエラーが発生しました。
VCP_ERROR_NO_RETRY(0x00FF000C):
FNA-BASEでリトライ不可能なエラーを検出しました。
DLC_ERROR_NO_RETRY(0x00150010):
下位ドライバでリトライ不可能なエラーが発生しました。
VCP_DEACTIVATE(0x00FF000D):
FNA-BASEが停止されました。
INCONSISTENCY_IN_LU62(0x00FF0008):
LU6.2会話サービスで異常が発生しました。

[使用上の注意]

conv_idは、会話を行うための自トランザクションプログラム内でユニークなIDであり、mc_deallocateバーブが発行されて正常に終了するまで使用されます。以降のVerbライブラリ関数で要求時のパラメタになっているときには、必ずconv_idを指定してください。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright (C) 富士通株式会社 2005