diff --git a/ChangeLog.txt b/ChangeLog.txt index bee239e2e5..27b8ea88fc 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -10,6 +10,11 @@ * Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment */ +2013-12-06 10:52 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl) + * include/hbbfish.h + * src/rtl/hbbffnc.c + + added HB_BF_CIPHERBLOCK macro + 2013-12-03 09:03 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl) * contrib/hbmxml/3rd/minixml/mxml.hbp * updated source package URL diff --git a/include/hbbfish.h b/include/hbbfish.h index 25d2572b57..f2ec252973 100644 --- a/include/hbbfish.h +++ b/include/hbbfish.h @@ -60,8 +60,10 @@ HB_EXTERN_BEGIN -#define SUBKEYS_COUNT 18 -#define SBOX_ENTRIES 256 +#define HB_BF_CIPHERBLOCK 8 + +#define SUBKEYS_COUNT 18 +#define SBOX_ENTRIES 256 typedef struct { diff --git a/src/rtl/hbbffnc.c b/src/rtl/hbbffnc.c index 16a2c036d7..b6ccf945a9 100644 --- a/src/rtl/hbbffnc.c +++ b/src/rtl/hbbffnc.c @@ -178,7 +178,7 @@ static void hb_bf_initvect( HB_BYTE * vect ) int iLen = ( int ) hb_parclen( 3 ); int i; - for( i = 0; i < 8; ++i ) + for( i = 0; i < HB_BF_CIPHERBLOCK; ++i ) { vect[ i ] = ( HB_BYTE ) i; if( iLen > 0 ) @@ -215,13 +215,13 @@ HB_FUNC( HB_BLOWFISHENCRYPT_CFB ) { const char * pszSource = hb_itemGetCPtr( pData ); char * pszData = ( char * ) hb_xgrab( nLen + 1 ); - HB_BYTE vect[ 8 ]; + HB_BYTE vect[ HB_BF_CIPHERBLOCK ]; hb_bf_initvect( vect ); for( n = 0; n < nLen; ++n ) { - int i = ( int ) ( n & 0x07 ); + int i = ( int ) ( n & ( HB_BF_CIPHERBLOCK - 1 ) ); if( i == 0 ) hb_bf_encode( bf, vect ); pszData[ n ] = ( vect[ i ] ^= pszSource[ n ] ); @@ -251,13 +251,13 @@ HB_FUNC( HB_BLOWFISHDECRYPT_CFB ) { const char * pszSource = hb_itemGetCPtr( pData ); char * pszData = ( char * ) hb_xgrab( nLen + 1 ); - HB_BYTE vect[ 8 ]; + HB_BYTE vect[ HB_BF_CIPHERBLOCK ]; hb_bf_initvect( vect ); for( n = 0; n < nLen; ++n ) { - int i = ( int ) ( n & 0x07 ); + int i = ( int ) ( n & ( HB_BF_CIPHERBLOCK - 1 ) ); if( i == 0 ) hb_bf_encode( bf, vect ); pszData[ n ] = ( vect[ i ] ^ pszSource[ n ] );