1 /* 2 * Copyright (C) 2022 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 HCF_RESULT_H 17 #define HCF_RESULT_H 18 19 typedef enum HcfResult { 20 /** Indicates success. */ 21 HCF_SUCCESS = 0, 22 /** Indicates that input params is invalid . */ 23 HCF_INVALID_PARAMS = -10001, 24 /** Indicates that function or algorithm is not supported. */ 25 HCF_NOT_SUPPORT = -10002, 26 27 /** Indicates that memory malloc fails. */ 28 HCF_ERR_MALLOC = 20001, 29 /** Indicates that memory copy fails. */ 30 HCF_ERR_COPY = -20002, 31 32 /** Indicates that third part has something wrong. */ 33 HCF_ERR_CRYPTO_OPERATION = -30001, 34 /* Indicates that cert signature check fails. */ 35 HCF_ERR_CERT_SIGNATURE_FAILURE = -30002, 36 /* Indicates that cert is not yet valid. */ 37 HCF_ERR_CERT_NOT_YET_VALID = -30003, 38 /* Indicates that cert has expired. */ 39 HCF_ERR_CERT_HAS_EXPIRED = -30004, 40 /* Indicates that we can not get the untrusted cert's issuer. */ 41 HCF_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY = -30005, 42 /* Key usage does not include certificate sign. */ 43 HCF_ERR_KEYUSAGE_NO_CERTSIGN = -30006, 44 /* Key usage does not include digital sign. */ 45 HCF_ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE = -30007, 46 } HcfResult; 47 48 #endif 49