形式
#include <sys/_Elmarm4.h>
arm_error_t arm_start_transaction(
/* [in] */ arm_appl_id_t *transaction_id,
/* [in] */ arm_correlator_t *parent_correlator_ptr,
/* [in] */ arm_int32_t flags,
/* [in] */ arm_buffer4_t *buffer4,
/* [out] */ arm_start_handle_t *start_handle,
/* [out] */ arm_correlator_t *current_correlator_ptr
);
機能説明
arm_start_transaction() は、トランザクションの実行の開始にマークを付ける
ために使用します。
トランザクションは、前に arm_init_transaction_type() によって定義されたトラ
ンザクション・タイプのメンバーとして識別されている必要があります。
いくつのトランザクションが同時に実行されていてもかまいません。
- transaction_id
- arm_init_transaction_type() に渡されたり、そこから戻されたりする、ト
ランザクション・タイプのためのハンドル。
- parent_correlator_ptr
- このトランザクションのための親相関関係子へのポインター。
親相関関係子がない場合、ヌル値を渡してください。
- flags
- 1 つのフラグ・ビットが定義されます。
ARM_START_FLAG_TRACE_REQUEST は、トランザクションのトレースを要求します。
現在、eWLM はトランザクションのトレースをサポートしておらず、このフラグを無
視します。
他のフラグ・ビットはすべて予約されており、ゼロでなければなりません。
- buffer4
- 追加データが入っている 1 つ以上のサブバッファーを識別するバッファーへ
のポインター。
追加データが必要ない場合は、ヌル値を指定できます。
- start_handle
- トランザクションを識別するハンドルが戻される 64 ビット域へのポインター。
このハンドルは、arm_stop_transaction() などの他のトランザクション・レベル・
インターフェースに渡す必要があります。
このハンドルは、呼び出し元のプロセス内でのみ有効です。
- current_correlator_ptr
- eWLM がこのトランザクションのための相関関係子を保管するバッファーへの
ポインター。
このバッファーの長さは、少なくとも、arm_get_correlator_max_length() 関数か
ら戻される長さでなければなりません。
戻り値
正常に実行されると、arm_init_application は ARM_RC_SUCCESS を戻します。
失敗した場合、エラーを示す errno と戻りコードが設定されます。考えられるすべての戻りコードのリストについては、
戻りコードを参照してください。失敗すると、application_id は、後で他のインターフェースの呼び出しに使用でき
るダミー値に設定されます。
このようなインターフェースは、application_id にはダミー値が入っていることを認識し、何も処理を実行せずに戻ります。
- エラー・コード
- 説明
- EFAULT
- このサービスのパラメーターに、呼び出し元がアクセスできないアドレスが
入っていました。
- EINVAL
- このサービスのパラメーターに、無効な値が入っていました。
- EMVSARMERROR
- ARM エラーが発生しました。
具体的なエラーの戻りコードを参照してください。
- EPERM
- 呼び出し元に適切な特権がありません。戻りコードは ARM_RC_AUTH_ERROR に設定されます。
- EMVSSAF2ERR
- セキュリティー・プロダクトでエラーが発生しました。