Index: ext/libicpf/src/crypt.cpp
===================================================================
diff -u -N -rad4dd0d83cba22eda42a913c4e8bc3244d7379d0 -r338a33bbdb8c82416f0351408eea3243520784e5
--- ext/libicpf/src/crypt.cpp	(.../crypt.cpp)	(revision ad4dd0d83cba22eda42a913c4e8bc3244d7379d0)
+++ ext/libicpf/src/crypt.cpp	(.../crypt.cpp)	(revision 338a33bbdb8c82416f0351408eea3243520784e5)
@@ -90,14 +90,14 @@
 	char_t *pszData=new char_t[tLen+16];		// for padding
 
 	// now encrypt the data
-	if ((iRes=padEncrypt(&ci, &ki, (uchar_t*)pszIn, (int_t)tLen*sizeof(char_t), (uchar_t*)pszData)) < 0)
+	if ((iRes=padEncrypt(&ci, &ki, (uchar_t*)pszIn, (int_t)(tLen*sizeof(char_t)), (uchar_t*)pszData)) < 0)
 	{
 		delete [] pszData;
 		THROW(exception::format("padEncrypt() in strcrypt_aes256() failed with result " IFMT, iRes), EE_DECRYPT, 0, 0);
 	}
 
 	// make the data hex
-	bin2hex((uchar_t*)pszData, iRes, pszOut);
+	bin2hex((uchar_t*)pszData, (uint_t)iRes, pszOut);
 	pszOut[iRes*2]='\0';
 
 	// delete the old stuff