771 . Make a credential
88``` rust
99use fido2_rs :: device :: Device ;
10- use fido2_rs :: credentials :: CredentialRequest ;
10+ use fido2_rs :: credentials :: Credential ;
1111use fido2_rs :: credentials :: CoseType ;
1212use anyhow :: Result ;
13-
1413fn main () -> Result <()> {
1514 let dev = Device :: open (" windows://hello" ). expect (" unable open windows hello" );
1615
17- let request = CredentialRequest :: builder ()
18- . client_data (& [1 , 2 , 3 , 4 , 5 , 6 ])?
19- . rp (" fido_rs" , " fido example" )?
20- . user (& [1 , 2 , 3 , 4 , 5 , 6 ], " alice" , Some (" alice" ), None )?
21- . cose_type (CoseType :: RS256 )?
22- . build ();
23- let cred = dev . make_credential (request , None )? ;
16+ let mut cred = Credential :: new ();
17+ cred . set_client_data (& [1 , 2 , 3 , 4 , 5 , 6 ])? ;
18+ cred . set_rp (" fido_rs" , " fido example" )? ;
19+ cred . set_user (& [1 , 2 , 3 , 4 , 5 , 6 ], " alice" , Some (" alice" ), None )? ;
20+ cred . set_cose_type (CoseType :: RS256 )? ;
21+
22+ let _ = dev . make_credential (& mut cred , None )? ;
2423 dbg! (cred . id ());
24+
2525 Ok (())
2626}
2727```
@@ -33,4 +33,4 @@ fn main() -> Result<()> {
3333# TODO
3434
3535* [ ] more doc
36- * [ ] full bindings to ` fido_cred_t ` and ` fido_assert_t `
36+ * [x ] full bindings to ` fido_cred_t ` and ` fido_assert_t `
0 commit comments