diff options
author | Hugo Landau <hlandau@openssl.org> | 2023-07-03 15:45:25 +0100 |
---|---|---|
committer | Pauli <pauli@openssl.org> | 2023-07-19 13:03:11 +1000 |
commit | fd6c1476a09b4766ce6c435d50ad16acebcd46df (patch) | |
tree | cf650e1630c2fe0cc857fb436c7a66e7d373c473 /include/internal | |
parent | 79a80f8b58bed854eb30a22e1643869dcc29e005 (diff) |
QUIC ACKM: Clean up max_ack_delay tracking and separate TX and RX values
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/21349)
Diffstat (limited to 'include/internal')
-rw-r--r-- | include/internal/quic_ackm.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/internal/quic_ackm.h b/include/internal/quic_ackm.h index ca0c1aab1f..96673303bd 100644 --- a/include/internal/quic_ackm.h +++ b/include/internal/quic_ackm.h @@ -38,6 +38,23 @@ void ossl_ackm_set_ack_deadline_callback(OSSL_ACKM *ackm, void *arg), void *arg); +/* + * Configures the RX-side maximum ACK delay. This is the maximum amount of time + * the peer is allowed to delay sending an ACK frame after receiving an + * ACK-eliciting packet. The peer communicates this value via a transport + * parameter and it must be provided to the ACKM. + */ +void ossl_ackm_set_rx_max_ack_delay(OSSL_ACKM *ackm, OSSL_TIME rx_max_ack_delay); + +/* + * Configures the TX-side maximum ACK delay. This is the maximum amount of time + * we are allowed to delay sending an ACK frame after receiving an ACK-eliciting + * packet. Note that this cannot be changed after a connection is established as + * it must be accurately reported in the transport parameters we send to our + * peer. + */ +void ossl_ackm_set_tx_max_ack_delay(OSSL_ACKM *ackm, OSSL_TIME tx_max_ack_delay); + typedef struct ossl_ackm_tx_pkt_st OSSL_ACKM_TX_PKT; struct ossl_ackm_tx_pkt_st { /* The packet number of the transmitted packet. */ |