summaryrefslogtreecommitdiffstats
path: root/crypto/bio/bss_file.c
diff options
context:
space:
mode:
authorNils Larsch <nils@openssl.org>2006-01-29 23:12:22 +0000
committerNils Larsch <nils@openssl.org>2006-01-29 23:12:22 +0000
commit8c5a2bd6bb9a8c2bb3e1b63c03e57bb1115275d1 (patch)
tree6f47255125d6970ab07881a58be1e7df1e4e9490 /crypto/bio/bss_file.c
parent25a58453ff5b73e7b4d5e2764d7924424694a82a (diff)
add additional checks + cleanup
Submitted by: David Hartman <david_hartman@symantec.com>
Diffstat (limited to 'crypto/bio/bss_file.c')
-rw-r--r--crypto/bio/bss_file.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/crypto/bio/bss_file.c b/crypto/bio/bss_file.c
index 9e161b17f5..b7504baf20 100644
--- a/crypto/bio/bss_file.c
+++ b/crypto/bio/bss_file.c
@@ -128,7 +128,10 @@ BIO *BIO_new_file(const char *filename, const char *mode)
return(NULL);
}
if ((ret=BIO_new(BIO_s_file())) == NULL)
+ {
+ fclose(file);
return(NULL);
+ }
BIO_clear_flags(ret,BIO_FLAGS_UPLINK); /* we did fopen -> we disengage UPLINK */
BIO_set_fp(ret,file,BIO_CLOSE);