• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# native_huks_param.h
2
3<!--Kit: Universal Keystore Kit-->
4<!--Subsystem: Security-->
5<!--Owner: @wutiantian-gitee-->
6<!--Designer: @HighLowWorld-->
7<!--Tester: @wxy1234564846-->
8<!--Adviser: @zengyawen-->
9
10## 概述
11
12提供参数集构造、使用和销毁的API。
13
14**引用文件:** <huks/native_huks_param.h>
15
16**库:** libhuks_ndk.z.so
17
18**系统能力:** SystemCapability.Security.Huks.Core
19
20在API 9-19,系统能力为SystemCapability.Security.Huks;从API 20起,系统能力变更为SystemCapability.Security.Huks.Core
21
22**起始版本:** 9
23
24**相关模块:** [HuksParamSetApi](capi-huksparamsetapi.md)
25
26## 汇总
27
28### 函数
29
30| 名称 | 描述 |
31| -- | -- |
32| [struct OH_Huks_Result OH_Huks_InitParamSet(struct OH_Huks_ParamSet **paramSet)](#oh_huks_initparamset) | 初始化参数集。 |
33| [struct OH_Huks_Result OH_Huks_AddParams(struct OH_Huks_ParamSet *paramSet, const struct OH_Huks_Param *params, uint32_t paramCnt)](#oh_huks_addparams) | 添加参数到参数集里面。 |
34| [struct OH_Huks_Result OH_Huks_BuildParamSet(struct OH_Huks_ParamSet **paramSet)](#oh_huks_buildparamset) | 构造参数集。 |
35| [void OH_Huks_FreeParamSet(struct OH_Huks_ParamSet **paramSet)](#oh_huks_freeparamset) | 销毁参数集。 |
36| [struct OH_Huks_Result OH_Huks_CopyParamSet(const struct OH_Huks_ParamSet *fromParamSet, uint32_t fromParamSetSize, struct OH_Huks_ParamSet **paramSet)](#oh_huks_copyparamset) | 复制参数集(深拷贝)。 |
37| [struct OH_Huks_Result OH_Huks_GetParam(const struct OH_Huks_ParamSet *paramSet, uint32_t tag, struct OH_Huks_Param **param)](#oh_huks_getparam) | 从参数集中获取参数。 |
38| [struct OH_Huks_Result OH_Huks_FreshParamSet(struct OH_Huks_ParamSet *paramSet, bool isCopy)](#oh_huks_freshparamset) | 刷新参数集内[OH_Huks_Blob](capi-hukstypeapi-oh-huks-blob.md)类型的数据。 |
39| [struct OH_Huks_Result OH_Huks_IsParamSetTagValid(const struct OH_Huks_ParamSet *paramSet)](#oh_huks_isparamsettagvalid) | 检查参数集中的参数是否有效、是否有重复。 |
40| [struct OH_Huks_Result OH_Huks_IsParamSetValid(const struct OH_Huks_ParamSet *paramSet, uint32_t size)](#oh_huks_isparamsetvalid) | 检查参数集大小是否有效。 |
41| [struct OH_Huks_Result OH_Huks_CheckParamMatch(const struct OH_Huks_Param *baseParam, const struct OH_Huks_Param *param)](#oh_huks_checkparammatch) | 比较两个参数是否相同。 |
42| [void OH_Huks_FreeKeyAliasSet(struct OH_Huks_KeyAliasSet *keyAliasSet)](#oh_huks_freekeyaliasset) | 销毁参数集。 |
43
44## 函数说明
45
46### OH_Huks_InitParamSet()
47
48```
49struct OH_Huks_Result OH_Huks_InitParamSet(struct OH_Huks_ParamSet **paramSet)
50```
51
52**描述**
53
54初始化参数集。
55
56**起始版本:** 9
57
58
59**参数:**
60
61| 参数项 | 描述 |
62| -- | -- |
63| [struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) **paramSet | 指向要初始化的参数集的指针地址。 |
64
65**返回:**
66
67| 类型 | 说明 |
68| -- | -- |
69| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :初始化操作成功。<br>         OH_HUKS_ERR_CODE_INSUFFICIENT_MEMORY = 12000014 :内存不足。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :参数paramSet无效。 |
70
71### OH_Huks_AddParams()
72
73```
74struct OH_Huks_Result OH_Huks_AddParams(struct OH_Huks_ParamSet *paramSet,const struct OH_Huks_Param *params, uint32_t paramCnt)
75```
76
77**描述**
78
79添加参数到参数集里面。
80
81**起始版本:** 9
82
83
84**参数:**
85
86| 参数项 | 描述 |
87| -- | -- |
88| [struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) *paramSet | 指向要被添加参数的参数集的指针。 |
89| [const struct OH_Huks_Param](capi-hukstypeapi-oh-huks-param.md) *params | 指向要添加的参数数组的指针。 |
90| uint32_t paramCnt | 待添加参数数组的参数个数。 |
91
92**返回:**
93
94| 类型 | 说明 |
95| -- | -- |
96| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :操作成功。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :params为null或者paramSet无效。 |
97
98### OH_Huks_BuildParamSet()
99
100```
101struct OH_Huks_Result OH_Huks_BuildParamSet(struct OH_Huks_ParamSet **paramSet)
102```
103
104**描述**
105
106构造参数集。
107
108**起始版本:** 9
109
110
111**参数:**
112
113| 参数项 | 描述 |
114| -- | -- |
115| [struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) **paramSet | 指向要被正式构造的参数集的指针地址。 |
116
117**返回:**
118
119| 类型 | 说明 |
120| -- | -- |
121| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :操作成功。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :参数paramSet无效。<br>         OH_HUKS_ERR_CODE_INSUFFICIENT_MEMORY = 12000014 :内存不足。 |
122
123### OH_Huks_FreeParamSet()
124
125```
126void OH_Huks_FreeParamSet(struct OH_Huks_ParamSet **paramSet)
127```
128
129**描述**
130
131销毁参数集。
132
133**起始版本:** 9
134
135
136**参数:**
137
138| 参数项 | 描述 |
139| -- | -- |
140| [struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) **paramSet | 指向要被销毁的参数集的指针地址。 |
141
142### OH_Huks_CopyParamSet()
143
144```
145struct OH_Huks_Result OH_Huks_CopyParamSet(const struct OH_Huks_ParamSet *fromParamSet,uint32_t fromParamSetSize, struct OH_Huks_ParamSet **paramSet)
146```
147
148**描述**
149
150复制参数集(深拷贝)。
151
152**起始版本:** 9
153
154
155**参数:**
156
157| 参数项 | 描述 |
158| -- | -- |
159| [const struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) *fromParamSet | 指向要被复制的参数集的指针。 |
160| uint32_t fromParamSetSize | 被复制的参数集占用内存的大小。 |
161| [struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) **paramSet | 指向生成新的参数集的指针地址。 |
162
163**返回:**
164
165| 类型 | 说明 |
166| -- | -- |
167| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :操作成功。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :参数fromParamSet、fromParamSetSize、paramSet有一个无效。<br>         OH_HUKS_ERR_CODE_INSUFFICIENT_MEMORY = 12000014 :内存不足。 |
168
169### OH_Huks_GetParam()
170
171```
172struct OH_Huks_Result OH_Huks_GetParam(const struct OH_Huks_ParamSet *paramSet, uint32_t tag,struct OH_Huks_Param **param)
173```
174
175**描述**
176
177从参数集中获取参数。
178
179**起始版本:** 9
180
181
182**参数:**
183
184| 参数项 | 描述 |
185| -- | -- |
186| [const struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) *paramSet | 指向参数集的指针。 |
187| uint32_t tag | 要获取的对应参数的值。 |
188| [struct OH_Huks_Param](capi-hukstypeapi-oh-huks-param.md) **param | 指向获取到的参数的指针地址。 |
189
190**返回:**
191
192| 类型 | 说明 |
193| -- | -- |
194| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :操作成功。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :参数paramSet或者param无效,或者参数param不在paramSet里面。 |
195
196### OH_Huks_FreshParamSet()
197
198```
199struct OH_Huks_Result OH_Huks_FreshParamSet(struct OH_Huks_ParamSet *paramSet, bool isCopy)
200```
201
202**描述**
203
204刷新参数集内[OH_Huks_Blob](capi-hukstypeapi-oh-huks-blob.md)类型的数据。
205
206**起始版本:** 9
207
208
209**参数:**
210
211| 参数项 | 描述 |
212| -- | -- |
213| [struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) *paramSet | 指向参数集的指针。 |
214| bool isCopy | 如果为true,刷新[OH_Huks_Blob](capi-hukstypeapi-oh-huks-blob.md)类型数据的地址并复制到参数集。如果为false,只会刷新[OH_Huks_Blob](capi-hukstypeapi-oh-huks-blob.md)类型数据的地址。 |
215
216**返回:**
217
218| 类型 | 说明 |
219| -- | -- |
220| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :操作成功。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :参数paramSet无效。<br>         OH_HUKS_ERR_CODE_INSUFFICIENT_MEMORY = 12000014 :内存不足。 |
221
222### OH_Huks_IsParamSetTagValid()
223
224```
225struct OH_Huks_Result OH_Huks_IsParamSetTagValid(const struct OH_Huks_ParamSet *paramSet)
226```
227
228**描述**
229
230检查参数集中的参数是否有效、是否有重复。
231
232**起始版本:** 9
233
234
235**参数:**
236
237| 参数项 | 描述 |
238| -- | -- |
239| [const struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) *paramSet | 指向参数集的指针。 |
240
241**返回:**
242
243| 类型 | 说明 |
244| -- | -- |
245| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :paramSet中的参数都有效。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :参数paramSet无效或者参数集中有无效、重复、不正确的标签。 |
246
247### OH_Huks_IsParamSetValid()
248
249```
250struct OH_Huks_Result OH_Huks_IsParamSetValid(const struct OH_Huks_ParamSet *paramSet, uint32_t size)
251```
252
253**描述**
254
255检查参数集大小是否有效。
256
257**起始版本:** 9
258
259
260**参数:**
261
262| 参数项 | 描述 |
263| -- | -- |
264| [const struct OH_Huks_ParamSet](capi-hukstypeapi-oh-huks-paramset.md) *paramSet | 指向参数集的指针。 |
265| uint32_t size | 参数集占用的内存大小。 |
266
267**返回:**
268
269| 类型 | 说明 |
270| -- | -- |
271| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :参数集大小合法。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :参数paramSet无效。 |
272
273### OH_Huks_CheckParamMatch()
274
275```
276struct OH_Huks_Result OH_Huks_CheckParamMatch(const struct OH_Huks_Param *baseParam, const struct OH_Huks_Param *param)
277```
278
279**描述**
280
281比较两个参数是否相同。
282
283**起始版本:** 9
284
285
286**参数:**
287
288| 参数项 | 描述 |
289| -- | -- |
290| [const struct OH_Huks_Param](capi-hukstypeapi-oh-huks-param.md) *baseParam | 指向被比较的参数的指针。 |
291| [const struct OH_Huks_Param](capi-hukstypeapi-oh-huks-param.md) *param | 指向比较的参数的指针。 |
292
293**返回:**
294
295| 类型 | 说明 |
296| -- | -- |
297| [struct OH_Huks_Result](capi-hukstypeapi-oh-huks-result.md) | 可能的返回码(errorCode):<br>         OH_HUKS_SUCCESS = 0 :比较的两个参数相同。<br>         OH_HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401 :其中一个参数集是无效的,或者参数不匹配,<br>          或者内部有无效标签。 |
298
299### OH_Huks_FreeKeyAliasSet()
300
301```
302void OH_Huks_FreeKeyAliasSet(struct OH_Huks_KeyAliasSet *keyAliasSet)
303```
304
305**描述**
306
307销毁参数集。
308
309**起始版本:** 20
310
311
312**参数:**
313
314| 参数项 | 描述 |
315| -- | -- |
316| [struct OH_Huks_KeyAliasSet](capi-hukstypeapi-oh-huks-keyaliasset.md) *keyAliasSet | 指向要被销毁的参数集的指针地址。 |
317
318
319