Undo change from 1.7 to 1.8:

Returning -1 for an attempt to read from an empty buffer is empty is
not an error that should be signalled via the error queue, it's a
'retry read' condition and is signalled as such.
diff --git a/crypto/bio/bss_mem.c b/crypto/bio/bss_mem.c
index d4d956c..28ff758 100644
--- a/crypto/bio/bss_mem.c
+++ b/crypto/bio/bss_mem.c
@@ -163,11 +163,9 @@
 		}
 	} else if (bm->length == 0)
 		{
-		if (b->num != 0)
+		ret = b->num;
+		if (ret != 0)
 			BIO_set_retry_read(b);
-		ret= b->num;
-		if(ret < 0)
-		    BIOerr(BIO_F_MEM_READ,BIO_R_EOF_ON_MEMORY_BIO);
 		}
 	return(ret);
 	}