"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/liblsquic/lsquic_mini_conn_ietf.c" between
lsquic-2.22.1.tar.gz and lsquic-2.23.1.tar.gz

About: LSQUIC is LiteSpeed’s QUIC and HTTP/3 Library. A hint: HTTP/3 uses QUIC as the underlying transport protocol instead of TCP.

lsquic_mini_conn_ietf.c  (lsquic-2.22.1):lsquic_mini_conn_ietf.c  (lsquic-2.23.1)
/* Copyright (c) 2017 - 2020 LiteSpeed Technologies Inc. See LICENSE. */ /* Copyright (c) 2017 - 2020 LiteSpeed Technologies Inc. See LICENSE. */
/* /*
* lsquic_mini_conn_ietf.c -- Mini connection used by the IETF QUIC * lsquic_mini_conn_ietf.c -- Mini connection used by the IETF QUIC
*/ */
#include <assert.h> #include <assert.h>
#include <errno.h> #include <errno.h>
#include <inttypes.h> #include <inttypes.h>
#include <limits.h>
#include <stddef.h> #include <stddef.h>
#include <stdint.h> #include <stdint.h>
#include <string.h> #include <string.h>
#include <sys/queue.h> #include <sys/queue.h>
#include <stdlib.h> #include <stdlib.h>
#include "lsquic.h" #include "lsquic.h"
#include "lsquic_int_types.h" #include "lsquic_int_types.h"
#include "lsquic_sizes.h" #include "lsquic_sizes.h"
#include "lsquic_hash.h" #include "lsquic_hash.h"
skipping to change at line 539 skipping to change at line 540
conn->imc_path.np_pack_size = IQUIC_MAX_IPv6_PACKET_SZ; conn->imc_path.np_pack_size = IQUIC_MAX_IPv6_PACKET_SZ;
conn->imc_conn.cn_pf = select_pf_by_ver(version); conn->imc_conn.cn_pf = select_pf_by_ver(version);
conn->imc_conn.cn_esf.i = esfi; conn->imc_conn.cn_esf.i = esfi;
conn->imc_conn.cn_enc_session = enc_sess; conn->imc_conn.cn_enc_session = enc_sess;
conn->imc_conn.cn_esf_c = select_esf_common_by_ver(version); conn->imc_conn.cn_esf_c = select_esf_common_by_ver(version);
TAILQ_INIT(&conn->imc_packets_out); TAILQ_INIT(&conn->imc_packets_out);
TAILQ_INIT(&conn->imc_app_packets); TAILQ_INIT(&conn->imc_app_packets);
TAILQ_INIT(&conn->imc_crypto_frames); TAILQ_INIT(&conn->imc_crypto_frames);
if (odcid) if (odcid)
imico_peer_addr_validated(conn, "odcid"); imico_peer_addr_validated(conn, "odcid");
#if LSQUIC_DEVEL
{
const char *const s = getenv("LSQUIC_LOSE_0RTT");
if (s && atoi(s))
{
LSQ_DEBUG("will lose 0-RTT packets (via env variable)");
conn->imc_delayed_packets_count = UCHAR_MAX;
}
}
#endif
LSQ_DEBUG("created mini connection object %p; max packet size=%hu", LSQ_DEBUG("created mini connection object %p; max packet size=%hu",
conn, conn->imc_path.np_pack_siz e); conn, conn->imc_path.np_pack_siz e);
return &conn->imc_conn; return &conn->imc_conn;
} }
static void static void
ietf_mini_conn_ci_client_call_on_new (struct lsquic_conn *lconn) ietf_mini_conn_ci_client_call_on_new (struct lsquic_conn *lconn)
{ {
assert(0); assert(0);
skipping to change at line 1543 skipping to change at line 1554
static int static int
imico_have_packets_to_send (struct ietf_mini_conn *conn, lsquic_time_t now) imico_have_packets_to_send (struct ietf_mini_conn *conn, lsquic_time_t now)
{ {
return imico_handle_losses_and_have_unsent(conn, now); return imico_handle_losses_and_have_unsent(conn, now);
} }
void void
lsquic_imico_rechist_init (struct ietf_mini_rechist *rechist, lsquic_imico_rechist_init (struct ietf_mini_rechist *rechist,
const struct ietf_mini_conn *conn, enum packnum_space pns) const struct ietf_mini_conn *conn, enum packnum_space pns)
{ {
assert(pns < IMICO_N_PNS);
rechist->conn = conn; rechist->conn = conn;
rechist->pns = pns; rechist->pns = pns;
if (conn->imc_flags & IMC_TRECHIST) if (conn->imc_flags & IMC_TRECHIST)
lsquic_trechist_iter(&rechist->u.trechist_iter, lsquic_trechist_iter(&rechist->u.trechist_iter,
conn->imc_recvd_packnos.trechist.hist_masks[pns], conn->imc_recvd_packnos.trechist.hist_masks[pns],
conn->imc_recvd_packnos.trechist.hist_elems + TRECHIST_MAX_RANGES * pns); conn->imc_recvd_packnos.trechist.hist_elems + TRECHIST_MAX_RANGES * pns);
else else
{ {
rechist->u.bitmask.cur_set = 0; rechist->u.bitmask.cur_set = 0;
rechist->u.bitmask.cur_idx = 0; rechist->u.bitmask.cur_idx = 0;
 End of changes. 3 change blocks. 
0 lines changed or deleted 12 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)