summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2019-08-12 10:04:50 +0200
committerDaniel Stenberg <daniel@haxx.se>2019-08-12 10:04:50 +0200
commit95c1b00493bf8b4e526ac89e8c4e3f92201cd32c (patch)
tree141140fb3750c5d4ab1ac31652d34a1b5868abd3
parentf88d865bf4612ee9ce6b311952ae6d2f2bbf05c0 (diff)
downloadcurl-bagder/curl-version-quic.tar.gz
curl_version_info: offer quic (and h3) library infobagder/curl-version-quic
-rw-r--r--docs/libcurl/curl_version_info.38
-rw-r--r--include/curl/curl.h2
-rw-r--r--lib/version.c11
3 files changed, 20 insertions, 1 deletions
diff --git a/docs/libcurl/curl_version_info.3 b/docs/libcurl/curl_version_info.3
index 07cdf0c47..1329974da 100644
--- a/docs/libcurl/curl_version_info.3
+++ b/docs/libcurl/curl_version_info.3
@@ -78,6 +78,14 @@ 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 library + version or NULL */
+
} curl_version_info_data;
.fi
diff --git a/include/curl/curl.h b/include/curl/curl.h
index 9429355a9..723821e0f 100644
--- a/include/curl/curl.h
+++ b/include/curl/curl.h
@@ -2763,6 +2763,8 @@ typedef struct {
(MAJOR << 16) | (MINOR << 8) | PATCH */
const char *nghttp2_version; /* human readable string. */
+ char *quic_version; /* human readable quic library + version or NULL */
+
} curl_version_info_data;
#define CURL_VERSION_IPV6 (1<<0) /* IPv6-enabled */
diff --git a/lib/version.c b/lib/version.c
index c1b5a1c51..5a969b943 100644
--- a/lib/version.c
+++ b/lib/version.c
@@ -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;