mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
sha: use AV_RB32() instead of assuming buffer can be cast to uint32_t*
Signed-off-by: Mans Rullgard <mans@mansr.com>
This commit is contained in:
parent
9e52a40695
commit
3e2aa268f6
@ -42,7 +42,7 @@ const int av_sha_size = sizeof(AVSHA);
|
|||||||
#define rol(value, bits) (((value) << (bits)) | ((value) >> (32 - (bits))))
|
#define rol(value, bits) (((value) << (bits)) | ((value) >> (32 - (bits))))
|
||||||
|
|
||||||
/* (R0+R1), R2, R3, R4 are the different operations used in SHA1 */
|
/* (R0+R1), R2, R3, R4 are the different operations used in SHA1 */
|
||||||
#define blk0(i) (block[i] = av_be2ne32(((const uint32_t*)buffer)[i]))
|
#define blk0(i) (block[i] = AV_RB32(buffer + 4 * (i)))
|
||||||
#define blk(i) (block[i] = rol(block[i-3] ^ block[i-8] ^ block[i-14] ^ block[i-16], 1))
|
#define blk(i) (block[i] = rol(block[i-3] ^ block[i-8] ^ block[i-14] ^ block[i-16], 1))
|
||||||
|
|
||||||
#define R0(v,w,x,y,z,i) z += ((w&(x^y))^y) + blk0(i) + 0x5A827999 + rol(v, 5); w = rol(w, 30);
|
#define R0(v,w,x,y,z,i) z += ((w&(x^y))^y) + blk0(i) + 0x5A827999 + rol(v, 5); w = rol(w, 30);
|
||||||
@ -67,7 +67,7 @@ static void sha1_transform(uint32_t state[5], const uint8_t buffer[64])
|
|||||||
for (i = 0; i < 80; i++) {
|
for (i = 0; i < 80; i++) {
|
||||||
int t;
|
int t;
|
||||||
if (i < 16)
|
if (i < 16)
|
||||||
t = av_be2ne32(((uint32_t*)buffer)[i]);
|
t = AV_RB32(buffer + 4 * i);
|
||||||
else
|
else
|
||||||
t = rol(block[i-3] ^ block[i-8] ^ block[i-14] ^ block[i-16], 1);
|
t = rol(block[i-3] ^ block[i-8] ^ block[i-14] ^ block[i-16], 1);
|
||||||
block[i] = t;
|
block[i] = t;
|
||||||
|
Loading…
Reference in New Issue
Block a user