[openssl-users] SSL_F_SSL3_GET_MESSAGE and SSL_R_UNEXPECTED_MESSAGE

Matt Caswell matt at openssl.org
Sun Jan 18 20:25:36 UTC 2015



On 18/01/15 20:13, Jeffrey Walton wrote:
> My bad... I think this is the code (from around line 500 in s3_both.c):
> 
>         /* s->init_num == 4 */
>         if ((mt >= 0) && (*p != mt))
>             {
>             al=SSL_AD_UNEXPECTED_MESSAGE;
>             SSLerr(SSL_F_SSL3_GET_MESSAGE,SSL_R_UNEXPECTED_MESSAGE);
>             goto f_err;
>             }
> 
> What would cause this error on a client?
> 

The client has an internal state machine which tells it what message it
should expect next from the server based on its current state. Only
certain messages are legal at any one time. The variable mt holds the
message type of the message it is expecting to receive. The variable p
points into the message buffer for the message that it has actually
received. If the message sent from the server doesn't match the one the
client was expecting then you get this error.

Matt



More information about the openssl-users mailing list