mirror of
https://github.com/moparisthebest/curl
synced 2024-12-22 08:08:50 -05:00
Fix compiler warning: conversion from "int" to "unsigned char"
may lose significant bits
This commit is contained in:
parent
0164f0cf81
commit
8cfb0e26bb
@ -1349,7 +1349,7 @@ static void randomize_key(unsigned char* key,int key_data_len)
|
|||||||
|
|
||||||
if ( !randomized ) {
|
if ( !randomized ) {
|
||||||
for (;counter<key_data_len;counter++)
|
for (;counter<key_data_len;counter++)
|
||||||
key[counter]=rand() % 256;
|
key[counter]=(unsigned char)(rand() % 256);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1369,18 +1369,18 @@ static int init_id_key(rc4_key* key,int key_data_len)
|
|||||||
state = &key->state[0];
|
state = &key->state[0];
|
||||||
for(counter = 0; counter < 256; counter++)
|
for(counter = 0; counter < 256; counter++)
|
||||||
/* unnecessary AND but it keeps some compilers happier */
|
/* unnecessary AND but it keeps some compilers happier */
|
||||||
state[counter] = counter & 0xff;
|
state[counter] = (unsigned char)(counter & 0xff);
|
||||||
key->x = 0;
|
key->x = 0;
|
||||||
key->y = 0;
|
key->y = 0;
|
||||||
index1 = 0;
|
index1 = 0;
|
||||||
index2 = 0;
|
index2 = 0;
|
||||||
for(counter = 0; counter < 256; counter++)
|
for(counter = 0; counter < 256; counter++)
|
||||||
{
|
{
|
||||||
index2 = (key_data_ptr[index1] + state[counter] +
|
index2 = (unsigned char)((key_data_ptr[index1] + state[counter] +
|
||||||
index2) % 256;
|
index2) % 256);
|
||||||
ARES_SWAP_BYTE(&state[counter], &state[index2]);
|
ARES_SWAP_BYTE(&state[counter], &state[index2]);
|
||||||
|
|
||||||
index1 = (index1 + 1) % key_data_len;
|
index1 = (unsigned char)((index1 + 1) % key_data_len);
|
||||||
}
|
}
|
||||||
free(key_data_ptr);
|
free(key_data_ptr);
|
||||||
return ARES_SUCCESS;
|
return ARES_SUCCESS;
|
||||||
|
@ -53,13 +53,13 @@ void ares__rc4(rc4_key* key, unsigned char *buffer_ptr, int buffer_len)
|
|||||||
state = &key->state[0];
|
state = &key->state[0];
|
||||||
for(counter = 0; counter < buffer_len; counter ++)
|
for(counter = 0; counter < buffer_len; counter ++)
|
||||||
{
|
{
|
||||||
x = (x + 1) % 256;
|
x = (unsigned char)((x + 1) % 256);
|
||||||
y = (state[x] + y) % 256;
|
y = (unsigned char)((state[x] + y) % 256);
|
||||||
ARES_SWAP_BYTE(&state[x], &state[y]);
|
ARES_SWAP_BYTE(&state[x], &state[y]);
|
||||||
|
|
||||||
xorIndex = (state[x] + state[y]) % 256;
|
xorIndex = (unsigned char)((state[x] + state[y]) % 256);
|
||||||
|
|
||||||
buffer_ptr[counter] ^= state[xorIndex];
|
buffer_ptr[counter] = (unsigned char)(buffer_ptr[counter]^state[xorIndex]);
|
||||||
}
|
}
|
||||||
key->x = x;
|
key->x = x;
|
||||||
key->y = y;
|
key->y = y;
|
||||||
|
Loading…
Reference in New Issue
Block a user