Fix a memory leak, and don't generate inappropriate error message
[openssl.git] / apps / x509.c
index 2d6384184c9e08d2f3d82145a787718cab038ab1..5403576585adfe4bf4d7f93725ff4a8f806a0c33 100644 (file)
@@ -474,13 +474,18 @@ bad:
                        if (BIO_read_filename(in,infile) <= 0)
                                {
                                perror(infile);
+                               BIO_free(in);
                                goto end;
                                }
                        }
                req=PEM_read_bio_X509_REQ(in,NULL,NULL,NULL);
                BIO_free(in);
 
-               if (req == NULL) { perror(infile); goto end; }
+               if (req == NULL)
+                       {
+                       ERR_print_errors(bio_err);
+                       goto end;
+                       }
 
                if (    (req->req_info == NULL) ||
                        (req->req_info->pubkey == NULL) ||