cx_errors.h Previous Back to the files list Error codes related to cryptography and arithmetic operations. More... Macros #define CX_CHECK(call) Checks the error code of a function. More... #define CX_CHECK_IGNORE_CARRY(call) Checks the error code of a function and ignore it if CX_CARRY. More... #define CX_OK 0x00000000 Success. More... #define CX_CARRY 0xFFFFFF21 There exists a carry at the end of the operation. More... #define CX_LOCKED 0xFFFFFF81 Multi Precision Integer processor is locked: operations can be done. More... #define CX_UNLOCKED 0xFFFFFF82 Multi Precision Integer processor is unlocked: operations can't be done. More... #define CX_NOT_LOCKED 0xFFFFFF83 Multi Precision Integer processor is not locked: it cannot be unlocked. More... #define CX_NOT_UNLOCKED 0xFFFFFF84 Multi Precision Integer processor is already locked: it cannot be locked. More... #define CX_INTERNAL_ERROR 0xFFFFFF85 Internal error. More... #define CX_INVALID_PARAMETER_SIZE 0xFFFFFF86 A parameter has an invalid size. More... #define CX_INVALID_PARAMETER_VALUE 0xFFFFFF87 A parameter has an invalid value. More... #define CX_INVALID_PARAMETER 0xFFFFFF88 A parameter is invalid. More... #define CX_NOT_INVERTIBLE 0xFFFFFF89 A value is not invertible. More... #define CX_OVERFLOW 0xFFFFFF8A A value overflow occurred. More... #define CX_MEMORY_FULL 0xFFFFFF8B Memory is full: allocation is not possible anymore. More... #define CX_NO_RESIDUE 0xFFFFFF8C A quadratic residue cannot be computed. More... #define CX_EC_INFINITE_POINT 0xFFFFFF41 Point at infinity is hit. More... #define CX_EC_INVALID_POINT 0xFFFFFFA2 Point is invalid: it does not belong to the curve. More... #define CX_EC_INVALID_CURVE 0xFFFFFFA3 Curve is invalid. More... Typedefs typedef uint32_t cx_err_t Type of error code. More... Detailed Description Error codes related to cryptography and arithmetic operations. Macro Definition Documentation CX_CARRY #define CX_CARRY 0xFFFFFF21 There exists a carry at the end of the operation. CX_CHECK #define CX_CHECK ( call) Checks the error code of a function. CX_CHECK_IGNORE_CARRY #define CX_CHECK_IGNORE_CARRY ( call) Checks the error code of a function and ignore it if CX_CARRY. CX_EC_INFINITE_POINT #define CX_EC_INFINITE_POINT 0xFFFFFF41 Point at infinity is hit. CX_EC_INVALID_CURVE #define CX_EC_INVALID_CURVE 0xFFFFFFA3 Curve is invalid. CX_EC_INVALID_POINT #define CX_EC_INVALID_POINT 0xFFFFFFA2 Point is invalid: it does not belong to the curve. CX_INTERNAL_ERROR #define CX_INTERNAL_ERROR 0xFFFFFF85 Internal error. CX_INVALID_PARAMETER #define CX_INVALID_PARAMETER 0xFFFFFF88 A parameter is invalid. CX_INVALID_PARAMETER_SIZE #define CX_INVALID_PARAMETER_SIZE 0xFFFFFF86 A parameter has an invalid size. CX_INVALID_PARAMETER_VALUE #define CX_INVALID_PARAMETER_VALUE 0xFFFFFF87 A parameter has an invalid value. CX_LOCKED #define CX_LOCKED 0xFFFFFF81 Multi Precision Integer processor is locked: operations can be done. CX_MEMORY_FULL #define CX_MEMORY_FULL 0xFFFFFF8B Memory is full: allocation is not possible anymore. CX_NO_RESIDUE #define CX_NO_RESIDUE 0xFFFFFF8C A quadratic residue cannot be computed. CX_NOT_INVERTIBLE #define CX_NOT_INVERTIBLE 0xFFFFFF89 A value is not invertible. CX_NOT_LOCKED #define CX_NOT_LOCKED 0xFFFFFF83 Multi Precision Integer processor is not locked: it cannot be unlocked. CX_NOT_UNLOCKED #define CX_NOT_UNLOCKED 0xFFFFFF84 Multi Precision Integer processor is already locked: it cannot be locked. CX_OK #define CX_OK 0x00000000 Success. CX_OVERFLOW #define CX_OVERFLOW 0xFFFFFF8A A value overflow occurred. CX_UNLOCKED #define CX_UNLOCKED 0xFFFFFF82 Multi Precision Integer processor is unlocked: operations can't be done. Typedef Documentation cx_err_t typedef uint32_t cx_err_t Type of error code. Previous Back to the files list Did you find this page helpful? How would you improve this page for developers? I am a developer. Contributors will be chosen randomly to receive rewards. Check this box to send your email and participate. Ledger collects your email address to send you rewards for your contribution to improve the Developer Portal documentation. Learn more about how we manage your data and your rights. By providing your email address, you consent that Ledger may contact you for rewards delivery purposes. If you are part of the randomly selected contributors, we will send you an email to ask for your physical address and if necessary, ask you for additional information on the suggestion you made. Your information will only be available to Ledger and will be retained for no longer than 90 days. It may be transferred to non-European countries that ensure an adequate level of protection or under the standard contractual clauses adopted by the EU Commission. Please note that you may withdraw your consent at any time, access your data and request their rectification or deletion. You may also request the limitation of the processing of your data. To exercise your rights or for any question on the processing of your data, please contact LEDGER’s Data Protection Officer here. If nevertheless you believe LEDGER did not adequately address your concerns and mishandled your data, you may lodge a complaint with the personal data protection authority of your country.