I have a custom BIO that I want to be non-blocking. Currently when calling
SSL_connect when using this BIO, it is returning -1, but
calling SSL_get_error after does not return SSL_ERROR_WANT_READ
nor SSL_ERROR_WANT_WRITE.

How does my custom BIO indicate that it supports non blocking IO?

I tried this:

long gdbio_ctrl(BIO* const b, const int cmd, const long num, void* const
ptr) {
    DBGPRINTF("BIO CTRL %d:%ld\n", cmd, num);
    switch(cmd) {
        case BIO_C_SET_NBIO: return 1;
        default: return 0;
    }
}

but it does not seem to be enough.


Regards,
Keean.

Reply via email to