Was doing another merge and while doing so had a look at the differences between my local copy and CVS HEAD of yesterday (2010/04/29) and one of 'em was odd as it used 'inl' while counting 'chunk'.
This is the patch for #define BLOCK_CIPHER_func_cfb(cname, cprefix, cbits, kstruct, ksched) \ --- h:\prj\1original\openssl\openssl\crypto\evp\evp_locl.h 2010-02-26 16:41:58.000000000 +-0200 +++ h:\prj\3actual\openssl\crypto\evp\evp_locl.h 2010-04-30 17:22:03.000000000 +-0200 @@ -112,14 +112,14 @@ {\ size_t chunk=EVP_MAXCHUNK;\ if (cbits==1) chunk>>=3;\ if (inl<chunk) chunk=inl;\ while(inl && inl>=chunk)\ {\ - cprefix##_cfb##cbits##_encrypt(in, out, (long)((cbits==1) && !(ctx->flags & EVP_CIPH_FLAG_LENGTH_BITS) ?inl*8:inl), &((kstruct *)ctx->cipher_data)->ksched, ctx->iv, &ctx->num, ctx->encrypt);\ + cprefix##_cfb##cbits##_encrypt(in, out, (long)((cbits==1) && !(ctx->flags & EVP_CIPH_FLAG_LENGTH_BITS) ?chunk*8:chunk), &((kstruct *)ctx->cipher_data)->ksched, ctx->iv, &ctx->num, ctx->encrypt);\ inl-=chunk;\ in +=chunk;\ out+=chunk;\ if(inl<chunk) chunk=inl;\ }\ return 1;\ } -- Met vriendelijke groeten / Best regards, Ger Hobbelt -------------------------------------------------- web: http://www.hobbelt.com/ http://www.hebbut.net/ mail: g...@hobbelt.com mobile: +31-6-11 120 978 --------------------------------------------------Was doing another merge and while doing so had a look at the differences between my local copy and CVS HEAD of yesterday (2010/04/29) and one of 'em was odd as it used 'inl' while counting 'chunk'.
This is the patch for
#define BLOCK_CIPHER_func_cfb(cname, cprefix, cbits, kstruct, ksched) \
--- h:\prj\1original\openssl\openssl\crypto\evp\evp_locl.h 2010-02-26 16:41:58.000000000 +-0200
+++ h:\prj\3actual\openssl\crypto\evp\evp_locl.h 2010-04-30 17:22:03.000000000 +-0200
@@ -112,14 +112,14 @@
{\
size_t chunk=EVP_MAXCHUNK;\
if (cbits==1) chunk>>=3;\
if (inl<chunk) chunk=inl;\
while(inl && inl>=chunk)\
{\
- cprefix##_cfb##cbits##_encrypt(in, out, (long)((cbits==1) && !(ctx->flags & EVP_CIPH_FLAG_LENGTH_BITS) ?inl*8:inl), &((kstruct *)ctx->cipher_data)->ksched, ctx->iv, &ctx->num, ctx->encrypt);\
+ cprefix##_cfb##cbits##_encrypt(in, out, (long)((cbits==1) && !(ctx->flags & EVP_CIPH_FLAG_LENGTH_BITS) ?chunk*8:chunk), &((kstruct *)ctx->cipher_data)->ksched, ctx->iv, &ctx->num, ctx->encrypt);\
inl-=chunk;\
in +=chunk;\
out+=chunk;\
if(inl<chunk) chunk=inl;\
}\
return 1;\
}
--
Met vriendelijke groeten / Best regards,
Ger Hobbelt
--------------------------------------------------
web: http://www.hobbelt.com/
http://www.hebbut.net/
mail: g...@hobbelt.com
mobile: +31-6-11 120 978
--------------------------------------------------
evp_locl_bug1.diff
Description: Binary data