device_ledger: fix potential buffer overflow from bad size calc

This commit is contained in:
moneromooo-monero 2018-06-23 15:26:22 +01:00
parent 0429cabefd
commit 076b7e1076
No known key found for this signature in database
GPG key ID: 686F07454D6CEFC3

View file

@ -194,7 +194,8 @@ namespace hw {
this->buffer_send[3],
this->buffer_send[4]
);
buffer_to_str(strbuffer+strlen(strbuffer), sizeof(strbuffer), (char*)(this->buffer_send+5), this->length_send-5);
const size_t len = strlen(strbuffer);
buffer_to_str(strbuffer+len, sizeof(strbuffer)-len, (char*)(this->buffer_send+5), this->length_send-5);
MDEBUG( "CMD :" << strbuffer);
}
}
@ -206,7 +207,8 @@ namespace hw {
this->buffer_recv[this->length_recv-2],
this->buffer_recv[this->length_recv-1]
);
buffer_to_str(strbuffer+strlen(strbuffer), sizeof(strbuffer), (char*)(this->buffer_recv), this->length_recv-2);
const size_t len = strlen(strbuffer);
buffer_to_str(strbuffer+len, sizeof(strbuffer)-len, (char*)(this->buffer_recv), this->length_recv-2);
MDEBUG( "RESP :" << strbuffer);
}