mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2024-12-18 08:22:04 +00:00
se: fix infinite loop in shift_left_xor_rb (#21)
This commit is contained in:
parent
220e574ff7
commit
a6c91ffe4e
1 changed files with 3 additions and 3 deletions
|
@ -469,9 +469,9 @@ void se_aes_ecb_decrypt_block(unsigned int keyslot, void *dst, size_t dst_size,
|
||||||
|
|
||||||
void shift_left_xor_rb(uint8_t *key) {
|
void shift_left_xor_rb(uint8_t *key) {
|
||||||
uint8_t prev_high_bit = 0;
|
uint8_t prev_high_bit = 0;
|
||||||
for (unsigned int i = 0xF; i >= 0; i--) {
|
for (unsigned int i = 0; i < 0x10; i++) {
|
||||||
uint8_t cur_byte = key[i];
|
uint8_t cur_byte = key[0xF - i];
|
||||||
key[i] = (cur_byte << 1) | (prev_high_bit);
|
key[0xF - i] = (cur_byte << 1) | (prev_high_bit);
|
||||||
prev_high_bit = cur_byte >> 7;
|
prev_high_bit = cur_byte >> 7;
|
||||||
}
|
}
|
||||||
if (prev_high_bit) {
|
if (prev_high_bit) {
|
||||||
|
|
Loading…
Reference in a new issue