INNER CODE UNIT · Rust

test_hard_reset

google/OpenSK · libraries/opensk/src/lib.rs:205

    fn test_hard_reset() {
        let env = TestEnv::default();
        let mut ctap = Ctap::<TestEnv>::new(env);
        assert!(!ctap.can_sleep());

        // Send Init, receive Init response.
        let mut init_response = ctap.process_hid_packet(&init_packet(), Transport::MainHid);
        let response_packet = init_response.next().unwrap();
        assert_eq!(response_packet[4], 0x86);
        let cid = *array_ref!(response_packet, 15, 4);

        // Send Reset, get Ok.
        let reset_packet = assemble_packet(&cid, 0x10, &[0x07]);
        let mut reset_response = ctap.process_hid_packet(&reset_packet, Transport::MainHid);
        let response_packet = reset_response.next().unwrap();
        let status_byte = Ctap2StatusCode::CTAP2_OK as u8;
        let expected_data = [0x90, 0x00, 0x01, status_byte];
        assert_eq!(response_packet[..4], cid);

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…