The function SSL_state_string_long() and SSL_state_string() now contain the long and short strings, respectively, for the Next Protocol Negotiation related states in SSL.
--- ssl/ssl_stat.c 25 Nov 2011 00:17:44 -0000 1.22 +++ ssl/ssl_stat.c 26 Oct 2012 17:50:16 -0000 @@ -170,6 +170,8 @@ case SSL3_ST_SW_CHANGE_A: str="SSLv3 write change cipher spec A"; break; case SSL3_ST_CW_CHANGE_B: case SSL3_ST_SW_CHANGE_B: str="SSLv3 write change cipher spec B"; break; +case SSL3_ST_CW_NEXT_PROTO_A: str="SSLv3 write client next protocol negotiation A"; break; +case SSL3_ST_CW_NEXT_PROTO_B: str="SSLv3 write client next protocol negotiation B"; break; case SSL3_ST_CW_FINISHED_A: case SSL3_ST_SW_FINISHED_A: str="SSLv3 write finished A"; break; case SSL3_ST_CW_FINISHED_B: @@ -178,6 +180,11 @@ case SSL3_ST_SR_CHANGE_A: str="SSLv3 read change cipher spec A"; break; case SSL3_ST_CR_CHANGE_B: case SSL3_ST_SR_CHANGE_B: str="SSLv3 read change cipher spec B"; break; +#if defined(OPENSSL_NO_SSL2) || defined(OPENSSL_NO_SSL3) +/* below conflicts with SSL23_ST_SR_CLNT_HELLO_A and SSL23_ST_SR_CLNT_HELLO_B */ +case SSL3_ST_SR_NEXT_PROTO_A: str="SSLv3 read server next protocol negotiation A"; break; +case SSL3_ST_SR_NEXT_PROTO_B: str="SSLv3 read server next protocol negotiation B"; break; +#endif case SSL3_ST_CR_FINISHED_A: case SSL3_ST_SR_FINISHED_A: str="SSLv3 read finished A"; break; case SSL3_ST_CR_FINISHED_B: @@ -329,6 +336,8 @@ case SSL3_ST_CW_CHANGE_A: str="3WCCSA"; break; case SSL3_ST_SW_CHANGE_B: case SSL3_ST_CW_CHANGE_B: str="3WCCSB"; break; +case SSL3_ST_CW_NEXT_PROTO_A: str="3WCNPNA"; break; +case SSL3_ST_CW_NEXT_PROTO_B: str="3WCNPNB"; break; case SSL3_ST_SW_FINISHED_A: case SSL3_ST_CW_FINISHED_A: str="3WFINA"; break; case SSL3_ST_SW_FINISHED_B: @@ -337,6 +346,10 @@ case SSL3_ST_CR_CHANGE_A: str="3RCCSA"; break; case SSL3_ST_SR_CHANGE_B: case SSL3_ST_CR_CHANGE_B: str="3RCCSB"; break; +#if defined(OPENSSL_NO_SSL2) || defined(OPENSSL_NO_SSL3) +case SSL3_ST_SR_NEXT_PROTO_A: str="3RSNPNA"; break; +case SSL3_ST_SR_NEXT_PROTO_B: str="3RSNPNB"; break; +#endif case SSL3_ST_SR_FINISHED_A: case SSL3_ST_CR_FINISHED_A: str="3RFINA"; break; case SSL3_ST_SR_FINISHED_B:
