Lines Matching refs:stmt

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