Edit

IABSD.fr/ports/security/p5-Crypt-OpenSSL-RSA/patches

Branch :

  • Show log

    Commit

  • Author : tb
    Date : 2024-05-30 17:28:42
    Hash : 3d433057
    Message : p5-Crypt-OpenSSL-RSA: don't rely on libcrypto returning static buffers Upstream is currently in the painful process of adapting their code to OpenSSL 3.0. This diff clashes with those efforts. I'll upstram a version once the dust will have settled.

  • patch-RSA_xs
  • Passing in a NULL md is no longer supported
    
    Index: RSA.xs
    --- RSA.xs.orig
    +++ RSA.xs
    @@ -115,6 +115,7 @@ int get_digest_length(int hash_method)
     unsigned char* get_message_digest(SV* text_SV, int hash_method)
     {
         STRLEN text_length;
    +    static unsigned char md[EVP_MAX_MD_SIZE];
         unsigned char* text;
     
         text = (unsigned char*) SvPV(text_SV, text_length);
    @@ -122,31 +123,31 @@ unsigned char* get_message_digest(SV* text_SV, int has
         switch(hash_method)
         {
             case NID_md5:
    -            return MD5(text, text_length, NULL);
    +            return MD5(text, text_length, md);
                 break;
             case NID_sha1:
    -            return SHA1(text, text_length, NULL);
    +            return SHA1(text, text_length, md);
                 break;
     #ifdef SHA512_DIGEST_LENGTH
             case NID_sha224:
    -            return SHA224(text, text_length, NULL);
    +            return SHA224(text, text_length, md);
                 break;
             case NID_sha256:
    -            return SHA256(text, text_length, NULL);
    +            return SHA256(text, text_length, md);
                 break;
             case NID_sha384:
    -            return SHA384(text, text_length, NULL);
    +            return SHA384(text, text_length, md);
                 break;
             case NID_sha512:
    -            return SHA512(text, text_length, NULL);
    +            return SHA512(text, text_length, md);
                 break;
     #endif
             case NID_ripemd160:
    -            return RIPEMD160(text, text_length, NULL);
    +            return RIPEMD160(text, text_length, md);
                 break;
     #ifdef WHIRLPOOL_DIGEST_LENGTH
             case NID_whirlpool:
    -            return WHIRLPOOL(text, text_length, NULL);
    +            return WHIRLPOOL(text, text_length, md);
                 break;
     #endif
             default: