kopia lustrzana https://github.com/conorpp/u2f-zero
fix bug with written cert
rodzic
ce139efbe6
commit
7d31ee143f
|
@ -83,7 +83,7 @@ uint16_t u2f_attestation_cert_size();
|
|||
// callback for u2f to send back response data
|
||||
// @buf data to write back
|
||||
// @len length of buf in bytes
|
||||
void u2f_response_writeback(uint8_t * buf, uint8_t len);
|
||||
void u2f_response_writeback(uint8_t * buf, uint16_t len);
|
||||
|
||||
// callback when u2f finishes and will
|
||||
// indicate when all buffer data, if any, should be written
|
||||
|
|
|
@ -101,7 +101,7 @@ void u2f_hid_set_len(uint16_t len);
|
|||
// @payload the buffer to write
|
||||
// @len length of buffer
|
||||
// @@prereq is that hid_layer.current_cid, hid_layer.res_len each set to correct values
|
||||
void u2f_hid_writeback(uint8_t * payload, uint8_t len);
|
||||
void u2f_hid_writeback(uint8_t * payload, uint16_t len);
|
||||
|
||||
// u2f_hid_flush flush any remaining data that may be buffered.
|
||||
void u2f_hid_flush();
|
||||
|
|
|
@ -73,7 +73,7 @@ void u2f_init()
|
|||
}
|
||||
}
|
||||
|
||||
void u2f_response_writeback(uint8_t * buf, uint8_t len)
|
||||
void u2f_response_writeback(uint8_t * buf, uint16_t len)
|
||||
{
|
||||
u2f_hid_writeback(buf, len);
|
||||
}
|
||||
|
|
|
@ -52,6 +52,7 @@ static int16_t u2f_register(struct u2f_register_request * req)
|
|||
|
||||
uint8_t key_handle[U2F_KEY_HANDLE_SIZE];
|
||||
uint8_t pubkey[64];
|
||||
const uint16_t attest_size = u2f_attestation_cert_size();
|
||||
|
||||
if (u2f_get_user_feedback() != 0)
|
||||
{
|
||||
|
@ -83,8 +84,8 @@ static int16_t u2f_register(struct u2f_register_request * req)
|
|||
i[0] = U2F_KEY_HANDLE_SIZE;
|
||||
u2f_response_writeback(i,1);
|
||||
u2f_response_writeback(key_handle,U2F_KEY_HANDLE_SIZE);
|
||||
u2f_response_writeback(u2f_get_attestation_cert(),u2f_attestation_cert_size()-254/2);
|
||||
u2f_response_writeback(u2f_get_attestation_cert()+u2f_attestation_cert_size(),254/2);
|
||||
|
||||
u2f_response_writeback(u2f_get_attestation_cert(),u2f_attestation_cert_size());
|
||||
|
||||
u2f_response_writeback((uint8_t*)req, 64);
|
||||
|
||||
|
|
|
@ -101,7 +101,7 @@ void u2f_hid_flush()
|
|||
}
|
||||
|
||||
|
||||
void u2f_hid_writeback(uint8_t * payload, uint8_t len)
|
||||
void u2f_hid_writeback(uint8_t * payload, uint16_t len)
|
||||
{
|
||||
struct u2f_hid_msg * r = (struct u2f_hid_response *) _hid_pkt;
|
||||
_hid_in_session = 1;
|
||||
|
|
Ładowanie…
Reference in New Issue