mirror of
https://github.com/polhenarejos/pico-keys-sdk
synced 2026-05-11 01:38:26 +02:00
Fix byte overwrite for long chained RAPDU.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
This commit is contained in:
@@ -173,6 +173,7 @@ void apdu_thread() {
|
|||||||
card_init_core1();
|
card_init_core1();
|
||||||
while (1) {
|
while (1) {
|
||||||
uint32_t m = 0;
|
uint32_t m = 0;
|
||||||
|
int proc = 0;
|
||||||
queue_remove_blocking(&usb_to_card_q, &m);
|
queue_remove_blocking(&usb_to_card_q, &m);
|
||||||
|
|
||||||
if (m == EV_VERIFY_CMD_AVAILABLE || m == EV_MODIFY_CMD_AVAILABLE) {
|
if (m == EV_VERIFY_CMD_AVAILABLE || m == EV_MODIFY_CMD_AVAILABLE) {
|
||||||
@@ -183,11 +184,12 @@ void apdu_thread() {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
process_apdu();
|
proc = process_apdu();
|
||||||
|
|
||||||
done: ;
|
done: ;
|
||||||
|
if (proc == 1) {
|
||||||
apdu_finish();
|
apdu_finish();
|
||||||
|
}
|
||||||
finished_data_size = apdu_next();
|
finished_data_size = apdu_next();
|
||||||
uint32_t flag = EV_EXEC_FINISHED;
|
uint32_t flag = EV_EXEC_FINISHED;
|
||||||
queue_add_blocking(&card_to_usb_q, &flag);
|
queue_add_blocking(&card_to_usb_q, &flag);
|
||||||
|
|||||||
Reference in New Issue
Block a user