Skip to content

Commit 3340a60

Browse files
author
Junxian.Xiao
committed
forward declaration of client lib interfaces
1 parent fdd1c0a commit 3340a60

File tree

5 files changed

+120
-32
lines changed

5 files changed

+120
-32
lines changed

client/cpp_occlum/occlum_aecs_client_lib/occlum_aecs_client_main.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ static int DoGetSecret() {
8383
printf(" File Name: %s\n", FLAGS_output.c_str());
8484

8585
// Use the C-ABI interface to get secret
86-
int ret = aecs_client_get_secret_and_save_file(
86+
int ret = aecs_client_get_secret_file(
8787
FLAGS_endpoint.c_str(), aecs_ra_policy.c_str(), FLAGS_service.c_str(),
8888
FLAGS_secret.c_str(), secret_policy.data(), FLAGS_nonce.c_str(),
8989
FLAGS_output.c_str());
@@ -117,7 +117,7 @@ static int DoGetSecretPublic() {
117117
printf(" File Name: %s\n", FLAGS_output.c_str());
118118

119119
// Use the C-ABI interface to get secret public key
120-
int ret = aecs_client_get_public_secret_and_save_file(
120+
int ret = aecs_client_get_secret_public_file(
121121
FLAGS_endpoint.c_str(), aecs_ra_policy.c_str(), FLAGS_service.c_str(),
122122
FLAGS_secret.c_str(), secret_policy.data(), FLAGS_nonce.c_str(),
123123
FLAGS_output.c_str());

client/cpp_occlum/occlum_aecs_client_lib/src/occlum_aecs_client_lib.cpp

Lines changed: 43 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -166,28 +166,43 @@ TeeErrorCode aecs_client_destroy_secret(const std::string& aecs_server_endpoint,
166166
extern "C" {
167167
#endif
168168

169+
/// Get Secret for TEE application and Save to file
170+
int aecs_client_get_secret_file(const char* aecs_server_endpoint,
171+
const char* aecs_server_policy,
172+
const char* secret_service,
173+
const char* secret_name,
174+
const char* secret_policy,
175+
const char* nonce,
176+
const char* save_file_name) {
177+
TEE_CHECK_RETURN(aecs_client_get_secret_to_file(
178+
SAFESTR(aecs_server_endpoint), SAFESTR(aecs_server_policy),
179+
SAFESTR(secret_service), SAFESTR(secret_name), SAFESTR(secret_policy),
180+
SAFESTR(nonce), SAFESTR(save_file_name)));
181+
return 0;
182+
}
183+
169184
int aecs_client_get_secret_and_save_file(const char* aecs_server_endpoint,
170185
const char* aecs_server_policy,
171186
const char* secret_service,
172187
const char* secret_name,
173188
const char* secret_policy,
174189
const char* nonce,
175190
const char* save_file_name) {
176-
TEE_CHECK_RETURN(aecs_client_get_secret_to_file(
177-
SAFESTR(aecs_server_endpoint), SAFESTR(aecs_server_policy),
178-
SAFESTR(secret_service), SAFESTR(secret_name), SAFESTR(secret_policy),
179-
SAFESTR(nonce), SAFESTR(save_file_name)));
180-
return 0;
191+
TEE_FUNCTION_DEPRECATED();
192+
return aecs_client_get_secret_file(aecs_server_endpoint, aecs_server_policy,
193+
secret_service, secret_name, "", nonce,
194+
save_file_name);
181195
}
182196

183-
int aecs_client_get_secret_by_buffer(const char* aecs_server_endpoint,
184-
const char* aecs_server_policy,
185-
const char* secret_service,
186-
const char* secret_name,
187-
const char* secret_policy,
188-
const char* nonce,
189-
char* secret_outbuf,
190-
int* secret_outbuf_len) {
197+
/// Get Secret for TEE application and return it buffer
198+
int aecs_client_get_secret_buffer(const char* aecs_server_endpoint,
199+
const char* aecs_server_policy,
200+
const char* secret_service,
201+
const char* secret_name,
202+
const char* secret_policy,
203+
const char* nonce,
204+
char* secret_outbuf,
205+
int* secret_outbuf_len) {
191206
TEE_CHECK_VALIDBUF(secret_outbuf, secret_outbuf_len);
192207

193208
std::string secret_str;
@@ -204,6 +219,20 @@ int aecs_client_get_secret_by_buffer(const char* aecs_server_endpoint,
204219
return TEE_SUCCESS;
205220
}
206221

222+
int aecs_client_get_secret_by_buffer(const char* aecs_server_endpoint,
223+
const char* aecs_server_policy,
224+
const char* secret_service,
225+
const char* secret_name,
226+
const char* nonce,
227+
char* secret_outbuf,
228+
int* secret_outbuf_len) {
229+
TEE_FUNCTION_DEPRECATED();
230+
return aecs_client_get_secret_buffer(aecs_server_endpoint, aecs_server_policy,
231+
secret_service, secret_name, "", nonce,
232+
secret_outbuf, secret_outbuf_len);
233+
}
234+
235+
/// Create Trusted application bound secret
207236
int aecs_client_create_ta_secret(const char* aecs_server_endpoint,
208237
const char* aecs_server_policy,
209238
const char* secret_policy_file) {
@@ -213,6 +242,7 @@ int aecs_client_create_ta_secret(const char* aecs_server_endpoint,
213242
return 0;
214243
}
215244

245+
/// Destroy Trusted application bound secret
216246
int aecs_client_destroy_ta_secret(const char* aecs_server_endpoint,
217247
const char* aecs_server_policy,
218248
const char* secret_name) {

client/cpp_occlum/occlum_aecs_client_lib/src/occlum_aecs_client_lib_c.h

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,18 @@ extern "C" {
1818
* @param[in] file name to save secret
1919
* @return int Error code
2020
*/
21+
int aecs_client_get_secret_file(const char* aecs_server_endpoint,
22+
const char* aecs_server_policy,
23+
const char* secret_service,
24+
const char* secret_name,
25+
const char* secret_policy,
26+
const char* nonce,
27+
const char* save_file_name);
28+
2129
int aecs_client_get_secret_and_save_file(const char* aecs_server_endpoint,
2230
const char* aecs_server_policy,
2331
const char* secret_service,
2432
const char* secret_name,
25-
const char* secret_policy,
2633
const char* nonce,
2734
const char* save_file_name);
2835

@@ -39,11 +46,19 @@ int aecs_client_get_secret_and_save_file(const char* aecs_server_endpoint,
3946
* @param[inout] secret_outbuf_len max len as input/real len as output
4047
* @return int Error code
4148
*/
49+
int aecs_client_get_secret_buffer(const char* aecs_server_endpoint,
50+
const char* aecs_server_policy,
51+
const char* secret_service,
52+
const char* secret_name,
53+
const char* secret_policy,
54+
const char* nonce,
55+
char* secret_outbuf,
56+
int* secret_outbuf_len);
57+
4258
int aecs_client_get_secret_by_buffer(const char* aecs_server_endpoint,
4359
const char* aecs_server_policy,
4460
const char* secret_service,
4561
const char* secret_name,
46-
const char* secret_policy,
4762
const char* nonce,
4863
char* secret_outbuf,
4964
int* secret_outbuf_len);

client/cpp_occlum/occlum_aecs_client_lib/src/public_aecs_client_lib.cpp

Lines changed: 41 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -91,29 +91,43 @@ TeeErrorCode aecs_client_get_public_secret(
9191
extern "C" {
9292
#endif
9393

94+
/// Get secret public key for TEE application and Save to file
95+
int aecs_client_get_secret_public_file(const char* aecs_server_endpoint,
96+
const char* aecs_server_policy,
97+
const char* secret_service,
98+
const char* secret_name,
99+
const char* secret_policy,
100+
const char* nonce,
101+
const char* save_file_name) {
102+
TEE_CHECK_RETURN(aecs_client_get_public_secret_to_file(
103+
SAFESTR(aecs_server_endpoint), SAFESTR(aecs_server_policy),
104+
SAFESTR(secret_service), SAFESTR(secret_name), SAFESTR(secret_policy),
105+
SAFESTR(nonce), SAFESTR(save_file_name)));
106+
return 0;
107+
}
108+
94109
int aecs_client_get_public_secret_and_save_file(
95110
const char* aecs_server_endpoint,
96111
const char* aecs_server_policy,
97112
const char* secret_service,
98113
const char* secret_name,
99-
const char* secret_policy,
100114
const char* nonce,
101115
const char* save_file_name) {
102-
TEE_CHECK_RETURN(aecs_client_get_public_secret_to_file(
103-
SAFESTR(aecs_server_endpoint), SAFESTR(aecs_server_policy),
104-
SAFESTR(secret_service), SAFESTR(secret_name), SAFESTR(secret_policy),
105-
SAFESTR(nonce), SAFESTR(save_file_name)));
106-
return 0;
116+
TEE_FUNCTION_DEPRECATED();
117+
return aecs_client_get_secret_public_file(
118+
aecs_server_endpoint, aecs_server_policy, secret_service, secret_name, "",
119+
nonce, save_file_name);
107120
}
108121

109-
int aecs_client_get_public_secret_by_buffer(const char* aecs_server_endpoint,
110-
const char* aecs_server_policy,
111-
const char* secret_service,
112-
const char* secret_name,
113-
const char* secret_policy,
114-
const char* nonce,
115-
const char* secret_outbuf,
116-
int* secret_outbuf_len) {
122+
/// Get secret public key for TEE application and return it buffer
123+
int aecs_client_get_secret_public_buffer(const char* aecs_server_endpoint,
124+
const char* aecs_server_policy,
125+
const char* secret_service,
126+
const char* secret_name,
127+
const char* secret_policy,
128+
const char* nonce,
129+
const char* secret_outbuf,
130+
int* secret_outbuf_len) {
117131
TEE_CHECK_VALIDBUF(secret_outbuf, secret_outbuf_len);
118132

119133
std::string secret_str;
@@ -130,6 +144,19 @@ int aecs_client_get_public_secret_by_buffer(const char* aecs_server_endpoint,
130144
return TEE_SUCCESS;
131145
}
132146

147+
int aecs_client_get_public_secret_by_buffer(const char* aecs_server_endpoint,
148+
const char* aecs_server_policy,
149+
const char* secret_service,
150+
const char* secret_name,
151+
const char* nonce,
152+
const char* secret_outbuf,
153+
int* secret_outbuf_len) {
154+
TEE_FUNCTION_DEPRECATED();
155+
return aecs_client_get_secret_public_buffer(
156+
aecs_server_endpoint, aecs_server_policy, secret_service, secret_name, "",
157+
nonce, secret_outbuf, secret_outbuf_len);
158+
}
159+
133160
#ifdef __cplusplus
134161
}
135162
#endif

client/cpp_occlum/occlum_aecs_client_lib/src/public_aecs_client_lib_c.h

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,19 @@ extern "C" {
1818
* @param[in] file name to save secret public key
1919
* @return int Error code
2020
*/
21+
int aecs_client_get_secret_public_file(const char* aecs_server_endpoint,
22+
const char* aecs_server_policy,
23+
const char* secret_service,
24+
const char* secret_name,
25+
const char* secret_policy,
26+
const char* nonce,
27+
const char* save_file_name);
28+
2129
int aecs_client_get_public_secret_and_save_file(
2230
const char* aecs_server_endpoint,
2331
const char* aecs_server_policy,
2432
const char* secret_service,
2533
const char* secret_name,
26-
const char* secret_policy,
2734
const char* nonce,
2835
const char* save_file_name);
2936

@@ -40,6 +47,15 @@ int aecs_client_get_public_secret_and_save_file(
4047
* @param[inout] secret_outbuf_len max len as input/real len as output
4148
* @return int Error code
4249
*/
50+
int aecs_client_get_secret_public_buffer(const char* aecs_server_endpoint,
51+
const char* aecs_server_policy,
52+
const char* secret_service,
53+
const char* secret_name,
54+
const char* secret_policy,
55+
const char* nonce,
56+
const char* secret_outbuf,
57+
int* secret_outbuf_len);
58+
4359
int aecs_client_get_public_secret_by_buffer(const char* aecs_server_endpoint,
4460
const char* aecs_server_policy,
4561
const char* secret_service,

0 commit comments

Comments
 (0)