|
@@ -1005,7 +1005,8 @@ struct bpf_sock_ops {
|
|
|
|
|
|
/* Definitions for bpf_sock_ops_cb_flags */
|
|
|
#define BPF_SOCK_OPS_RTO_CB_FLAG (1<<0)
|
|
|
-#define BPF_SOCK_OPS_ALL_CB_FLAGS 0x1 /* Mask of all currently
|
|
|
+#define BPF_SOCK_OPS_RETRANS_CB_FLAG (1<<1)
|
|
|
+#define BPF_SOCK_OPS_ALL_CB_FLAGS 0x3 /* Mask of all currently
|
|
|
* supported cb flags
|
|
|
*/
|
|
|
|
|
@@ -1047,6 +1048,12 @@ enum {
|
|
|
* Arg2: value of icsk_rto
|
|
|
* Arg3: whether RTO has expired
|
|
|
*/
|
|
|
+ BPF_SOCK_OPS_RETRANS_CB, /* Called when skb is retransmitted.
|
|
|
+ * Arg1: sequence number of 1st byte
|
|
|
+ * Arg2: # segments
|
|
|
+ * Arg3: return value of
|
|
|
+ * tcp_transmit_skb (0 => success)
|
|
|
+ */
|
|
|
};
|
|
|
|
|
|
#define TCP_BPF_IW 1001 /* Set TCP initial congestion window */
|