Release 2.19.2

- [BUGFIX] Do not reduce PLPMTU size by network overhead.
- [BUGFIX] Windows build.
This commit is contained in:
Dmitri Tikhonov 2020-07-30 15:42:51 -04:00
parent 41a496506f
commit 244e8c6fb9
11 changed files with 40 additions and 19 deletions

View file

@ -738,9 +738,7 @@ lsquic_gquic_full_conn_client_new (struct lsquic_engine_public *enpub,
if (!max_packet_size)
{
if (enpub->enp_settings.es_base_plpmtu)
max_packet_size = enpub->enp_settings.es_base_plpmtu
- (is_ipv4 ? 20 : 40) /* IP header */
- 8; /* UDP header */
max_packet_size = enpub->enp_settings.es_base_plpmtu;
else if (is_ipv4)
max_packet_size = GQUIC_MAX_IPv4_PACKET_SZ;
else

View file

@ -705,7 +705,7 @@ calc_base_packet_size (const struct ietf_full_conn *conn, int is_ipv6)
unsigned short size;
if (conn->ifc_settings->es_base_plpmtu)
size = conn->ifc_settings->es_base_plpmtu - TRANSPORT_OVERHEAD(is_ipv6);
size = conn->ifc_settings->es_base_plpmtu;
else if (is_ipv6)
size = IQUIC_MAX_IPv6_PACKET_SZ;
else
@ -6964,13 +6964,15 @@ check_or_schedule_mtu_probe (struct ietf_full_conn *conn, lsquic_time_t now)
return;
}
net_header_sz = TRANSPORT_OVERHEAD(NP_IS_IPv6(&cpath->cop_path));
if (ds->ds_failed_size)
mtu_ceiling = ds->ds_failed_size; /* Don't subtract net_header_sz */
mtu_ceiling = ds->ds_failed_size;
else if (conn->ifc_settings->es_max_plpmtu)
mtu_ceiling = conn->ifc_settings->es_max_plpmtu - net_header_sz;
mtu_ceiling = conn->ifc_settings->es_max_plpmtu;
else
{
net_header_sz = TRANSPORT_OVERHEAD(NP_IS_IPv6(&cpath->cop_path));
mtu_ceiling = 1500 - net_header_sz;
}
if (conn->ifc_max_udp_payload < mtu_ceiling)
{

View file

@ -10,9 +10,6 @@
#include <stdlib.h>
#include <string.h>
#include <sys/queue.h>
#ifdef MSVC
#include <vc_compat.h>
#endif
#include "lsquic.h"
#include "lsquic_types.h"

View file

@ -514,9 +514,7 @@ lsquic_mini_conn_ietf_new (struct lsquic_engine_public *enpub,
conn->imc_enpub = enpub;
conn->imc_created = packet_in->pi_received;
if (enpub->enp_settings.es_base_plpmtu)
conn->imc_path.np_pack_size = enpub->enp_settings.es_base_plpmtu
- (is_ipv4 ? 20 : 40) /* IP header */
- 8; /* UDP header */
conn->imc_path.np_pack_size = enpub->enp_settings.es_base_plpmtu;
else if (is_ipv4)
conn->imc_path.np_pack_size = IQUIC_MAX_IPv4_PACKET_SZ;
else

View file

@ -8,9 +8,6 @@
#include <inttypes.h>
#include <stdlib.h>
#include <string.h>
#ifdef MSVC
#include <vc_compat.h>
#endif
#include "lsquic_int_types.h"
#include "lsquic_types.h"

View file

@ -3205,7 +3205,7 @@ send_ctl_resize_q (struct lsquic_send_ctl *ctl, struct lsquic_packets_tailq *q,
unsigned count_src = 0, count_dst = 0;
int idx;
#ifdef MSVC
#ifdef _MSC_VER
idx = 0;
#endif