avoid malloc of deps arrays for ldso and vdso
[musl] / include / netinet / tcp.h
index 1339fcc..584af2f 100644 (file)
 #define TCP_SAVE_SYN     27
 #define TCP_SAVED_SYN    28
 #define TCP_REPAIR_WINDOW 29
+#define TCP_FASTOPEN_CONNECT 30
+#define TCP_ULP          31
+#define TCP_MD5SIG_EXT   32
+#define TCP_FASTOPEN_KEY 33
+#define TCP_FASTOPEN_NO_COOKIE 34
+#define TCP_ZEROCOPY_RECEIVE   35
+#define TCP_INQ          36
+
+#define TCP_CM_INQ TCP_INQ
 
 #define TCP_ESTABLISHED  1
 #define TCP_SYN_SENT     2
 #define TCP_LISTEN       10
 #define TCP_CLOSING      11
 
+enum {
+       TCP_NLA_PAD,
+       TCP_NLA_BUSY,
+       TCP_NLA_RWND_LIMITED,
+       TCP_NLA_SNDBUF_LIMITED,
+       TCP_NLA_DATA_SEGS_OUT,
+       TCP_NLA_TOTAL_RETRANS,
+       TCP_NLA_PACING_RATE,
+       TCP_NLA_DELIVERY_RATE,
+       TCP_NLA_SND_CWND,
+       TCP_NLA_REORDERING,
+       TCP_NLA_MIN_RTT,
+       TCP_NLA_RECUR_RETRANS,
+       TCP_NLA_DELIVERY_RATE_APP_LMT,
+       TCP_NLA_SNDQ_SIZE,
+       TCP_NLA_CA_STATE,
+       TCP_NLA_SND_SSTHRESH,
+       TCP_NLA_DELIVERED,
+       TCP_NLA_DELIVERED_CE,
+};
+
 #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
 #define TCPOPT_EOL              0
 #define TCPOPT_NOP              1
@@ -190,18 +220,38 @@ struct tcp_info {
        uint32_t tcpi_data_segs_in;
        uint32_t tcpi_data_segs_out;
        uint64_t tcpi_delivery_rate;
+       uint64_t tcpi_busy_time;
+       uint64_t tcpi_rwnd_limited;
+       uint64_t tcpi_sndbuf_limited;
+       uint32_t tcpi_delivered;
+       uint32_t tcpi_delivered_ce;
 };
 
 #define TCP_MD5SIG_MAXKEYLEN    80
 
+#define TCP_MD5SIG_FLAG_PREFIX  1
+
 struct tcp_md5sig {
        struct sockaddr_storage tcpm_addr;
-       uint16_t __tcpm_pad1;
+       uint8_t tcpm_flags;
+       uint8_t tcpm_prefixlen;
        uint16_t tcpm_keylen;
-       uint32_t __tcpm_pad2;
+       uint32_t __tcpm_pad;
        uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];
 };
 
+struct tcp_diag_md5sig {
+       uint8_t tcpm_family;
+       uint8_t tcpm_prefixlen;
+       uint16_t tcpm_keylen;
+       uint32_t tcpm_addr[4];
+       uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];
+};
+
+#define TCP_REPAIR_ON          1
+#define TCP_REPAIR_OFF         0
+#define TCP_REPAIR_OFF_NO_WP   -1
+
 struct tcp_repair_window {
        uint32_t snd_wl1;
        uint32_t snd_wnd;
@@ -210,6 +260,12 @@ struct tcp_repair_window {
        uint32_t rcv_wup;
 };
 
+struct tcp_zerocopy_receive {
+       uint64_t address;
+       uint32_t length;
+       uint32_t recv_skip_hint;
+};
+
 #endif
 
 #endif