Lines Matching refs:params

19 #include <openssl/params.h>
130 static int raw_set_params(void *vobj, const OSSL_PARAM *params)
134 for (; params->key != NULL; params++)
135 if (strcmp(params->key, "p1") == 0) {
136 obj->p1 = *(int *)params->data;
137 } else if (strcmp(params->key, "p2") == 0) {
138 obj->p2 = *(double *)params->data;
139 } else if (strcmp(params->key, "p3") == 0) {
141 if (!TEST_ptr(obj->p3 = BN_native2bn(params->data,
142 params->data_size, NULL)))
144 } else if (strcmp(params->key, "p4") == 0) {
146 if (!TEST_ptr(obj->p4 = OPENSSL_strndup(params->data,
147 params->data_size)))
150 } else if (strcmp(params->key, "p5") == 0) {
156 OPENSSL_strnlen(params->data, params->data_size);
160 strncpy(obj->p5, params->data, data_length);
163 } else if (strcmp(params->key, "p6") == 0) {
164 obj->p6 = *(const char **)params->data;
165 obj->p6_l = params->data_size;
171 static int raw_get_params(void *vobj, OSSL_PARAM *params)
175 for (; params->key != NULL; params++)
176 if (strcmp(params->key, "p1") == 0) {
177 params->return_size = sizeof(obj->p1);
178 *(int *)params->data = obj->p1;
179 } else if (strcmp(params->key, "p2") == 0) {
180 params->return_size = sizeof(obj->p2);
181 *(double *)params->data = obj->p2;
182 } else if (strcmp(params->key, "p3") == 0) {
183 params->return_size = BN_num_bytes(obj->p3);
184 if (!TEST_size_t_ge(params->data_size, params->return_size))
186 BN_bn2nativepad(obj->p3, params->data, params->return_size);
187 } else if (strcmp(params->key, "p4") == 0) {
188 params->return_size = strlen(obj->p4);
189 if (!TEST_size_t_gt(params->data_size, params->return_size))
191 strcpy(params->data, obj->p4);
192 } else if (strcmp(params->key, "p5") == 0) {
193 params->return_size = strlen(obj->p5);
194 if (!TEST_size_t_gt(params->data_size, params->return_size))
196 strcpy(params->data, obj->p5);
197 } else if (strcmp(params->key, "p6") == 0) {
198 params->return_size = strlen(obj->p6);
199 *(const char **)params->data = obj->p6;
206 * API provider, which handles the parameters using the API from params.h
209 static int api_set_params(void *vobj, const OSSL_PARAM *params)
214 if ((p = OSSL_PARAM_locate_const(params, "p1")) != NULL
217 if ((p = OSSL_PARAM_locate_const(params, "p2")) != NULL
220 if ((p = OSSL_PARAM_locate_const(params, "p3")) != NULL
223 if ((p = OSSL_PARAM_locate_const(params, "p4")) != NULL) {
230 if ((p = OSSL_PARAM_locate_const(params, "p5")) != NULL) {
236 if ((p = OSSL_PARAM_locate_const(params, "p6")) != NULL) {
245 static int api_get_params(void *vobj, OSSL_PARAM *params)
250 if ((p = OSSL_PARAM_locate(params, "p1")) != NULL
253 if ((p = OSSL_PARAM_locate(params, "p2")) != NULL
256 if ((p = OSSL_PARAM_locate(params, "p3")) != NULL
259 if ((p = OSSL_PARAM_locate(params, "p4")) != NULL
262 if ((p = OSSL_PARAM_locate(params, "p5")) != NULL
265 if ((p = OSSL_PARAM_locate(params, "p6")) != NULL
277 int (*set_params)(void *obj, const OSSL_PARAM *params);
278 int (*get_params)(void *obj, OSSL_PARAM *params);
364 /* The same array of OSSL_PARAM, specified with the macros from params.h */
384 static OSSL_PARAM params[10];
386 params[n++] = OSSL_PARAM_construct_int("p1", &app_p1);
387 params[n++] = OSSL_PARAM_construct_BN("p3", bignumbin, sizeof(bignumbin));
388 params[n++] = OSSL_PARAM_construct_utf8_string("p4", app_p4,
390 params[n++] = OSSL_PARAM_construct_utf8_string("p5", app_p5,
393 params[n++] = OSSL_PARAM_construct_utf8_ptr("p6", (char **)&app_p6,
395 params[n++] = OSSL_PARAM_construct_octet_string("foo", &foo, sizeof(foo));
396 params[n++] = OSSL_PARAM_construct_end();
398 return params;
428 { &provider_raw, &raw_params, "raw provider vs raw params" },
429 { &provider_api, &api_params, "api provider vs api params" },
432 { &provider_raw, &api_params, "raw provider vs api params" },
433 { &provider_api, &raw_params, "api provider vs raw params" },
436 /* Generic tester of combinations of "providers" and params */
437 static int test_case_variant(OSSL_PARAM *params, const struct provider_dispatch_st *prov)
459 if (!TEST_true(prov->get_params(obj, params))
462 || !TEST_ptr(p = OSSL_PARAM_locate(params, "p3"))
466 || !TEST_ptr(p = OSSL_PARAM_locate(params, "p5"))
470 || !TEST_ptr(p = OSSL_PARAM_locate(params, "p6"))
475 || !TEST_ptr(p = OSSL_PARAM_locate(params, "foo")))
484 if (!TEST_true(prov->set_params(obj, params))) {
510 if (!TEST_true(prov->get_params(obj, params))
513 || !TEST_ptr(p = OSSL_PARAM_locate(params, "p3"))
517 || !TEST_ptr(p = OSSL_PARAM_locate(params, "p5"))
521 || !TEST_ptr(p = OSSL_PARAM_locate(params, "p6"))
526 || !TEST_ptr(p = OSSL_PARAM_locate(params, "foo")))