Thanks for both your answers, that was very helpful (although it probably means what I'm trying to do is more complicated than I thought)... One more question you might be able to answer: When I run my test code and connect to google.com I get the following bytes read for each BIO_read call: 1024 365 289 When I run these against my own server (relatively standard apache2.4+openssl setup) I get very different numbers: 240 287 2 588 2 41 2 115 2 12 2 110 2 69 2 20 2 6 2 34 2 17 2 12 2 37 2 290 2 6 5 Why is this so much more split up? And to what correspond these BIO_read chunks on the protocol level? Are these TLS records? TCP packets? Is there something horribly wrong with my server config because it splits them up in so many small parts? -- Hanno B?ck https://hboeck.de/ mail/jabber: hanno at hboeck.de GPG: BBB51E42 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 819 bytes Desc: OpenPGP digital signature URL: <http://mta.openssl.org/pipermail/openssl-users/attachments/20160426/9b390c73/attachment.sig>