1 /* 2 * Copyright (c) 2023-2024 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef CODE_SIGN_ERR_CODE_H 17 #define CODE_SIGN_ERR_CODE_H 18 19 enum CommonErrCode { 20 CS_SUCCESS = 0, 21 CS_ERR_MEMORY = -0x1, 22 CS_ERR_NO_PERMISSION = -0x2, 23 CS_ERR_NO_SIGNATURE = -0x3, 24 CS_ERR_INVALID_SIGNATURE = -0x4 25 }; 26 27 enum FileOperationErrCode { 28 CS_ERR_FILE_INVALID = -0x100, 29 CS_ERR_FILE_PATH = -0x101, 30 CS_ERR_FILE_OPEN = -0x102, 31 CS_ERR_FILE_READ = -0x103, 32 CS_ERR_EXTRACT_FILES = -0x104 33 }; 34 35 enum SignErrCode { 36 CS_ERR_PARAM_INVALID = -0x200, 37 CS_ERR_HUKS_OBTAIN_CERT = -0x201, 38 CS_ERR_HUKS_SIGN = -0x202, 39 CS_ERR_HUKS_INIT_KEY = -0x203, 40 CS_ERR_COMPUTE_DIGEST = -0x204, 41 CS_ERR_NO_OWNER_ID = -0x205, 42 CS_ERR_INIT_LOCAL_CERT = -0x206, 43 CS_ERR_VERIFY_CERT = -0x207 44 }; 45 46 enum OpenSSLErrCode { 47 CS_ERR_OPENSSL_LOAD_CERT = -0x210, 48 CS_ERR_OPENSSL_CREATE_PKCS7_DATA = -0x211, 49 CS_ERR_OPENSSL_PKCS7 = -0x212, 50 CS_ERR_OPENSSL_OID = -0x213, 51 CS_ERR_OPENSSL_BIO = -0x214, 52 }; 53 54 enum VerifyErrCode { 55 CS_ERR_ENABLE = -0x300, 56 CS_ERR_FSVREITY_NOT_SUPPORTED = -0x301, 57 CS_ERR_FSVERITY_NOT_ENABLED = -0x302, 58 CS_ERR_INVALID_OWNER_ID = -0x303, 59 CS_CODE_SIGN_NOT_EXISTS = -0x304, 60 CS_ERR_PROFILE = -0x305, 61 CS_ERR_ENABLE_TIMEOUT = -0x306, 62 CS_ERR_FSVREITY_NOT_ENABLED = -0x307, 63 }; 64 65 enum IPCErrCode { 66 CS_ERR_IPC_MSG_INVALID = -0x500, 67 CS_ERR_IPC_WRITE_DATA = -0x501, 68 CS_ERR_IPC_READ_DATA = -0x502, 69 CS_ERR_REMOTE_CONNECTION = -0x503, 70 CS_ERR_SA_GET_SAMGR = -0x504, 71 CS_ERR_SA_GET_PROXY = -0x505, 72 CS_ERR_SA_LOAD_FAILED = -0x506, 73 CS_ERR_SA_LOAD_TIMEOUT = -0x507 74 }; 75 76 enum SignBlockErrCode { 77 CS_SUCCESS_END = 1, 78 CS_ERR_BLOCK_MAGIC = -0x600, 79 CS_ERR_BLOCK_VERSION = -0x601, 80 CS_ERR_BLOCK_SEG_NUM = -0x602, 81 CS_ERR_BLOCK_SIZE = -0x603, 82 CS_ERR_SEGMENT_FSVERITY_TYPE = -0x604, 83 CS_ERR_SEGMENT_HAP_TYPE = -0x605, 84 CS_ERR_SEGMENT_SO_TYPE = -0x606, 85 CS_ERR_SEGMENT_FSVERITY_OFFSET = -0x607, 86 CS_ERR_SEGMENT_HAP_OFFSET = -0x608, 87 CS_ERR_SEGMENT_SO_OFFSET = -0x609, 88 CS_ERR_FSVERITY_MAGIC = -0x610, 89 CS_ERR_FSVERITY_VERSION = -0x611, 90 CS_ERR_FSVERITY_BLOCK_SIZE = 0x612, 91 CS_ERR_HAP_MAGIC = -0x613, 92 CS_ERR_HAP_EXTERNSION = -0x614, 93 CS_ERR_SO_MAGIC = -0x615, 94 CS_ERR_SO_SECTION_NUM = -0x616, 95 CS_ERR_SO_FILE_OFFSET = -0x617, 96 CS_ERR_SO_FILE_SIZE = -0x618, 97 CS_ERR_SO_SIGN_OFFSET = -0x619, 98 CS_ERR_SO_SIGN_SIZE = -0x620, 99 CS_ERR_SIGN_ADDR_ALIGN = -0x621, 100 CS_ERR_SIGN_EXTENSION_OFFSET_ALIGN = -0x622, 101 }; 102 103 enum JitCodeSignErrCode { 104 CS_ERR_NO_SIGNER = -0x700, 105 CS_ERR_PATCH_INVALID = -0x701, 106 CS_ERR_JIT_SIGN_SIZE = -0x702, 107 CS_ERR_TMP_BUFFER = -0x703, 108 CS_ERR_VALIDATE_CODE = -0x704, 109 CS_ERR_JITFORT_IN = -0x705, 110 CS_ERR_JITFORT_OUT = -0x706, 111 CS_ERR_SIGN_OFFSET = -0x707, 112 CS_ERR_INVALID_DATA = -0x708, 113 CS_ERR_JIT_MEMORY = -0x709, 114 CS_ERR_UNSUPPORT = -0x7ff, 115 }; 116 #endif 117