Lines Matching +full:0 +full:x5c

26 		return (0); /* ignore */  in parse_makecred_reply()
33 if (fido_blob_decode(val, &cred->authdata_raw) < 0) { in parse_makecred_reply()
46 return (0); in parse_makecred_reply()
62 memset(&f, 0, sizeof(f)); in fido_dev_make_cred_tx()
63 memset(argv, 0, sizeof(argv)); in fido_dev_make_cred_tx()
65 if (cred->cdh.ptr == NULL || cred->type == 0) { in fido_dev_make_cred_tx()
72 if ((argv[0] = fido_blob_encode(&cred->cdh)) == NULL || in fido_dev_make_cred_tx()
122 if (cbor_build_frame(cmd, argv, nitems(argv), &f) < 0 || in fido_dev_make_cred_tx()
123 fido_tx(dev, CTAP_CMD_CBOR, f.ptr, f.len, ms) < 0) { in fido_dev_make_cred_tx()
154 ms)) < 0) { in fido_dev_make_cred_rx()
206 cred->ext.mask != 0) in fido_dev_make_cred()
249 const uint8_t zero = 0; in get_signed_hash_u2f()
272 ok = 0; in get_signed_hash_u2f()
288 if (attstmt->x5c.len > INT_MAX) { in verify_attstmt()
289 fido_log_debug("%s: x5c.len=%zu", __func__, attstmt->x5c.len); in verify_attstmt()
294 if ((rawcert = BIO_new_mem_buf(attstmt->x5c.ptr, in verify_attstmt()
295 (int)attstmt->x5c.len)) == NULL || in verify_attstmt()
345 cred->attstmt.x5c.ptr == NULL || cred->attstmt.sig.ptr == NULL || in fido_cred_verify()
348 fido_log_debug("%s: cdh=%p, authdata=%p, x5c=%p, sig=%p, " in fido_cred_verify()
351 (void *)cred->attstmt.x5c.ptr, in fido_cred_verify()
358 if (fido_check_rp_id(cred->rp.id, cred->authdata.rp_id_hash) != 0) { in fido_cred_verify()
365 cred->uv) < 0) { in fido_cred_verify()
371 if (check_extensions(&cred->authdata_ext, &cred->ext) != 0) { in fido_cred_verify()
382 &cred->authdata_cbor) < 0) { in fido_cred_verify()
390 &cred->attcred.id, &cred->attcred.pubkey.es256) < 0) { in fido_cred_verify()
397 &cred->authdata_raw, &cred->attstmt, &cred->attcred) < 0) { in fido_cred_verify()
408 if (verify_attstmt(&dgst, &cred->attstmt) < 0) { in fido_cred_verify()
434 cred->attstmt.x5c.ptr != NULL || cred->attstmt.sig.ptr == NULL || in fido_cred_verify_self()
437 fido_log_debug("%s: cdh=%p, authdata=%p, x5c=%p, sig=%p, " in fido_cred_verify_self()
440 (void *)cred->attstmt.x5c.ptr, in fido_cred_verify_self()
447 if (fido_check_rp_id(cred->rp.id, cred->authdata.rp_id_hash) != 0) { in fido_cred_verify_self()
454 cred->uv) < 0) { in fido_cred_verify_self()
460 if (check_extensions(&cred->authdata_ext, &cred->ext) != 0) { in fido_cred_verify_self()
468 &cred->authdata_cbor) < 0) { in fido_cred_verify_self()
476 &cred->attcred.id, &cred->attcred.pubkey.es256) < 0) { in fido_cred_verify_self()
511 if (ok < 0) in fido_cred_verify_self()
535 memset(&cred->authdata_ext, 0, sizeof(cred->authdata_ext)); in fido_cred_clean_authdata()
536 memset(&cred->authdata, 0, sizeof(cred->authdata)); in fido_cred_clean_authdata()
537 memset(&cred->attcred, 0, sizeof(cred->attcred)); in fido_cred_clean_authdata()
546 fido_blob_reset(&attstmt->x5c); in fido_cred_clean_attstmt()
549 memset(attstmt, 0, sizeof(*attstmt)); in fido_cred_clean_attstmt()
567 memset(&cred->rp, 0, sizeof(cred->rp)); in fido_cred_reset_tx()
568 memset(&cred->user, 0, sizeof(cred->user)); in fido_cred_reset_tx()
569 memset(&cred->ext, 0, sizeof(cred->ext)); in fido_cred_reset_tx()
571 cred->type = 0; in fido_cred_reset_tx()
608 if (ptr == NULL || len == 0) in fido_cred_set_authdata()
616 if (fido_blob_decode(item, &cred->authdata_raw) < 0) { in fido_cred_set_authdata()
622 &cred->authdata, &cred->attcred, &cred->authdata_ext) < 0) { in fido_cred_set_authdata()
647 if (ptr == NULL || len == 0) in fido_cred_set_authdata_raw()
650 if (fido_blob_set(&cred->authdata_raw, ptr, len) < 0) { in fido_cred_set_authdata_raw()
663 &cred->authdata, &cred->attcred, &cred->authdata_ext) < 0) { in fido_cred_set_authdata_raw()
682 if (fido_blob_set(&cred->attcred.id, ptr, len) < 0) in fido_cred_set_id()
691 if (fido_blob_set(&cred->attstmt.x5c, ptr, len) < 0) in fido_cred_set_x509()
700 if (fido_blob_set(&cred->attstmt.sig, ptr, len) < 0) in fido_cred_set_sig()
715 if (ptr == NULL || len == 0) in fido_cred_set_attstmt()
723 if (cbor_decode_attstmt(item, &cred->attstmt) < 0) { in fido_cred_set_attstmt()
745 memset(&id_blob, 0, sizeof(id_blob)); in fido_cred_exclude()
747 if (fido_blob_set(&id_blob, id_ptr, id_len) < 0) in fido_cred_exclude()
771 memset(&cred->excl, 0, sizeof(cred->excl)); in fido_cred_empty_exclude_list()
781 fido_blob_set(&cred->cd, data, data_len) < 0) { in fido_cred_set_clientdata()
784 if (fido_sha256(&cred->cdh, data, data_len) < 0) { in fido_cred_set_clientdata()
797 fido_blob_set(&cred->cdh, hash, hash_len) < 0) in fido_cred_set_clientdata_hash()
842 up->id.len = 0; in fido_cred_set_user()
857 if (user_id != NULL && fido_blob_set(&up->id, user_id, user_id_len) < 0) in fido_cred_set_user()
875 up->id.len = 0; in fido_cred_set_user()
886 if (ext == 0) in fido_cred_set_extensions()
887 cred->ext.mask = 0; in fido_cred_set_extensions()
925 if (prot == 0) { in fido_cred_set_prot()
927 cred->ext.prot = 0; in fido_cred_set_prot()
944 if (len == 0) in fido_cred_set_pin_minlen()
957 if (ptr == NULL || len == 0) in fido_cred_set_blob()
959 if (fido_blob_set(&cred->blob, ptr, len) < 0) in fido_cred_set_blob()
989 if (cred->type != 0) in fido_cred_set_type()
1033 return (cred->attstmt.x5c.ptr); in fido_cred_x5c_ptr()
1039 return (cred->attstmt.x5c.len); in fido_cred_x5c_len()
1135 len = 0; in fido_cred_pubkey_len()