mirror of
https://github.com/moparisthebest/curl
synced 2024-12-22 08:08:50 -05:00
http2: avoid logging neg "failure" if h2 was not requested
This commit is contained in:
parent
65d141e6da
commit
680d5fd041
@ -288,6 +288,9 @@ struct ssl_connect_data {
|
|||||||
current state of the connection. */
|
current state of the connection. */
|
||||||
bool use;
|
bool use;
|
||||||
ssl_connection_state state;
|
ssl_connection_state state;
|
||||||
|
#ifdef USE_NGHTTP2
|
||||||
|
bool asked_for_h2;
|
||||||
|
#endif
|
||||||
#ifdef USE_SSLEAY
|
#ifdef USE_SSLEAY
|
||||||
/* these ones requires specific SSL-types */
|
/* these ones requires specific SSL-types */
|
||||||
SSL_CTX* ctx;
|
SSL_CTX* ctx;
|
||||||
|
@ -618,6 +618,7 @@ gtls_connect_step1(struct connectdata *conn,
|
|||||||
gnutls_alpn_set_protocols(session, protocols, protocols_size, 0);
|
gnutls_alpn_set_protocols(session, protocols, protocols_size, 0);
|
||||||
infof(data, "ALPN, offering %s, %s\n", NGHTTP2_PROTO_VERSION_ID,
|
infof(data, "ALPN, offering %s, %s\n", NGHTTP2_PROTO_VERSION_ID,
|
||||||
ALPN_HTTP_1_1);
|
ALPN_HTTP_1_1);
|
||||||
|
connssl->asked_for_h2 = TRUE;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
infof(data, "SSL, can't negotiate HTTP/2.0 without ALPN\n");
|
infof(data, "SSL, can't negotiate HTTP/2.0 without ALPN\n");
|
||||||
@ -1047,7 +1048,7 @@ gtls_connect_step3(struct connectdata *conn,
|
|||||||
conn->negnpn = NPN_HTTP1_1;
|
conn->negnpn = NPN_HTTP1_1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else if(connssl->asked_for_h2) {
|
||||||
infof(data, "ALPN, server did not agree to a protocol\n");
|
infof(data, "ALPN, server did not agree to a protocol\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -665,18 +665,19 @@ static void HandshakeCallback(PRFileDesc *sock, void *arg)
|
|||||||
if(SSL_GetNextProto(sock, &state, buf, &buflen, buflenmax) == SECSuccess) {
|
if(SSL_GetNextProto(sock, &state, buf, &buflen, buflenmax) == SECSuccess) {
|
||||||
|
|
||||||
switch(state) {
|
switch(state) {
|
||||||
case SSL_NEXT_PROTO_NO_SUPPORT:
|
case SSL_NEXT_PROTO_NO_SUPPORT:
|
||||||
case SSL_NEXT_PROTO_NO_OVERLAP:
|
case SSL_NEXT_PROTO_NO_OVERLAP:
|
||||||
|
if(connssl->asked_for_h2)
|
||||||
infof(conn->data, "TLS, neither ALPN nor NPN succeeded\n");
|
infof(conn->data, "TLS, neither ALPN nor NPN succeeded\n");
|
||||||
return;
|
return;
|
||||||
#ifdef SSL_ENABLE_ALPN
|
#ifdef SSL_ENABLE_ALPN
|
||||||
case SSL_NEXT_PROTO_SELECTED:
|
case SSL_NEXT_PROTO_SELECTED:
|
||||||
infof(conn->data, "ALPN, server accepted to use %.*s\n", buflen, buf);
|
infof(conn->data, "ALPN, server accepted to use %.*s\n", buflen, buf);
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
case SSL_NEXT_PROTO_NEGOTIATED:
|
case SSL_NEXT_PROTO_NEGOTIATED:
|
||||||
infof(conn->data, "NPN, server accepted to use %.*s\n", buflen, buf);
|
infof(conn->data, "NPN, server accepted to use %.*s\n", buflen, buf);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(buflen == NGHTTP2_PROTO_VERSION_ID_LEN &&
|
if(buflen == NGHTTP2_PROTO_VERSION_ID_LEN &&
|
||||||
@ -1639,6 +1640,7 @@ static CURLcode nss_setup_connect(struct connectdata *conn, int sockindex)
|
|||||||
if(SSL_SetNextProtoNego(connssl->handle, alpn_protos, alpn_protos_len)
|
if(SSL_SetNextProtoNego(connssl->handle, alpn_protos, alpn_protos_len)
|
||||||
!= SECSuccess)
|
!= SECSuccess)
|
||||||
goto error;
|
goto error;
|
||||||
|
connssl->asked_for_h2 = TRUE;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
infof(data, "SSL, can't negotiate HTTP/2.0 with neither NPN nor ALPN\n");
|
infof(data, "SSL, can't negotiate HTTP/2.0 with neither NPN nor ALPN\n");
|
||||||
|
@ -1742,6 +1742,7 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
|
|||||||
|
|
||||||
infof(data, "ALPN, offering %s, %s\n", NGHTTP2_PROTO_VERSION_ID,
|
infof(data, "ALPN, offering %s, %s\n", NGHTTP2_PROTO_VERSION_ID,
|
||||||
ALPN_HTTP_1_1);
|
ALPN_HTTP_1_1);
|
||||||
|
connssl->asked_for_h2 = TRUE;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -2028,14 +2029,16 @@ static CURLcode ossl_connect_step2(struct connectdata *conn, int sockindex)
|
|||||||
|
|
||||||
if(len == NGHTTP2_PROTO_VERSION_ID_LEN &&
|
if(len == NGHTTP2_PROTO_VERSION_ID_LEN &&
|
||||||
memcmp(NGHTTP2_PROTO_VERSION_ID, neg_protocol, len) == 0) {
|
memcmp(NGHTTP2_PROTO_VERSION_ID, neg_protocol, len) == 0) {
|
||||||
conn->negnpn = NPN_HTTP2;
|
conn->negnpn = NPN_HTTP2;
|
||||||
}
|
}
|
||||||
else if(len == ALPN_HTTP_1_1_LENGTH && memcmp(ALPN_HTTP_1_1,
|
else if(len ==
|
||||||
neg_protocol, ALPN_HTTP_1_1_LENGTH) == 0) {
|
ALPN_HTTP_1_1_LENGTH && memcmp(ALPN_HTTP_1_1,
|
||||||
|
neg_protocol,
|
||||||
|
ALPN_HTTP_1_1_LENGTH) == 0) {
|
||||||
conn->negnpn = NPN_HTTP1_1;
|
conn->negnpn = NPN_HTTP1_1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else if(connssl->asked_for_h2)
|
||||||
infof(data, "ALPN, server did not agree to a protocol\n");
|
infof(data, "ALPN, server did not agree to a protocol\n");
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -358,6 +358,7 @@ polarssl_connect_step1(struct connectdata *conn,
|
|||||||
ssl_set_alpn_protocols(&connssl->ssl, protocols);
|
ssl_set_alpn_protocols(&connssl->ssl, protocols);
|
||||||
infof(data, "ALPN, offering %s, %s\n", protocols[0],
|
infof(data, "ALPN, offering %s, %s\n", protocols[0],
|
||||||
protocols[1]);
|
protocols[1]);
|
||||||
|
connssl->asked_for_h2 = TRUE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -466,7 +467,7 @@ polarssl_connect_step2(struct connectdata *conn,
|
|||||||
conn->negnpn = NPN_HTTP1_1;
|
conn->negnpn = NPN_HTTP1_1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else if(connssl->asked_for_h2) {
|
||||||
infof(data, "ALPN, server did not agree to a protocol\n");
|
infof(data, "ALPN, server did not agree to a protocol\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user