mirror of
https://gitea.invidious.io/iv-org/litespeed-quic.git
synced 2024-08-15 00:53:43 +00:00
Release 2.6.1
- [BUGFIX] set retry token on all resubmitted packets. - Event log: log sent packet flags. In particular, this allows one to see whether token was sent. - Don't migrate client if es_allow_migration is false.
This commit is contained in:
parent
79f2752153
commit
84dbbb75d5
6 changed files with 30 additions and 7 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2019-11-08
|
||||||
|
- 2.6.1
|
||||||
|
- [BUGFIX] set retry token on all resubmitted packets.
|
||||||
|
- Event log: log sent packet flags. In particular, this allows one
|
||||||
|
to see whether token was sent.
|
||||||
|
- Don't migrate client if es_allow_migration is false.
|
||||||
|
|
||||||
2019-11-07
|
2019-11-07
|
||||||
- 2.6.0
|
- 2.6.0
|
||||||
- [FEATURE] QUIC and HTTP/3 Internet Draft 24 support
|
- [FEATURE] QUIC and HTTP/3 Internet Draft 24 support
|
||||||
|
|
|
@ -25,7 +25,7 @@ extern "C" {
|
||||||
|
|
||||||
#define LSQUIC_MAJOR_VERSION 2
|
#define LSQUIC_MAJOR_VERSION 2
|
||||||
#define LSQUIC_MINOR_VERSION 6
|
#define LSQUIC_MINOR_VERSION 6
|
||||||
#define LSQUIC_PATCH_VERSION 0
|
#define LSQUIC_PATCH_VERSION 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Engine flags:
|
* Engine flags:
|
||||||
|
|
|
@ -81,7 +81,7 @@ static const struct alpn_map {
|
||||||
} s_alpns[] = {
|
} s_alpns[] = {
|
||||||
{ LSQVER_ID24, (unsigned char *) "\x05h3-24", },
|
{ LSQVER_ID24, (unsigned char *) "\x05h3-24", },
|
||||||
{ LSQVER_ID23, (unsigned char *) "\x05h3-23", },
|
{ LSQVER_ID23, (unsigned char *) "\x05h3-23", },
|
||||||
{ LSQVER_VERNEG, (unsigned char *) "\x05h3-23", },
|
{ LSQVER_VERNEG, (unsigned char *) "\x05h3-24", },
|
||||||
};
|
};
|
||||||
|
|
||||||
struct enc_sess_iquic;
|
struct enc_sess_iquic;
|
||||||
|
|
|
@ -222,7 +222,7 @@ lsquic_ev_log_packet_sent (const lsquic_cid_t *cid,
|
||||||
packet_out->po_frame_types));
|
packet_out->po_frame_types));
|
||||||
else
|
else
|
||||||
LCID("sent packet %"PRIu64", type %s, crypto: %s, size %hu, frame "
|
LCID("sent packet %"PRIu64", type %s, crypto: %s, size %hu, frame "
|
||||||
"types: %s, ecn: %u, spin: %d; kp: %u, path: %hhu",
|
"types: %s, ecn: %u, spin: %d; kp: %u, path: %hhu, flags: %u",
|
||||||
packet_out->po_packno, lsquic_hety2str[packet_out->po_header_type],
|
packet_out->po_packno, lsquic_hety2str[packet_out->po_header_type],
|
||||||
lsquic_enclev2str[ lsquic_packet_out_enc_level(packet_out) ],
|
lsquic_enclev2str[ lsquic_packet_out_enc_level(packet_out) ],
|
||||||
packet_out->po_enc_data_sz,
|
packet_out->po_enc_data_sz,
|
||||||
|
@ -236,7 +236,8 @@ lsquic_ev_log_packet_sent (const lsquic_cid_t *cid,
|
||||||
/* spin bit value is only valid for short packet headers */
|
/* spin bit value is only valid for short packet headers */
|
||||||
lsquic_packet_out_spin_bit(packet_out),
|
lsquic_packet_out_spin_bit(packet_out),
|
||||||
lsquic_packet_out_kp(packet_out),
|
lsquic_packet_out_kp(packet_out),
|
||||||
packet_out->po_path->np_path_id);
|
packet_out->po_path->np_path_id,
|
||||||
|
(unsigned) packet_out->po_flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2566,9 +2566,13 @@ begin_migra_or_retire_cid (struct ietf_full_conn *conn,
|
||||||
struct sockaddr_in6 v6;
|
struct sockaddr_in6 v6;
|
||||||
} sockaddr;
|
} sockaddr;
|
||||||
|
|
||||||
if (params->tp_disable_active_migration)
|
if (params->tp_disable_active_migration
|
||||||
|
|| !conn->ifc_settings->es_allow_migration)
|
||||||
{
|
{
|
||||||
|
if (params->tp_disable_active_migration)
|
||||||
LSQ_DEBUG("TP disables migration: retire PreferredAddress CID");
|
LSQ_DEBUG("TP disables migration: retire PreferredAddress CID");
|
||||||
|
else
|
||||||
|
LSQ_DEBUG("Migration not allowed: retire PreferredAddress CID");
|
||||||
retire_cid_from_tp(conn, params);
|
retire_cid_from_tp(conn, params);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2605,7 +2605,11 @@ lsquic_send_ctl_retry (struct lsquic_send_ctl *ctl,
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (packet_out->po_nonce)
|
if (packet_out->po_nonce)
|
||||||
|
{
|
||||||
free(packet_out->po_nonce);
|
free(packet_out->po_nonce);
|
||||||
|
packet_out->po_nonce = NULL;
|
||||||
|
packet_out->po_flags &= ~PO_NONCE;
|
||||||
|
}
|
||||||
|
|
||||||
if (0 != send_ctl_set_packet_out_token(ctl, packet_out))
|
if (0 != send_ctl_set_packet_out_token(ctl, packet_out))
|
||||||
{
|
{
|
||||||
|
@ -2624,6 +2628,12 @@ lsquic_send_ctl_retry (struct lsquic_send_ctl *ctl,
|
||||||
packet_out->po_path);
|
packet_out->po_path);
|
||||||
if (!new_packet_out)
|
if (!new_packet_out)
|
||||||
return -1;
|
return -1;
|
||||||
|
if (0 != send_ctl_set_packet_out_token(ctl, new_packet_out))
|
||||||
|
{
|
||||||
|
send_ctl_destroy_packet(ctl, new_packet_out);
|
||||||
|
LSQ_INFO("cannot set out token on packet");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
if (0 == lsquic_packet_out_split_in_two(&ctl->sc_enpub->enp_mm,
|
if (0 == lsquic_packet_out_split_in_two(&ctl->sc_enpub->enp_mm,
|
||||||
packet_out, new_packet_out,
|
packet_out, new_packet_out,
|
||||||
ctl->sc_conn_pub->lconn->cn_pf, sz - 1200))
|
ctl->sc_conn_pub->lconn->cn_pf, sz - 1200))
|
||||||
|
@ -2633,7 +2643,8 @@ lsquic_send_ctl_retry (struct lsquic_send_ctl *ctl,
|
||||||
lsquic_packet_out_set_packno_bits(packet_out, bits);
|
lsquic_packet_out_set_packno_bits(packet_out, bits);
|
||||||
TAILQ_INSERT_AFTER(&ctl->sc_lost_packets, packet_out,
|
TAILQ_INSERT_AFTER(&ctl->sc_lost_packets, packet_out,
|
||||||
new_packet_out, po_next);
|
new_packet_out, po_next);
|
||||||
return 0;
|
new_packet_out->po_flags |= PO_LOST;
|
||||||
|
packet_out->po_flags &= ~PO_SENT_SZ;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue