Lines Matching refs:data

159 static int try_name(struct extracted_param_data_st *data, OSSL_STORE_INFO **v)
161 if (data->object_type == OSSL_OBJECT_NAME) {
164 if (data->utf8_data == NULL)
166 if ((newname = OPENSSL_strdup(data->utf8_data)) == NULL
167 || (data->desc != NULL
168 && (newdesc = OPENSSL_strdup(data->desc)) == NULL)
181 * type of data it gave us, so we may need to figure that out on our own.
186 static EVP_PKEY *try_key_ref(struct extracted_param_data_st *data,
196 /* If we have an object reference, we must have a data type */
197 if (data->data_type == NULL)
200 keymgmt = EVP_KEYMGMT_fetch(libctx, data->data_type, propq);
214 keydata = evp_keymgmt_load(keymgmt, data->ref, data->ref_size);
230 data->ref, data->ref_size,
241 data->data_type, propq);
259 static EVP_PKEY *try_key_value(struct extracted_param_data_st *data,
266 const unsigned char *pdata = data->octet_data;
267 size_t pdatalen = data->octet_data_size;
289 OSSL_DECODER_CTX_new_for_pkey(&pk, NULL, data->data_structure,
290 data->data_type, selection, libctx,
304 static EVP_PKEY *try_key_value_legacy(struct extracted_param_data_st *data,
311 const unsigned char *der = data->octet_data, *derp;
312 long der_len = (long)data->octet_data_size;
354 oct->data, oct->length,
386 static int try_key(struct extracted_param_data_st *data, OSSL_STORE_INFO **v,
392 if (data->object_type == OSSL_OBJECT_UNKNOWN
393 || data->object_type == OSSL_OBJECT_PKEY) {
397 if (data->object_type == OSSL_OBJECT_PKEY && data->ref != NULL) {
398 pk = try_key_ref(data, ctx, provider, libctx, propq);
408 } else if (data->octet_data != NULL) {
412 pk = try_key_value(data, ctx, cb, cbarg, libctx, propq);
416 * the data we have, then we try on our own to at least get an
422 pk = try_key_value_legacy(data, &store_info_new, ctx,
427 data->object_type = OSSL_OBJECT_PKEY;
456 static int try_cert(struct extracted_param_data_st *data, OSSL_STORE_INFO **v,
459 if (data->object_type == OSSL_OBJECT_UNKNOWN
460 || data->object_type == OSSL_OBJECT_CERT) {
463 * data as a trusted cert (X509 + X509_AUX) and fall back
476 /* If we have a data type, it should be a PEM name */
477 if (data->data_type != NULL
478 && (OPENSSL_strcasecmp(data->data_type, PEM_STRING_X509_TRUSTED) == 0))
481 if (d2i_X509_AUX(&cert, (const unsigned char **)&data->octet_data,
482 data->octet_data_size) == NULL
484 || d2i_X509(&cert, (const unsigned char **)&data->octet_data,
485 data->octet_data_size) == NULL)) {
492 data->object_type = OSSL_OBJECT_CERT;
502 static int try_crl(struct extracted_param_data_st *data, OSSL_STORE_INFO **v,
505 if (data->object_type == OSSL_OBJECT_UNKNOWN
506 || data->object_type == OSSL_OBJECT_CRL) {
509 crl = d2i_X509_CRL(NULL, (const unsigned char **)&data->octet_data,
510 data->octet_data_size);
514 data->object_type = OSSL_OBJECT_CRL;
530 static int try_pkcs12(struct extracted_param_data_st *data, OSSL_STORE_INFO **v,
537 if (data->object_type == OSSL_OBJECT_UNKNOWN) {
541 p12 = d2i_PKCS12(NULL, (const unsigned char **)&data->octet_data,
542 data->octet_data_size);
552 data->object_type = OSSL_OBJECT_PKCS12;