diff options
Diffstat (limited to 'include/net/sctp/structs.h')
| -rw-r--r-- | include/net/sctp/structs.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/include/net/sctp/structs.h b/include/net/sctp/structs.h index 0ce0443c5b79..7f25195f9855 100644 --- a/include/net/sctp/structs.h +++ b/include/net/sctp/structs.h | |||
| @@ -548,7 +548,8 @@ struct sctp_af { | |||
| 548 | struct dst_entry *(*get_dst) (struct sctp_association *asoc, | 548 | struct dst_entry *(*get_dst) (struct sctp_association *asoc, |
| 549 | union sctp_addr *daddr, | 549 | union sctp_addr *daddr, |
| 550 | union sctp_addr *saddr); | 550 | union sctp_addr *saddr); |
| 551 | void (*get_saddr) (struct sctp_association *asoc, | 551 | void (*get_saddr) (struct sctp_sock *sk, |
| 552 | struct sctp_association *asoc, | ||
| 552 | struct dst_entry *dst, | 553 | struct dst_entry *dst, |
| 553 | union sctp_addr *daddr, | 554 | union sctp_addr *daddr, |
| 554 | union sctp_addr *saddr); | 555 | union sctp_addr *saddr); |
| @@ -587,6 +588,7 @@ struct sctp_af { | |||
| 587 | int (*is_ce) (const struct sk_buff *sk); | 588 | int (*is_ce) (const struct sk_buff *sk); |
| 588 | void (*seq_dump_addr)(struct seq_file *seq, | 589 | void (*seq_dump_addr)(struct seq_file *seq, |
| 589 | union sctp_addr *addr); | 590 | union sctp_addr *addr); |
| 591 | void (*ecn_capable)(struct sock *sk); | ||
| 590 | __u16 net_header_len; | 592 | __u16 net_header_len; |
| 591 | int sockaddr_len; | 593 | int sockaddr_len; |
| 592 | sa_family_t sa_family; | 594 | sa_family_t sa_family; |
| @@ -901,7 +903,10 @@ struct sctp_transport { | |||
| 901 | * calculation completes (i.e. the DATA chunk | 903 | * calculation completes (i.e. the DATA chunk |
| 902 | * is SACK'd) clear this flag. | 904 | * is SACK'd) clear this flag. |
| 903 | */ | 905 | */ |
| 904 | int rto_pending; | 906 | __u8 rto_pending; |
| 907 | |||
| 908 | /* Flag to track the current fast recovery state */ | ||
| 909 | __u8 fast_recovery; | ||
| 905 | 910 | ||
| 906 | /* | 911 | /* |
| 907 | * These are the congestion stats. | 912 | * These are the congestion stats. |
| @@ -920,6 +925,9 @@ struct sctp_transport { | |||
| 920 | /* Data that has been sent, but not acknowledged. */ | 925 | /* Data that has been sent, but not acknowledged. */ |
| 921 | __u32 flight_size; | 926 | __u32 flight_size; |
| 922 | 927 | ||
| 928 | /* TSN marking the fast recovery exit point */ | ||
| 929 | __u32 fast_recovery_exit; | ||
| 930 | |||
| 923 | /* Destination */ | 931 | /* Destination */ |
| 924 | struct dst_entry *dst; | 932 | struct dst_entry *dst; |
| 925 | /* Source address. */ | 933 | /* Source address. */ |
| @@ -1044,7 +1052,7 @@ void sctp_transport_route(struct sctp_transport *, union sctp_addr *, | |||
| 1044 | struct sctp_sock *); | 1052 | struct sctp_sock *); |
| 1045 | void sctp_transport_pmtu(struct sctp_transport *); | 1053 | void sctp_transport_pmtu(struct sctp_transport *); |
| 1046 | void sctp_transport_free(struct sctp_transport *); | 1054 | void sctp_transport_free(struct sctp_transport *); |
| 1047 | void sctp_transport_reset_timers(struct sctp_transport *); | 1055 | void sctp_transport_reset_timers(struct sctp_transport *, int); |
| 1048 | void sctp_transport_hold(struct sctp_transport *); | 1056 | void sctp_transport_hold(struct sctp_transport *); |
| 1049 | void sctp_transport_put(struct sctp_transport *); | 1057 | void sctp_transport_put(struct sctp_transport *); |
| 1050 | void sctp_transport_update_rto(struct sctp_transport *, __u32); | 1058 | void sctp_transport_update_rto(struct sctp_transport *, __u32); |
| @@ -1134,6 +1142,9 @@ struct sctp_outq { | |||
| 1134 | /* How many unackd bytes do we have in-flight? */ | 1142 | /* How many unackd bytes do we have in-flight? */ |
| 1135 | __u32 outstanding_bytes; | 1143 | __u32 outstanding_bytes; |
| 1136 | 1144 | ||
| 1145 | /* Are we doing fast-rtx on this queue */ | ||
| 1146 | char fast_rtx; | ||
| 1147 | |||
| 1137 | /* Corked? */ | 1148 | /* Corked? */ |
| 1138 | char cork; | 1149 | char cork; |
| 1139 | 1150 | ||
