ssl/s3_cbc.c: uint64_t portability fix.
Break dependency on uint64_t. It's possible to declare bits as
unsigned int, because TLS packets are limited in size and 32-bit
value can't overflow.
(cherry picked from commit cab13fc847
)
This commit is contained in:
parent
e5cb774323
commit
1dfb4b9400
1 changed files with 6 additions and 11 deletions
17
ssl/s3_cbc.c
17
ssl/s3_cbc.c
|
@ -53,8 +53,6 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <stdint.h>
|
|
||||||
|
|
||||||
#include "ssl_locl.h"
|
#include "ssl_locl.h"
|
||||||
|
|
||||||
#include <openssl/md5.h>
|
#include <openssl/md5.h>
|
||||||
|
@ -424,7 +422,7 @@ void ssl3_cbc_digest_record(
|
||||||
unsigned sslv3_pad_length = 40, header_length, variance_blocks,
|
unsigned sslv3_pad_length = 40, header_length, variance_blocks,
|
||||||
len, max_mac_bytes, num_blocks,
|
len, max_mac_bytes, num_blocks,
|
||||||
num_starting_blocks, k, mac_end_offset, c, index_a, index_b;
|
num_starting_blocks, k, mac_end_offset, c, index_a, index_b;
|
||||||
uint64_t bits;
|
unsigned int bits; /* at most 18 bits */
|
||||||
unsigned char length_bytes[MAX_HASH_BIT_COUNT_BYTES];
|
unsigned char length_bytes[MAX_HASH_BIT_COUNT_BYTES];
|
||||||
/* hmac_pad is the masked HMAC key. */
|
/* hmac_pad is the masked HMAC key. */
|
||||||
unsigned char hmac_pad[MAX_HASH_BLOCK_SIZE];
|
unsigned char hmac_pad[MAX_HASH_BLOCK_SIZE];
|
||||||
|
@ -584,14 +582,11 @@ void ssl3_cbc_digest_record(
|
||||||
md_transform(md_state, hmac_pad);
|
md_transform(md_state, hmac_pad);
|
||||||
}
|
}
|
||||||
|
|
||||||
j = 0;
|
memset(length_bytes,0,md_length_size-4);
|
||||||
if (md_length_size == 16)
|
length_bytes[md_length_size-4] = (unsigned char)(bits>>24);
|
||||||
{
|
length_bytes[md_length_size-3] = (unsigned char)(bits>>16);
|
||||||
memset(length_bytes, 0, 8);
|
length_bytes[md_length_size-2] = (unsigned char)(bits>>8);
|
||||||
j = 8;
|
length_bytes[md_length_size-1] = (unsigned char)bits;
|
||||||
}
|
|
||||||
for (i = 0; i < 8; i++)
|
|
||||||
length_bytes[i+j] = bits >> (8*(7-i));
|
|
||||||
|
|
||||||
if (k > 0)
|
if (k > 0)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue