I am facing issue while trying to parse the Alert received from client.
I could see the Alert on wireshark as "Alert(21) Handshake Failure" but
while trying to parse it from below code doesn't work.
I want to parse this error and try to re-initiate the handshake from my
ctx_info_callback( const SSL *s, int where, int ret )
const char *str;
if( w & SSL_ST_ACCEPT) // I only have server implemented
str = "SSL_accept"
if( where & SSL_CB_LOOP)
// printed state string
}else if (where & SSL_CB_ALERT)
// printed alert type
}else if ( where & SSL_CB_EXIT )
// checked ret type --> Run time only shows "SSL_accept : error in
SSLv3 read client hello B"
I could not complete SSL_do_handshake (in certain cases like network
connection failure) completed and my server gets stuck in read message.
I am trying to understand what might be causing this issue but meanwhile the
client is keep on re-initializing and sending Alert messages.
Any insight on as why I keep on getting this "read client hello B" message
will be helpful. I am using non-blocking sockets so based on documentation
it is correct behavior and for most of the cases I see the sever completes
handshake after certain tries and gets out of this loop.
Only for few cases it gets stuck like when the network connection is lost
but I think if the network connection re-initializes I should be able to
recover it if I could parse these Alerts ?
In order to re-initialize connection I am completely resetting all CTX,SSL,
and socket objects so there is no stale SSL object which might be causing