aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorAlexis La Goutte <alexis.lagoutte@gmail.com>2020-01-15 15:46:56 +0100
committerAnders Broman <a.broman58@gmail.com>2020-01-16 06:40:58 +0000
commit4ad18674b734993f0ff7b1721825e4c265adf710 (patch)
treedbe20ee65f3a8c22da86eb3351f5af1d77087924 /epan
parent4ee88f3e34828d8a6ba472b6c6208b5bae2426d0 (diff)
QUIC: Add Loss Bits Transport Parameter
https://igorlord.github.io/draft-ferrieuxhamchaoui-tsvwg-lossbits/draft-ferrieuxhamchaoui-quic-lossbits.html#name-transport-parameter Change-Id: I05df0e025726a35e3b6eb265b0530ae0022c6764 Reviewed-on: https://code.wireshark.org/review/35820 Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-tls-utils.c6
-rw-r--r--epan/dissectors/packet-tls-utils.h10
2 files changed, 14 insertions, 2 deletions
diff --git a/epan/dissectors/packet-tls-utils.c b/epan/dissectors/packet-tls-utils.c
index d6693023bd..9de5d2adf7 100644
--- a/epan/dissectors/packet-tls-utils.c
+++ b/epan/dissectors/packet-tls-utils.c
@@ -1391,6 +1391,7 @@ const value_string quic_transport_parameter_id[] = {
{ SSL_HND_QUIC_TP_PREFERRED_ADDRESS, "preferred_address" },
{ SSL_HND_QUIC_TP_ACTIVE_CONNECTION_ID_LIMIT, "active_connection_id_limit" },
{ SSL_HND_QUIC_TP_MAX_DATAGRAM_FRAME_SIZE, "max_datagram_frame_size" },
+ { SSL_HND_QUIC_TP_LOSS_BITS, "loss_bits" },
{ 0, NULL }
};
@@ -6798,6 +6799,11 @@ ssl_dissect_hnd_hello_ext_quic_transport_parameters(ssl_common_dissect_t *hf, tv
proto_item_append_text(parameter_tree, " %" G_GINT64_MODIFIER "u", value);
offset += len;
break;
+ case SSL_HND_QUIC_TP_LOSS_BITS:
+ proto_tree_add_item(parameter_tree, hf->hf.hs_ext_quictp_parameter_loss_bits,
+ tvb, offset, 1, ENC_BIG_ENDIAN);
+ offset += 1;
+ break;
default:
offset += parameter_length;
/*TODO display expert info about unknown ? */
diff --git a/epan/dissectors/packet-tls-utils.h b/epan/dissectors/packet-tls-utils.h
index 3f4f52cc7d..f758e10ff8 100644
--- a/epan/dissectors/packet-tls-utils.h
+++ b/epan/dissectors/packet-tls-utils.h
@@ -166,7 +166,7 @@ typedef enum {
#define SSL_HND_QUIC_TP_PREFERRED_ADDRESS 13
#define SSL_HND_QUIC_TP_ACTIVE_CONNECTION_ID_LIMIT 14
#define SSL_HND_QUIC_TP_MAX_DATAGRAM_FRAME_SIZE 32
-
+#define SSL_HND_QUIC_TP_LOSS_BITS 4183
/*
* Lookup tables
*/
@@ -918,6 +918,7 @@ typedef struct ssl_common_dissect {
gint hs_ext_quictp_parameter_pa_statelessresettoken;
gint hs_ext_quictp_parameter_active_connection_id_limit;
gint hs_ext_quictp_parameter_max_datagram_frame_size;
+ gint hs_ext_quictp_parameter_loss_bits;
gint esni_suite;
gint esni_record_digest_length;
@@ -1146,7 +1147,7 @@ ssl_common_dissect_t name = { \
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, \
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, \
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, \
- -1, -1, -1, -1, \
+ -1, -1, -1, -1, -1, \
}, \
/* ett */ { \
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, \
@@ -2032,6 +2033,11 @@ ssl_common_dissect_t name = { \
FT_UINT64, BASE_DEC, NULL, 0x00, \
NULL, HFILL } \
}, \
+ { & name .hf.hs_ext_quictp_parameter_loss_bits, \
+ { "loss_bits", prefix ".quic.parameter.loss_bits", \
+ FT_UINT8, BASE_DEC, NULL, 0x00, \
+ NULL, HFILL } \
+ }, \
{ & name .hf.esni_suite, \
{ "Cipher Suite", prefix ".esni.suite", \
FT_UINT16, BASE_HEX|BASE_EXT_STRING, &ssl_31_ciphersuite_ext, 0x0, \