arm_end_application() — Undefines an ARM application

Standards

Standards / Extensions C or C++ Dependencies
  both  

Format

#include <sys/_Elmarm4.h>

arm_error_t arm_end_application(
/* [in/out] */  arm_appl_id_t   *application_id
/* [in]     */  arm_int32_t      flags,
/* [in]     */  arm_buffer4_t   *buffer4,
);

General description

Use arm_end_application() to close ARM API activity for a particular application. arm_end_application() invalidates the application handle returned by arm_init_application(), all transaction type handles associated with the application handle, and all transaction handles associated with those transaction types. Any further API calls using these handles will be rejected with a negative status return value. Information about transactions that were started and not yet stopped is discarded.
application_id
The handle passed to or returned by arm_init_application() for the application.
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. Currently no sub-buffers are defined for this function so a null pointer should be passed. If a buffer is passed eWLM ignores it.

Returned value

On success, arm_stop_transaction 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.

Related information