]> granicus.if.org Git - curl/commitdiff
Fix compiler warning: conversion from "int" to "unsigned char"
authorYang Tse <yangsita@gmail.com>
Thu, 18 Oct 2007 01:01:20 +0000 (01:01 +0000)
committerYang Tse <yangsita@gmail.com>
Thu, 18 Oct 2007 01:01:20 +0000 (01:01 +0000)
may lose significant bits

ares/ares_init.c
ares/ares_query.c

index e37ac7b6ecc248a86d7b4cdd989a134d747a7fee..b5b841f5123a27dda5a1325a395e7d475f240e9b 100644 (file)
@@ -1349,7 +1349,7 @@ static void randomize_key(unsigned char* key,int key_data_len)
 
   if ( !randomized ) {
     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];
   for(counter = 0; counter < 256; counter++)
     /* unnecessary AND but it keeps some compilers happier */
-    state[counter] = counter & 0xff;
+    state[counter] = (unsigned char)(counter & 0xff);
   key->x = 0;
   key->y = 0;
   index1 = 0;
   index2 = 0;
   for(counter = 0; counter < 256; counter++)
   {
-    index2 = (key_data_ptr[index1] + state[counter] +
-              index2) % 256;
+    index2 = (unsigned char)((key_data_ptr[index1] + state[counter] +
+                              index2) % 256);
     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);
   return ARES_SUCCESS;
index c7c31edd9de1540630e75556c71c1621af589fe3..3959c0e3f4cf2d2e6a7f88341b91659114d6d84b 100644 (file)
@@ -53,13 +53,13 @@ void ares__rc4(rc4_key* key, unsigned char *buffer_ptr, int buffer_len)
   state = &key->state[0];
   for(counter = 0; counter < buffer_len; counter ++)
   {
-       x = (x + 1) % 256;
-       y = (state[x] + y) % 256;
-       ARES_SWAP_BYTE(&state[x], &state[y]);
+    x = (unsigned char)((x + 1) % 256);
+    y = (unsigned char)((state[x] + y) % 256);
+    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->y = y;