QUIC_PN
QUIC_PN pn,
QUIC_PN pn,
QUIC_PN pkt_num;
int ossl_ackm_is_rx_pn_processable(OSSL_ACKM *ackm, QUIC_PN pn, int pkt_space);
int ossl_ackm_get_largest_unacked(OSSL_ACKM *ackm, int pkt_space, QUIC_PN *pn);
int pkt_space, QUIC_PN pn);
QUIC_PN ossl_ackm_get_largest_acked(OSSL_ACKM *ackm, int pkt_space);
QUIC_PN pkt_num;
QUIC_PN largest_acked;
QUIC_PN pn;
typedef int(ossl_qrx_late_validation_cb)(QUIC_PN pn, int pn_space,
QUIC_PN init_largest_pn[QUIC_PN_SPACE_NUM];
typedef void(ossl_qrx_key_update_cb)(QUIC_PN pn, void *arg);
QUIC_PN pn;
QUIC_PN ossl_quic_tx_packetiser_get_next_pn(OSSL_QUIC_TX_PACKETISER *txp,
static ossl_unused ossl_inline QUIC_PN ossl_quic_pn_max(QUIC_PN a, QUIC_PN b)
static ossl_unused ossl_inline QUIC_PN ossl_quic_pn_min(QUIC_PN a, QUIC_PN b)
static ossl_unused ossl_inline int ossl_quic_pn_valid(QUIC_PN pn)
return pn < (((QUIC_PN)1) << 62);
QUIC_PN start, end;
int ossl_quic_frame_ack_contains_pn(const OSSL_QUIC_FRAME_ACK *ack, QUIC_PN pn);
QUIC_PN largest_pn,
QUIC_PN *res_pn);
int ossl_quic_wire_determine_pn_len(QUIC_PN pn, QUIC_PN largest_acked);
int ossl_quic_wire_encode_pkt_hdr_pn(QUIC_PN pn,
QUIC_PN pn,
QUIC_PN pn,
QUIC_PN pn,
QUIC_PN last_pn_acked = 0;
int ossl_ackm_get_largest_unacked(OSSL_ACKM *ackm, int pkt_space, QUIC_PN *pn)
static int ack_contains(const OSSL_QUIC_FRAME_ACK *ack, QUIC_PN pkt_num)
static int ackm_is_missing(OSSL_ACKM *ackm, int pkt_space, QUIC_PN pkt_num)
int ossl_ackm_is_rx_pn_processable(OSSL_ACKM *ackm, QUIC_PN pn, int pkt_space)
int pkt_space, QUIC_PN pn)
QUIC_PN ossl_ackm_get_largest_acked(OSSL_ACKM *ackm, int pkt_space)
QUIC_PN watermark;
QUIC_PN watermark);
QUIC_PN highest = QUIC_PN_INVALID;
QUIC_PN pn)
QUIC_PN watermark)
QUIC_PN largest_acked_pkt[QUIC_PN_SPACE_NUM];
QUIC_PN lowest_unacked_pkt[QUIC_PN_SPACE_NUM];
QUIC_PN rx_largest_pn[QUIC_PN_SPACE_NUM];
static int range_contains(const OSSL_QUIC_ACK_RANGE *range, QUIC_PN pn)
QUIC_PN largest_pn_lost = 0;
QUIC_PN pn = 0;
static int rx_late_validate(QUIC_PN pn, int pn_space, void *arg)
static int rx_late_validate(QUIC_PN pn, int pn_space, void *arg);
static void rxku_detected(QUIC_PN pn, void *arg);
static void rxku_detected(QUIC_PN pn, void *arg)
QUIC_PN txku_pn;
QUIC_PN rxku_trigger_pn;
QUIC_PN largest_pn[QUIC_PN_SPACE_NUM];
QUIC_PN pn, uint32_t enc_level,
QUIC_PN pn;
QUIC_PN pn, uint32_t enc_level,
if (!ossl_assert(nonce_len >= (int)sizeof(QUIC_PN)))
for (i = 0; i < sizeof(QUIC_PN); ++i)
static void qrx_key_update_initiated(OSSL_QRX *qrx, QUIC_PN pn)
uint32_t enc_level, QUIC_PN pn,
if (!ossl_assert(nonce_len >= (int)sizeof(QUIC_PN))) {
for (i = 0; i < sizeof(QUIC_PN); ++i)
QUIC_PN ossl_quic_tx_packetiser_get_next_pn(OSSL_QUIC_TX_PACKETISER *txp,
int ossl_quic_frame_ack_contains_pn(const OSSL_QUIC_FRAME_ACK *ack, QUIC_PN pn)
QUIC_PN largest_pn,
QUIC_PN *res_pn)
truncated_pn = ((QUIC_PN)enc_pn[0] << 8)
| (QUIC_PN)enc_pn[1];
truncated_pn = ((QUIC_PN)enc_pn[0] << 16)
| ((QUIC_PN)enc_pn[1] << 8)
| (QUIC_PN)enc_pn[2];
truncated_pn = ((QUIC_PN)enc_pn[0] << 24)
| ((QUIC_PN)enc_pn[1] << 16)
| ((QUIC_PN)enc_pn[2] << 8)
| (QUIC_PN)enc_pn[3];
int ossl_quic_wire_determine_pn_len(QUIC_PN pn,
QUIC_PN largest_acked)
int ossl_quic_wire_encode_pkt_hdr_pn(QUIC_PN pn,
static const QUIC_PN linear_20[] = {
static const QUIC_PN high_linear_20[] = {
const QUIC_PN *pn_table;
QUIC_PN pn; /* PKT, ACK */
QUIC_PN pn; /* PKT, CHECK_(UN)PROC, TX, RX_ACK */
QUIC_PN largest_acked; /* TX */
QUIC_PN largest_pn;
QUIC_PN pn, tx_largest_acked, rx_largest_pn;
QUIC_PN res_pn;