@@ -1734,7 +1734,9 @@ static int RsaUnPad_PSS(byte *pkcsBlock, unsigned int pkcsBlockLen,
17341734
17351735 if ((ret = RsaMGF (mgf , pkcsBlock + maskLen , (word32 )hLen , tmp , (word32 )maskLen ,
17361736 heap )) != 0 ) {
1737+ #if !defined(WOLFSSL_NO_MALLOC ) || defined(WOLFSSL_STATIC_MEMORY )
17371738 XFREE (tmp , heap , DYNAMIC_TYPE_RSA_BUFFER );
1739+ #endif
17381740 return ret ;
17391741 }
17401742
@@ -1748,7 +1750,9 @@ static int RsaUnPad_PSS(byte *pkcsBlock, unsigned int pkcsBlockLen,
17481750 }
17491751 }
17501752 if (tmp [i ] != (pkcsBlock [i ] ^ 0x01 )) {
1753+ #if !defined(WOLFSSL_NO_MALLOC ) || defined(WOLFSSL_STATIC_MEMORY )
17511754 XFREE (tmp , heap , DYNAMIC_TYPE_RSA_BUFFER );
1755+ #endif
17521756 WOLFSSL_MSG ("RsaUnPad_PSS: Padding Error Match" );
17531757 return PSS_SALTLEN_RECOVER_E ;
17541758 }
@@ -1759,13 +1763,17 @@ static int RsaUnPad_PSS(byte *pkcsBlock, unsigned int pkcsBlockLen,
17591763 {
17601764 for (i = 0 ; i < maskLen - 1 - saltLen ; i ++ ) {
17611765 if (tmp [i ] != pkcsBlock [i ]) {
1766+ #if !defined(WOLFSSL_NO_MALLOC ) || defined(WOLFSSL_STATIC_MEMORY )
17621767 XFREE (tmp , heap , DYNAMIC_TYPE_RSA_BUFFER );
1768+ #endif
17631769 WOLFSSL_MSG ("RsaUnPad_PSS: Padding Error Match" );
17641770 return PSS_SALTLEN_E ;
17651771 }
17661772 }
17671773 if (tmp [i ] != (pkcsBlock [i ] ^ 0x01 )) {
1774+ #if !defined(WOLFSSL_NO_MALLOC ) || defined(WOLFSSL_STATIC_MEMORY )
17681775 XFREE (tmp , heap , DYNAMIC_TYPE_RSA_BUFFER );
1776+ #endif
17691777 WOLFSSL_MSG ("RsaUnPad_PSS: Padding Error End" );
17701778 return PSS_SALTLEN_E ;
17711779 }
0 commit comments