curl_version_info: offer quic (and h3) library info

Closes #4216
This commit is contained in:
Daniel Stenberg 2019-08-12 10:04:50 +02:00
parent 551806255f
commit 1a2df1518a
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2
3 changed files with 21 additions and 2 deletions

View File

@ -78,6 +78,15 @@ typedef struct {
(MAJOR << 24) | (MINOR << 12) | PATCH */
const char *brotli_version; /* human readable string. */
/* when 'age is CURLVERSION_SIXTH or alter (7.66.0 or later), these fields
also exist */
unsigned int nghttp2_ver_num; /* Numeric nghttp2 version
(MAJOR << 16) | (MINOR << 8) | PATCH */
const char *nghttp2_version; /* human readable string. */
char *quic_version; /* human readable quic (+ HTTP/3) library +
version or NULL */
} curl_version_info_data;
.fi

View File

@ -2762,7 +2762,8 @@ typedef struct {
unsigned int nghttp2_ver_num; /* Numeric nghttp2 version
(MAJOR << 16) | (MINOR << 8) | PATCH */
const char *nghttp2_version; /* human readable string. */
char *quic_version; /* human readable quic (+ HTTP/3) library +
version or NULL */
} curl_version_info_data;
#define CURL_VERSION_IPV6 (1<<0) /* IPv6-enabled */

View File

@ -395,7 +395,8 @@ static curl_version_info_data version_info = {
0, /* brotli_ver_num */
NULL, /* brotli version */
0, /* nghttp2 version number */
NULL /* nghttp2 version string */
NULL, /* nghttp2 version string */
NULL /* quic library string */
};
curl_version_info_data *curl_version_info(CURLversion stamp)
@ -479,6 +480,14 @@ curl_version_info_data *curl_version_info(CURLversion stamp)
}
#endif
#ifdef ENABLE_QUIC
{
static char quicbuffer[80];
Curl_quic_ver(quicbuffer, sizeof(quicbuffer));
version_info.quic_version = quicbuffer;
}
#endif
(void)stamp; /* avoid compiler warnings, we don't use this */
initialized = true;