]> err.no Git - linux-2.6/blobdiff - include/net/inet_connection_sock.h
Merge branch 'upstream-fixes'
[linux-2.6] / include / net / inet_connection_sock.h
index e50e2b890c6d5fd6b8abe3789255510003508f40..fa587c94e9d0483fc774356b933235cddafcb44c 100644 (file)
 #define _INET_CONNECTION_SOCK_H
 
 #include <linux/compiler.h>
-#include <linux/ip.h>
 #include <linux/string.h>
 #include <linux/timer.h>
+
+#include <net/inet_sock.h>
 #include <net/request_sock.h>
 
 #define INET_CSK_DEBUG 1
@@ -60,6 +61,7 @@ struct inet_connection_sock_af_ops {
  * @icsk_timeout:         Timeout
  * @icsk_retransmit_timer: Resend (no ack)
  * @icsk_rto:             Retransmit timeout
+ * @icsk_pmtu_cookie      Last pmtu seen by socket
  * @icsk_ca_ops                   Pluggable congestion control hook
  * @icsk_af_ops                   Operations which are AF_INET{4,6} specific
  * @icsk_ca_state:        Congestion control state
@@ -68,6 +70,7 @@ struct inet_connection_sock_af_ops {
  * @icsk_backoff:         Backoff
  * @icsk_syn_retries:      Number of allowed SYN (or equivalent) retries
  * @icsk_probes_out:      unanswered 0 window probes
+ * @icsk_ext_hdr_len:     Network protocol overhead (IP/IPv6 options)
  * @icsk_ack:             Delayed ACK control data
  */
 struct inet_connection_sock {
@@ -79,15 +82,17 @@ struct inet_connection_sock {
        struct timer_list         icsk_retransmit_timer;
        struct timer_list         icsk_delack_timer;
        __u32                     icsk_rto;
-       struct tcp_congestion_ops *icsk_ca_ops;
-       struct inet_connection_sock_af_ops *icsk_af_ops;
+       __u32                     icsk_pmtu_cookie;
+       const struct tcp_congestion_ops *icsk_ca_ops;
+       const struct inet_connection_sock_af_ops *icsk_af_ops;
+       unsigned int              (*icsk_sync_mss)(struct sock *sk, u32 pmtu);
        __u8                      icsk_ca_state;
        __u8                      icsk_retransmits;
        __u8                      icsk_pending;
        __u8                      icsk_backoff;
        __u8                      icsk_syn_retries;
        __u8                      icsk_probes_out;
-       /* 2 BYTES HOLE, TRY TO PACK! */
+       __u16                     icsk_ext_hdr_len;
        struct {
                __u8              pending;       /* ACK is pending                         */
                __u8              quick;         /* Scheduled number of quick acks         */