On Jun 28 2016, Cory Benfield <cory-4cwz1abt8o3qxopxs62...@public.gmane.org> wrote: >> On 28 Jun 2016, at 17:50, Nikolaus Rath >> <nikolaus-bth8mxji...@public.gmane.org> wrote: >> >> Hum. When using BIOs, does this mean that I can safely refill/read-out >> the BIO when getting SSLWantRead/SSLWantRead and then call the SSL >> function again, or do I need to keep track of the detailed io state >> again? >> >> Best, >> -Nikolaus > > If you get SSLWantRead it’s a signal that you’re waiting for more data > from the socket: you shouldn’t expect to see SSLWantWrite in regular > use with a BIO.
What happens if the data that OpenSSL wants to send doesn't fit in the provided BIO? Shouldn't that raise SSLWantWrite? > You shove application data in: if you get no error, > you write out as much as you can from the BIO. ...but that may not be enough. > If you get WantRead, you make sure you go back to the socket because > you need some data from it. That's the behavior that I would expect, yes. It is also what I would expect to be the right method when using ssl (or PyOpenSSL) with non-blocking sockets. But in the latter cases is actually insufficient, so I've grown cautious. Best, -Nikolaus -- GPG encrypted emails preferred. Key id: 0xD113FCAC3C4E599F Fingerprint: ED31 791B 2C5C 1613 AF38 8B8A D113 FCAC 3C4E 599F »Time flies like an arrow, fruit flies like a Banana.« _______________________________________________ Cryptography-dev mailing list Cryptography-dev@python.org https://mail.python.org/mailman/listinfo/cryptography-dev