Standards
Standards / Extensions |
C or C++ |
Dependencies |
|
both |
|
Format
#include <sys/_Elmarm4.h>
arm_error_t arm_stop_transaction(
/* [in] */ arm_start_handle_t start_handle,
/* [in] */ arm_int32_t transaction_status,
/* [in] */ arm_int32_t flags,
/* [in] */ arm_buffer4_t *buffer4,
);
General description
Use arm_stop_transaction()
to mark the end of execution of a transaction.
If any threads
are bound to the transaction, arm_stop_transaction() unbinds them.
If the transaction is in a blocked state due to outstanding arm_blocked()
calls, then arm_stop_transaction() considers the transaction to be
unblocked at the time it is stopped. This cleanup processing exists
for recovery purposes. Applications are expected to use arm_unbind_thread()
and arm_unblocked() as part of normal processing.
- start_handle
- The handle returned by arm_start_transaction() for the transaction.
- transaction_status
- The completion code of the transaction.
- ARM_STATUS_GOOD
- Transaction successful.
- ARM_STATUS_ABORT
- Transaction aborted This value indicates there was a fundamental
failure in the system; for example, a communications timeout or a
database operation error.
- ARM_STATUS_FAILED
- Transaction failed. This value indicates the system worked properly
but the transaction was not successful; for example, when making an
airline reservation, no seats are available on the requested flight.
- ARM_STATUS_UNKNOWN
- Transaction status is unknown.
.
- flags
- Reserved for future use. The argument must be set to 0.
- buffer4
- A pointer to a buffer that identifies one or more sub-buffers
containing additional data. A null pointer can be passed if no additional
data is required. The proposed ARM4 standard defines a metric values
sub-buffer for this function but eWLM does not process metrics. If
a buffer is passed eWLM ignores it.
Returned value
On success, arm_end_application
returns ARM_RC_SUCCESS. On failure, the errno and return code are
set to indicate the error. See
Return code for
the list of all possible return codes.
- Error Code
- Description
- EFAULT
- A parameter of this service contained an address that was not
accessible to the caller.
- EINVAL
- A parameter of this service contained a value that was not valid.
- EMVSARMERROR
- An ARM error occurred. Refer to the return code for the specific
error.
- EPERM
- The caller does not have the appropriate privileges. The return
code is set to ARM_RC_AUTH_ERROR.
- EMVSSAF2ERR
- An error occurred in the security product.