Accept NULL in *_free.
[openssl.git] / crypto / rsa / rsa_none.c
index f0dd9436571a3ea96fcf670642cd361449e1099e..6385b556be83ef3a678d202d610c430f909b2e9b 100644 (file)
@@ -79,11 +79,12 @@ int flen;
        return(1);
        }
 
-int RSA_padding_check_none(to,tlen,from,flen)
+int RSA_padding_check_none(to,tlen,from,flen,num)
 unsigned char *to;
 int tlen;
 unsigned char *from;
 int flen;
+int num;
        {
        int j;
 
@@ -93,7 +94,7 @@ int flen;
                RSAerr(RSA_F_RSA_PADDING_CHECK_NONE,RSA_R_DATA_TOO_LARGE);
                return(-1);
                }
-       if (*(from++) != 0)
+       if (flen+1 >= num)
                {
                RSAerr(RSA_F_RSA_PADDING_CHECK_NONE,RSA_R_BAD_ZERO_BYTE);
                return(-1);