  
  static int rsa_item_sign(EVP_MD_CTX *ctx, const ASN1_ITEM *it, void *asn,
                           X509_ALGOR *alg1, X509_ALGOR *alg2,
-@@ -785,6 +791,7 @@ static RSA_OAEP_PARAMS *rsa_oaep_decode(const X509_ALGOR *alg,
-     return pss;
+@@ -762,6 +768,7 @@ static int rsa_item_sign(EVP_MD_CTX *ctx, const ASN1_ITEM *it, void *asn,
+     return 2;
  }
  
 +#ifndef OPENSSL_NO_CMS
- static int rsa_cms_decrypt(CMS_RecipientInfo *ri)
- {
-     EVP_PKEY_CTX *pkctx;
-@@ -857,7 +864,9 @@ static int rsa_cms_decrypt(CMS_RecipientInfo *ri)
-         X509_ALGOR_free(maskHash);
-     return rv;
- }
-+#endif
- 
-+#ifndef OPENSSL_NO_CMS
- static int rsa_cms_encrypt(CMS_RecipientInfo *ri)
- {
-     const EVP_MD *md, *mgf1md;
-@@ -920,6 +929,7 @@ static int rsa_cms_encrypt(CMS_RecipientInfo *ri)
+ static RSA_OAEP_PARAMS *rsa_oaep_decode(const X509_ALGOR *alg,
+                                         X509_ALGOR **pmaskHash)
+ {
+@@ -920,6 +927,7 @@ static int rsa_cms_encrypt(CMS_RecipientInfo *ri)
          ASN1_STRING_free(os);
      return rv;
  }

                 else if (RAND_bytes(rec->input, ivlen) <= 0)
                     return -1;
             }
diff --git a/util/mkerr.pl b/util/mkerr.pl
index 09ebebe..cd57ade 100644
--- a/util/mkerr.pl

 {
     return 0;
diff --git a/crypto/rsa/rsa_ameth.c b/crypto/rsa/rsa_ameth.c
index 4e06218..ddead3d 100644
--- a/crypto/rsa/rsa_ameth.c
+++ b/crypto/rsa/rsa_ameth.c
@@ -68,10 +68,12 @@
