Update of /cvsroot/perl-openssl/Crypt/OpenSSL/RSA
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2576
Modified Files:
RSA.xs RSA.pm
Log Message:
Apply patch from Jim Radford <ra...@bl...> for SHA{224,256,384,512}
support
Index: RSA.xs
===================================================================
RCS file: /cvsroot/perl-openssl/Crypt/OpenSSL/RSA/RSA.xs,v
retrieving revision 1.58
retrieving revision 1.59
diff -C2 -d -r1.58 -r1.59
*** RSA.xs 9 Apr 2006 22:46:39 -0000 1.58
--- RSA.xs 12 Apr 2006 06:05:06 -0000 1.59
***************
*** 76,79 ****
--- 76,93 ----
return SHA_DIGEST_LENGTH;
break;
+ #ifdef SHA512_DIGEST_LENGTH
+ case NID_sha224:
+ return SHA224_DIGEST_LENGTH;
+ break;
+ case NID_sha256:
+ return SHA256_DIGEST_LENGTH;
+ break;
+ case NID_sha384:
+ return SHA384_DIGEST_LENGTH;
+ break;
+ case NID_sha512:
+ return SHA512_DIGEST_LENGTH;
+ break;
+ #endif
case NID_ripemd160:
return RIPEMD160_DIGEST_LENGTH;
***************
*** 100,103 ****
--- 114,131 ----
return SHA1(text, text_length, NULL);
break;
+ #ifdef SHA512_DIGEST_LENGTH
+ case NID_sha224:
+ return SHA224(text, text_length, NULL);
+ break;
+ case NID_sha256:
+ return SHA256(text, text_length, NULL);
+ break;
+ case NID_sha384:
+ return SHA384(text, text_length, NULL);
+ break;
+ case NID_sha512:
+ return SHA512(text, text_length, NULL);
+ break;
+ #endif
case NID_ripemd160:
return RIPEMD160(text, text_length, NULL);
***************
*** 460,463 ****
--- 488,519 ----
p_rsa->hashMode = NID_sha1;
+ #ifdef SHA512_DIGEST_LENGTH
+
+ void
+ use_sha224_hash(p_rsa)
+ rsaData* p_rsa;
+ CODE:
+ p_rsa->hashMode = NID_sha224;
+
+ void
+ use_sha256_hash(p_rsa)
+ rsaData* p_rsa;
+ CODE:
+ p_rsa->hashMode = NID_sha256;
+
+ void
+ use_sha384_hash(p_rsa)
+ rsaData* p_rsa;
+ CODE:
+ p_rsa->hashMode = NID_sha384;
+
+ void
+ use_sha512_hash(p_rsa)
+ rsaData* p_rsa;
+ CODE:
+ p_rsa->hashMode = NID_sha512;
+
+ #endif
+
void
use_ripemd160_hash(p_rsa)
Index: RSA.pm
===================================================================
RCS file: /cvsroot/perl-openssl/Crypt/OpenSSL/RSA/RSA.pm,v
retrieving revision 1.39
retrieving revision 1.40
diff -C2 -d -r1.39 -r1.40
*** RSA.pm 15 Nov 2005 04:26:02 -0000 1.39
--- RSA.pm 12 Apr 2006 06:05:06 -0000 1.40
***************
*** 241,244 ****
--- 241,249 ----
and verifying messages. This is the default.
+ =item use_sha224_hash, use_sha256_hash, use_sha384_hash, use_sha512_hash
+
+ These FIPS 180-2 hash algorithms, for use when signing and verifying
+ messages, are only available with newer openssl versions (>= 0.9.8).
+
=item use_ripemd160_hash
|