mirror of
https://github.com/nfc-tools/mfcuk.git
synced 2026-03-10 17:43:50 +00:00
Removed xor swaps to fix GCC warnings
This commit is contained in:
committed by
Romain Tartière
parent
92f7413beb
commit
a8a605e1b4
@@ -43,13 +43,19 @@ static void quicksort(uint32_t *const start, uint32_t *const stop)
|
|||||||
++it;
|
++it;
|
||||||
else if (*rit > *start)
|
else if (*rit > *start)
|
||||||
--rit;
|
--rit;
|
||||||
else
|
else {
|
||||||
*it ^= (*it ^= *rit, *rit ^= *it);
|
uint32_t x = *it;
|
||||||
|
*it = *rit;
|
||||||
|
*rit = x;
|
||||||
|
}
|
||||||
|
|
||||||
if (*rit >= *start)
|
if (*rit >= *start)
|
||||||
--rit;
|
--rit;
|
||||||
if (rit != start)
|
if (rit != start) {
|
||||||
*rit ^= (*rit ^= *start, *start ^= *rit);
|
uint32_t x = *it;
|
||||||
|
*it = *rit;
|
||||||
|
*rit = x;
|
||||||
|
}
|
||||||
|
|
||||||
quicksort(start, rit - 1);
|
quicksort(start, rit - 1);
|
||||||
quicksort(rit + 1, stop);
|
quicksort(rit + 1, stop);
|
||||||
@@ -322,7 +328,9 @@ uint8_t lfsr_rollback_bit(struct Crypto1State *s, uint32_t in, int fb)
|
|||||||
uint8_t ret;
|
uint8_t ret;
|
||||||
|
|
||||||
s->odd &= 0xffffff;
|
s->odd &= 0xffffff;
|
||||||
s->odd ^= (s->odd ^= s->even, s->even ^= s->odd);
|
uint32_t x = s->odd;
|
||||||
|
s->odd = s->even;
|
||||||
|
s->even = x;
|
||||||
|
|
||||||
out = s->even & 1;
|
out = s->even & 1;
|
||||||
out ^= LF_POLY_EVEN & (s->even >>= 1);
|
out ^= LF_POLY_EVEN & (s->even >>= 1);
|
||||||
|
|||||||
@@ -56,7 +56,9 @@ uint8_t crypto1_bit(struct Crypto1State *s, uint8_t in, int is_encrypted)
|
|||||||
feedin ^= LF_POLY_EVEN & s->even;
|
feedin ^= LF_POLY_EVEN & s->even;
|
||||||
s->even = s->even << 1 | parity(feedin);
|
s->even = s->even << 1 | parity(feedin);
|
||||||
|
|
||||||
s->odd ^= (s->odd ^= s->even, s->even ^= s->odd);
|
uint32_t x = s->odd;
|
||||||
|
s->odd = s->even;
|
||||||
|
s->even = x;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user