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 ATTEST_MOCK_H 17 #define ATTEST_MOCK_H 18 19 #include <stdint.h> 20 #include "attest_adapter_mock.h" 21 #include "attest_adapter_oem.h" 22 23 #ifdef __cplusplus 24 #if __cplusplus 25 extern "C" { 26 #endif 27 #endif /* __cplusplus */ 28 29 #define ATTEST_MOCK_TOKEN "6PkCJZDsUfuqqdvxTLv8ZH+FqASsUInUV4y9IPLHtPyJt0v0RrwtVaLHpEunfMjD,\ 30 yCbOb5Y3M4sgXEqhyTqIXwDl4JEWTmEfWr3Vov0NamgsBmzMCHXsM4xH3pNT+ZMd,XXoIPrlEu6EV+/rI,1000" 31 32 #define ATTEST_MOCK_DEVICE_PARA_VERSION_ID "versionId" 33 #define ATTEST_MOCK_DEVICE_PARA_VERSION_HASH "buildRootHash" 34 #define ATTEST_MOCK_DEVICE_PARA_DISPLAY_VERSION "displayVersion" 35 #define ATTEST_MOCK_DEVICE_PARA_MANU_STR "manufacture" 36 #define ATTEST_MOCK_DEVICE_PARA_DEVICE_MODEL "productModel" 37 #define ATTEST_MOCK_DEVICE_PARA_BRAND "brand" 38 #define ATTEST_MOCK_DEVICE_PARA_PATCH_TAG "securityPatchTag" 39 #define ATTEST_MOCK_DEVICE_PARA_SERIAL "serial" 40 41 #define ATTEST_MOCK_NETWORK_PARA_CURRENTTIME "currentTime" 42 #define ATTEST_MOCK_NETWORK_PARA_CHALLENGE "challenge" 43 #define ATTEST_MOCK_NETWORK_PARA_ERRCODE "errcode" 44 #define ATTEST_MOCK_NETWORK_PARA_TICKET "ticket" 45 #define ATTEST_MOCK_NETWORK_PARA_UUID "uuid" 46 #define ATTEST_MOCK_NETWORK_PARA_AUTHSTATS "authStats" 47 #define ATTEST_MOCK_NETWORK_PARA_TOKEN "token" 48 49 #define ATTEST_MOCK_NETWORK_RESPONSE "response" 50 #define ATTEST_MOCK_NETWORK_AUTHCHANGE "authStatusChange" 51 #define ATTEST_MOCK_NETWORK_RESET "resetDevice" 52 #define ATTEST_MOCK_NETWORK_AUTH "authDevice" 53 #define ATTEST_MOCK_NETWORK_ACTIVE "activeToken" 54 55 #define AUTH_SATUS_LEN 500 56 #define TICKET_LEN 100 57 58 typedef struct AttestDeviceMockData { 59 const char* mockVersionId; 60 const char* mockVersionHash; 61 const char* mockDisplayVersion; 62 const char* mockManuStr; 63 const char* mockDeviceModel; 64 const char* mockBrand; 65 const char* mockPatchTag; 66 const char* mockSerial; 67 } AttestDeviceMockData; 68 69 typedef struct AuthStatusChangeMockData { 70 long long currentTime; 71 const char* challenge; 72 int errCode; 73 } AuthStatusChangeMockData; 74 75 typedef struct ResetNetMockData { 76 long long currentTime; 77 const char* challenge; 78 int errCode; 79 int responseErrCode; 80 } ResetNetMockData; 81 82 typedef struct AuthNetMockData { 83 long long currentTime; 84 const char* challenge; 85 int errCode; 86 const char* ticket; 87 const char* uuid; 88 const char* authStats; 89 const char* token; 90 int responseErrCode; 91 } AuthNetMockData; 92 93 typedef struct ActiveNetMockData { 94 long long currentTime; 95 const char* challenge; 96 int errCode; 97 int responseErrCode; 98 } ActiveNetMockData; 99 100 typedef struct AttestNetworkMockData { 101 struct AuthStatusChangeMockData authStatusChange; 102 struct ResetNetMockData resetNetMockData; 103 struct AuthNetMockData authDevice; 104 struct ActiveNetMockData activeToken; 105 } AttestNetworkMockData; 106 107 typedef struct AttestMockData { 108 struct AttestDeviceMockData deviceMockData; 109 struct AttestNetworkMockData NetworkMockData; 110 } AttestMockData; 111 112 // 初始化MOCKData 113 int32_t InitMockData(AttestMockData *attestMockData); 114 115 // 初始化NetWorkData 116 int32_t WriteNetWorkMock(AttestNetworkMockData *NetworkMockData); 117 118 #ifdef __cplusplus 119 #if __cplusplus 120 } 121 #endif 122 #endif /* __cplusplus */ 123 124 #endif