aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/cc/cc.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netinet/cc/cc.h')
-rw-r--r--sys/netinet/cc/cc.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/netinet/cc/cc.h b/sys/netinet/cc/cc.h
index be84a6841d15..e5fc328cc0c2 100644
--- a/sys/netinet/cc/cc.h
+++ b/sys/netinet/cc/cc.h
@@ -163,6 +163,15 @@ struct cc_algo {
/* Called for an additional ECN processing apart from RFC3168. */
void (*ecnpkt_handler)(struct cc_var *ccv);
+ /* Called when a new "round" begins, if the transport is tracking rounds. */
+ void (*newround)(struct cc_var *ccv, uint32_t round_cnt);
+
+ /*
+ * Called when a RTT sample is made (fas = flight at send, if you dont have it
+ * send the cwnd in).
+ */
+ void (*rttsample)(struct cc_var *ccv, uint32_t usec_rtt, uint32_t rxtcnt, uint32_t fas);
+
/* Called for {get|set}sockopt() on a TCP socket with TCP_CCALGOOPT. */
int (*ctl_output)(struct cc_var *, struct sockopt *, void *);