aboutsummaryrefslogtreecommitdiff
path: root/lib/sec_library/include/sec_crypto_errcode.h
diff options
context:
space:
mode:
authorthead_admin <occ_thead@service.alibaba.com>2022-09-13 11:04:33 +0800
committerthead_admin <occ_thead@service.alibaba.com>2022-09-13 11:04:33 +0800
commit43db9e00d5837c100c0b2fbbee64a08ab807d1e0 (patch)
treeb40c0eed02935b6682e8c5c975e3016b6b2f55fe /lib/sec_library/include/sec_crypto_errcode.h
Linux_SDK_V0.9.5Linux_SDK_V0.9.5
Diffstat (limited to 'lib/sec_library/include/sec_crypto_errcode.h')
-rwxr-xr-xlib/sec_library/include/sec_crypto_errcode.h92
1 files changed, 92 insertions, 0 deletions
diff --git a/lib/sec_library/include/sec_crypto_errcode.h b/lib/sec_library/include/sec_crypto_errcode.h
new file mode 100755
index 00000000..04b2e561
--- /dev/null
+++ b/lib/sec_library/include/sec_crypto_errcode.h
@@ -0,0 +1,92 @@
+/*
+ * Copyright (C) 2019-2021 Alibaba Group Holding Limited
+ */
+
+#ifndef _SC_ERRCODE_H
+#define _SC_ERRCODE_H
+
+/* common */
+
+#ifndef SC_OK
+#define SC_ERROR_BASE 0x10000000
+#define SC_OK 0
+#define SC_FAIL SC_ERROR_BASE + 1
+#define SC_MEM_OVERFLOW SC_ERROR_BASE + 2
+#define SC_PARAM_INV SC_ERROR_BASE + 3
+#define SC_OPERATION_BUSY SC_ERROR_BASE + 4
+#define SC_AUTH_FAIL SC_ERROR_BASE + 5
+#define SC_CRYPT_FAIL SC_ERROR_BASE + 6
+#define SC_NOT_SUPPORT SC_ERROR_BASE + 7
+#define SC_INVALID_PADDING SC_ERROR_BASE + 8
+#define SC_BAD_INPUT_DATA SC_ERROR_BASE + 9
+#define SC_INVALID_KEY_LENGTH SC_ERROR_BASE + 10
+#define SC_INVALID_INPUT_LENGTH SC_ERROR_BASE + 11
+#define SC_FEATURE_UNAVAILABLE SC_ERROR_BASE + 12
+#define SC_HW_ACCEL_FAILED SC_ERROR_BASE + 13
+#define SC_CCM_AUTH_FAILED SC_ERROR_BASE + 14
+#define SC_KEY_GEN_FAILED SC_ERROR_BASE + 15
+#define SC_KEY_CHECK_FAILED SC_ERROR_BASE + 16
+#define SC_PUBLIC_FAILED SC_ERROR_BASE + 17
+#define SC_PRIVATE_FAILED SC_ERROR_BASE + 18
+#define SC_VERIFY_FAILED SC_ERROR_BASE + 19
+#define SC_OUTPUT_TOO_LARGE SC_ERROR_BASE + 20
+#define SC_RNG_FAILED SC_ERROR_BASE + 21
+#define SC_BUFFER_TOO_SMALL SC_ERROR_BASE + 22
+#define SC_INVALID_FORMAT SC_ERROR_BASE + 23
+#define SC_ALLOC_FAILED SC_ERROR_BASE + 24
+#define SC_DRV_FAILED SC_ERROR_BASE + 25
+
+#define CHECK_RET(x) \
+ do { \
+ if (!(x)) { \
+ LOG_CRIT("err %s, %d\n", __FUNCTION__, __LINE__); \
+ return; \
+ } \
+ } while (0)
+
+#define CHECK_RET_WITH_RET(x, ret) \
+ do { \
+ if (!(x)) { \
+ LOG_CRIT("err %s, %d\n", __FUNCTION__, __LINE__); \
+ return ret; \
+ } \
+ } while (0)
+
+#define CHECK_16byte_ALIGNMENT(_i, ret) \
+ if ((((uint64_t)_i) & 0xF) != 0) { \
+ LOG_CRIT("err %s, %d\n", __FUNCTION__, __LINE__); \
+ return ret; \
+ }
+
+#define CHECK_32byte_ALIGNMENT(_i, ret) \
+ if ((((uint64_t)_i) & 0x1F) != 0) { \
+ LOG_CRIT("err %s, %d\n", __FUNCTION__, __LINE__); \
+ return ret; \
+ }
+
+#define CHECK_64byte_ALIGNMENT(_i, ret) \
+ if ((((uint64_t)_i) & 0x3F) != 0) { \
+ LOG_CRIT("err %s, %d\n", __FUNCTION__, __LINE__); \
+ return ret; \
+ }
+
+#define CHECK_PARAM_RET(c, r) \
+ do { \
+ if (!(c)) { \
+ LOG_CRIT("err %s, %d\n", __FUNCTION__, __LINE__); \
+ return (r); \
+ } \
+ } while (0)
+
+#define CHECK_RET_VOID(c) \
+ do { \
+ if (!(c)) { \
+ LOG_CRIT("err %s, %d\n", __FUNCTION__, __LINE__); \
+ return; \
+ } \
+ } while (0)
+
+#define CHECK_PARAM CHECK_PARAM_RET
+#endif
+
+#endif