summaryrefslogtreecommitdiffstats
path: root/FAQ
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2006-09-06 11:53:50 +0000
committerDr. Stephen Henson <steve@openssl.org>2006-09-06 11:53:50 +0000
commit715020e3342685fd003478e2d6ee9993fd2d47db (patch)
tree69f4e6cca91a34d0948c30019a5803e0262cc598 /FAQ
parent2952886010a59f92a22f933cb81ee7735e008fef (diff)
Add an FAQ.
Diffstat (limited to 'FAQ')
-rw-r--r--FAQ20
1 files changed, 20 insertions, 0 deletions
diff --git a/FAQ b/FAQ
index f2a383a297..8f89f30d54 100644
--- a/FAQ
+++ b/FAQ
@@ -67,6 +67,7 @@ OpenSSL - Frequently Asked Questions
* Why doesn't my server application receive a client certificate?
* Why does compilation fail due to an undefined symbol NID_uniqueIdentifier?
* I think I've detected a memory leak, is this a bug?
+* Why doesn't a memory BIO work when a file does?
===============================================================================
@@ -916,5 +917,24 @@ thread-safe):
ERR_free_strings(), EVP_cleanup() and CRYPTO_cleanup_all_ex_data().
+* Why doesn't a memory BIO work when a file does?
+
+This can occur in several cases for example reading an S/MIME email message.
+The reason is that a memory BIO can do one of two things when all the data
+has been read from it.
+
+The default behaviour is to indicate that no more data is available and that
+the call should be retried, this is to allow the application to fill up the BIO
+again if necessary.
+
+Alternatively it can indicate that no more data is available and that EOF has
+been reached.
+
+If a memory BIO is to behave in the same way as a file this second behaviour
+is needed. This must be done by calling:
+
+ BIO_set_mem_eof_return(bio, 0);
+
+
===============================================================================