arm_get_correlator_max_length() — Get the max length of the transaction correlator

Standards

Standards / Extensions C or C++ Dependencies
  both  

Format

#include <sys/_Elmarm4.h>

arm_int32_t arm_get_correlator_max_length();

General description

Returns the size of the buffer required for the correlator returned by arm_start_transaction().
Note: The size applies only to correlators returned by arm_start_transaction(). It does not necessarily apply to parent correlators received from other applications, which may have been created by another ARM implementation and may have a different maximum size. The ARM 2.0 and ARM 3.0 standards defined the maximum size of the correlator for any implementation as 168 bytes. However the proposed ARM 4.0 standard most likely will drop this restriction and implementations will be allowed to create a correlator of any length.

Returned value

On success, arm_iget_correlator_max_length returns a positive number representing the maximum correlator length. 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.