Lines Matching refs:stmt

54 	fido_assert_stmt *stmt = arg;  in parse_assert_reply()  local
64 return (cbor_decode_cred_id(val, &stmt->id)); in parse_assert_reply()
66 if (fido_blob_decode(val, &stmt->authdata_raw) < 0) { in parse_assert_reply()
70 return (cbor_decode_assert_authdata(val, &stmt->authdata_cbor, in parse_assert_reply()
71 &stmt->authdata, &stmt->authdata_ext)); in parse_assert_reply()
73 return (fido_blob_decode(val, &stmt->sig)); in parse_assert_reply()
75 return (cbor_decode_user(val, &stmt->user)); in parse_assert_reply()
77 return (fido_blob_decode(val, &stmt->largeblob_key)); in parse_assert_reply()
186 if ((assert->stmt = calloc(1, sizeof(fido_assert_stmt))) == NULL) { in fido_dev_get_assert_rx()
201 if ((r = cbor_parse_reply(msg, (size_t)msglen, &assert->stmt[0], in fido_dev_get_assert_rx()
255 &assert->stmt[assert->stmt_len], parse_assert_reply)) != FIDO_OK) { in fido_get_next_assert_rx()
293 fido_assert_stmt *stmt = &assert->stmt[i]; in decrypt_hmac_secrets() local
294 if (stmt->authdata_ext.hmac_secret_enc.ptr != NULL) { in decrypt_hmac_secrets()
296 &stmt->authdata_ext.hmac_secret_enc, in decrypt_hmac_secrets()
297 &stmt->hmac_secret) < 0) { in decrypt_hmac_secrets()
503 const fido_assert_stmt *stmt = NULL; in fido_assert_verify() local
515 stmt = &assert->stmt[idx]; in fido_assert_verify()
519 stmt->authdata_cbor.ptr == NULL || stmt->sig.ptr == NULL) { in fido_assert_verify()
522 (void *)stmt->authdata_cbor.ptr, (void *)stmt->sig.ptr); in fido_assert_verify()
527 if (fido_check_flags(stmt->authdata.flags, assert->up, in fido_assert_verify()
534 if (check_extensions(stmt->authdata_ext.mask, assert->ext.mask) < 0) { in fido_assert_verify()
540 if (fido_check_rp_id(assert->rp_id, stmt->authdata.rp_id_hash) != 0) { in fido_assert_verify()
547 &stmt->authdata_cbor) < 0) { in fido_assert_verify()
555 ok = es256_pk_verify_sig(&dgst, pk, &stmt->sig); in fido_assert_verify()
558 ok = es384_pk_verify_sig(&dgst, pk, &stmt->sig); in fido_assert_verify()
561 ok = rs256_pk_verify_sig(&dgst, pk, &stmt->sig); in fido_assert_verify()
564 ok = eddsa_pk_verify_sig(&dgst, pk, &stmt->sig); in fido_assert_verify()
626 fido_blob_set(&assert->stmt[idx].hmac_secret, secret, in fido_assert_set_hmac_secret()
804 free(assert->stmt[i].user.icon); in fido_assert_reset_rx()
805 free(assert->stmt[i].user.name); in fido_assert_reset_rx()
806 free(assert->stmt[i].user.display_name); in fido_assert_reset_rx()
807 fido_blob_reset(&assert->stmt[i].user.id); in fido_assert_reset_rx()
808 fido_blob_reset(&assert->stmt[i].id); in fido_assert_reset_rx()
809 fido_blob_reset(&assert->stmt[i].hmac_secret); in fido_assert_reset_rx()
810 fido_blob_reset(&assert->stmt[i].authdata_cbor); in fido_assert_reset_rx()
811 fido_blob_reset(&assert->stmt[i].authdata_raw); in fido_assert_reset_rx()
812 fido_blob_reset(&assert->stmt[i].largeblob_key); in fido_assert_reset_rx()
813 fido_blob_reset(&assert->stmt[i].sig); in fido_assert_reset_rx()
814 fido_assert_reset_extattr(&assert->stmt[i].authdata_ext); in fido_assert_reset_rx()
815 memset(&assert->stmt[i], 0, sizeof(assert->stmt[i])); in fido_assert_reset_rx()
817 free(assert->stmt); in fido_assert_reset_rx()
818 assert->stmt = NULL; in fido_assert_reset_rx()
854 return (assert->stmt[idx].authdata.flags); in fido_assert_flags()
863 return (assert->stmt[idx].authdata.sigcount); in fido_assert_sigcount()
872 return (assert->stmt[idx].authdata_cbor.ptr); in fido_assert_authdata_ptr()
881 return (assert->stmt[idx].authdata_cbor.len); in fido_assert_authdata_len()
890 return (assert->stmt[idx].authdata_raw.ptr); in fido_assert_authdata_raw_ptr()
899 return (assert->stmt[idx].authdata_raw.len); in fido_assert_authdata_raw_len()
908 return (assert->stmt[idx].sig.ptr); in fido_assert_sig_ptr()
917 return (assert->stmt[idx].sig.len); in fido_assert_sig_len()
926 return (assert->stmt[idx].id.ptr); in fido_assert_id_ptr()
935 return (assert->stmt[idx].id.len); in fido_assert_id_len()
944 return (assert->stmt[idx].user.id.ptr); in fido_assert_user_id_ptr()
953 return (assert->stmt[idx].user.id.len); in fido_assert_user_id_len()
962 return (assert->stmt[idx].user.icon); in fido_assert_user_icon()
971 return (assert->stmt[idx].user.name); in fido_assert_user_name()
980 return (assert->stmt[idx].user.display_name); in fido_assert_user_display_name()
989 return (assert->stmt[idx].hmac_secret.ptr); in fido_assert_hmac_secret_ptr()
998 return (assert->stmt[idx].hmac_secret.len); in fido_assert_hmac_secret_len()
1007 return (assert->stmt[idx].largeblob_key.ptr); in fido_assert_largeblob_key_ptr()
1016 return (assert->stmt[idx].largeblob_key.len); in fido_assert_largeblob_key_len()
1025 return (assert->stmt[idx].authdata_ext.blob.ptr); in fido_assert_blob_ptr()
1034 return (assert->stmt[idx].authdata_ext.blob.len); in fido_assert_blob_len()
1038 fido_assert_clean_authdata(fido_assert_stmt *stmt) in fido_assert_clean_authdata() argument
1040 fido_blob_reset(&stmt->authdata_cbor); in fido_assert_clean_authdata()
1041 fido_blob_reset(&stmt->authdata_raw); in fido_assert_clean_authdata()
1042 fido_assert_reset_extattr(&stmt->authdata_ext); in fido_assert_clean_authdata()
1043 memset(&stmt->authdata, 0, sizeof(stmt->authdata)); in fido_assert_clean_authdata()
1051 fido_assert_stmt *stmt = NULL; in fido_assert_set_authdata() local
1058 stmt = &assert->stmt[idx]; in fido_assert_set_authdata()
1059 fido_assert_clean_authdata(stmt); in fido_assert_set_authdata()
1067 if (fido_blob_decode(item, &stmt->authdata_raw) < 0) { in fido_assert_set_authdata()
1073 if (cbor_decode_assert_authdata(item, &stmt->authdata_cbor, in fido_assert_set_authdata()
1074 &stmt->authdata, &stmt->authdata_ext) < 0) { in fido_assert_set_authdata()
1086 fido_assert_clean_authdata(stmt); in fido_assert_set_authdata()
1096 fido_assert_stmt *stmt = NULL; in fido_assert_set_authdata_raw() local
1102 stmt = &assert->stmt[idx]; in fido_assert_set_authdata_raw()
1103 fido_assert_clean_authdata(stmt); in fido_assert_set_authdata_raw()
1105 if (fido_blob_set(&stmt->authdata_raw, ptr, len) < 0) { in fido_assert_set_authdata_raw()
1117 if (cbor_decode_assert_authdata(item, &stmt->authdata_cbor, in fido_assert_set_authdata_raw()
1118 &stmt->authdata, &stmt->authdata_ext) < 0) { in fido_assert_set_authdata_raw()
1130 fido_assert_clean_authdata(stmt); in fido_assert_set_authdata_raw()
1141 if (fido_blob_set(&a->stmt[idx].sig, ptr, len) < 0) in fido_assert_set_sig()
1160 new_stmt = recallocarray(assert->stmt, assert->stmt_cnt, n, in fido_assert_set_count()
1165 assert->stmt = new_stmt; in fido_assert_set_count()