aboutsummaryrefslogtreecommitdiff
path: root/src/lib/protocols/quic.c
diff options
context:
space:
mode:
authorNardi Ivan <nardi.ivan@gmail.com>2020-09-10 18:19:18 +0200
committerNardi Ivan <nardi.ivan@gmail.com>2020-09-10 18:19:18 +0200
commit8db084ab06ae73e26c2373e92b35cbc5407d41bd (patch)
treedcc3d072d6e530190738e27e1a921850c0df9614 /src/lib/protocols/quic.c
parent7d5a0e1f04bce1b3de1eb5f4eea07fc4d25c8c92 (diff)
TLS: fix memory accesses in QUIC transport parameters extension
Diffstat (limited to 'src/lib/protocols/quic.c')
1 files changed, 16 insertions, 0 deletions
diff --git a/src/lib/protocols/quic.c b/src/lib/protocols/quic.c
index 1913a8d85..f58c030f5 100644
--- a/src/lib/protocols/quic.c
+++ b/src/lib/protocols/quic.c
@@ -170,6 +170,22 @@ int quic_len(const uint8_t *buf, uint64_t *value)
return 0;
}
}
+int quic_len_buffer_still_required(uint8_t value)
+{
+ switch(value >> 6) {
+ case 0:
+ return 0;
+ case 1:
+ return 1;
+ case 2:
+ return 3;
+ case 3:
+ return 7;
+ default: /* No Possible */
+ return 0;
+ }
+}
+
static uint16_t gquic_get_u16(const uint8_t *buf, uint32_t version)
{