]> git.stg.codes - stg.git/blobdiff - libs/crypto/blowfish.c
Cryptography with void* in the interfaces.
[stg.git] / libs / crypto / blowfish.c
index 384d3a10e0d45cbb667bcdc5144c641939625121..42b9158ab9efd9789cccf372d02a1a605460b626 100644 (file)
@@ -384,10 +384,11 @@ Xl = Xl ^ ctx->P[0];
 *xr = Xr;
 }
 //-----------------------------------------------------------------------------
-void Blowfish_Init(BLOWFISH_CTX *ctx, unsigned char *key, int keyLen)
+void Blowfish_Init(BLOWFISH_CTX *ctx, void* key, int keyLen)
 {
 int i, j, k;
 uint32_t data, datal, datar;
+unsigned char* keyPtr = key;
 
 memset(ctx->S, 0, sizeof(ctx->S));
 
@@ -406,7 +407,7 @@ for (i = 0; i < N + 2; ++i)
 
     for (k = 0; k < 4; ++k)
         {
-        data = (data << 8) | key[j];
+        data = (data << 8) | keyPtr[j];
         j = j + 1;
         if (j >= keyLen)
             j = 0;