1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-22 16:18:48 -05:00

Fix compiler warning: conversion from "int" to "unsigned char"

may lose significant bits
This commit is contained in:
Yang Tse 2007-10-18 01:01:20 +00:00
parent 0164f0cf81
commit 8cfb0e26bb
2 changed files with 10 additions and 10 deletions

View File

@ -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;

View File

@ -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;