|
|
|
@ -101,24 +101,25 @@ void ts3init_siphash_update(struct ts3init_siphash_state* state, const u8 *in, s
@@ -101,24 +101,25 @@ void ts3init_siphash_update(struct ts3init_siphash_state* state, const u8 *in, s
|
|
|
|
|
switch (next_byte) |
|
|
|
|
{ |
|
|
|
|
case 1: |
|
|
|
|
m |= ((u64)(*in++)) << 8; |
|
|
|
|
if (in==end) goto __exit_update; |
|
|
|
|
m |= ((u64)(*in++)) << 8; |
|
|
|
|
case 2: |
|
|
|
|
m |= ((u64)(*in++)) << 16; |
|
|
|
|
if (in==end) goto __exit_update; |
|
|
|
|
m |= ((u64)(*in++)) << 16; |
|
|
|
|
case 3: |
|
|
|
|
m |= ((u64)(*in++)) << 24; |
|
|
|
|
if (in==end) goto __exit_update; |
|
|
|
|
m |= ((u64)(*in++)) << 24; |
|
|
|
|
case 4: |
|
|
|
|
m |= ((u64)(*in++)) << 32; |
|
|
|
|
if (in==end) goto __exit_update; |
|
|
|
|
m |= ((u64)(*in++)) << 32; |
|
|
|
|
case 5: |
|
|
|
|
m |= ((u64)(*in++)) << 40; |
|
|
|
|
if (in==end) goto __exit_update; |
|
|
|
|
m |= ((u64)(*in++)) << 40; |
|
|
|
|
case 6: |
|
|
|
|
m |= ((u64)(*in++)) << 48; |
|
|
|
|
if (in==end) goto __exit_update; |
|
|
|
|
m |= ((u64)(*in++)) << 48; |
|
|
|
|
case 7: |
|
|
|
|
if (in==end) goto __exit_update; |
|
|
|
|
m |= ((u64)(*in++)) << 56; |
|
|
|
|
|
|
|
|
|
v3 ^= m; |
|
|
|
|