diff options
Diffstat (limited to 'netinet/sctp_structs.h')
-rwxr-xr-x | netinet/sctp_structs.h | 45 |
1 files changed, 22 insertions, 23 deletions
diff --git a/netinet/sctp_structs.h b/netinet/sctp_structs.h index f333ec8..7214d8d 100755 --- a/netinet/sctp_structs.h +++ b/netinet/sctp_structs.h @@ -32,7 +32,7 @@ #ifdef __FreeBSD__ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: head/sys/netinet/sctp_structs.h 255190 2013-09-03 19:31:59Z tuexen $"); +__FBSDID("$FreeBSD: head/sys/netinet/sctp_structs.h 269945 2014-08-13 15:50:16Z tuexen $"); #endif #ifndef _NETINET_SCTP_STRUCTS_H_ @@ -636,6 +636,14 @@ struct sctp_stream_out { struct sctp_streamhead outqueue; union scheduling_parameters ss_params; uint32_t chunks_on_queues; +#if defined(SCTP_DETAILED_STR_STATS) + uint32_t abandoned_unsent[SCTP_PR_SCTP_MAX + 1]; + uint32_t abandoned_sent[SCTP_PR_SCTP_MAX + 1]; +#else + /* Only the aggregation */ + uint32_t abandoned_unsent[1]; + uint32_t abandoned_sent[1]; +#endif uint16_t stream_no; uint16_t next_sequence_send; /* next one I expect to send out */ uint8_t last_msg_incomplete; @@ -714,8 +722,8 @@ struct sctp_nonpad_sndrcvinfo { struct sctp_cc_functions { void (*sctp_set_initial_cc_param)(struct sctp_tcb *stcb, struct sctp_nets *net); void (*sctp_cwnd_update_after_sack)(struct sctp_tcb *stcb, - struct sctp_association *asoc, - int accum_moved ,int reneged_all, int will_exit); + struct sctp_association *asoc, + int accum_moved ,int reneged_all, int will_exit); void (*sctp_cwnd_update_exit_pf)(struct sctp_tcb *stcb, struct sctp_nets *net); void (*sctp_cwnd_update_after_fr)(struct sctp_tcb *stcb, struct sctp_association *asoc); @@ -1200,30 +1208,21 @@ struct sctp_association { * sum is updated as well. */ - /* Flag to tell if ECN is allowed */ - uint8_t ecn_allowed; + /* Flags whether an extension is supported or not */ + uint8_t ecn_supported; + uint8_t prsctp_supported; + uint8_t auth_supported; + uint8_t asconf_supported; + uint8_t reconfig_supported; + uint8_t nrsack_supported; + uint8_t pktdrop_supported; /* Did the peer make the stream config (add out) request */ uint8_t peer_req_out; - /* flag to indicate if peer can do asconf */ - uint8_t peer_supports_asconf; - /* EY - flag to indicate if peer can do nr_sack*/ - uint8_t peer_supports_nr_sack; - /* pr-sctp support flag */ - uint8_t peer_supports_prsctp; - /* peer authentication support flag */ - uint8_t peer_supports_auth; - /* stream resets are supported by the peer */ - uint8_t peer_supports_strreset; uint8_t local_strreset_support; - uint8_t peer_supports_nat; - /* - * packet drop's are supported by the peer, we don't really care - * about this but we bookkeep it anyway. - */ - uint8_t peer_supports_pktdrop; + uint8_t peer_supports_nat; struct sctp_scoping scope; /* flags to handle send alternate net tracking */ @@ -1248,8 +1247,6 @@ struct sctp_association { uint8_t sctp_cmt_on_off; uint8_t iam_blocking; uint8_t cookie_how[8]; - /* EY 05/05/08 - NR_SACK variable*/ - uint8_t sctp_nr_sack_on_off; /* JRS 5/21/07 - CMT PF variable */ uint8_t sctp_cmt_pf; uint8_t use_precise_time; @@ -1272,6 +1269,8 @@ struct sctp_association { uint32_t timoshutdownack; struct timeval start_time; struct timeval discontinuity_time; + uint64_t abandoned_unsent[SCTP_PR_SCTP_MAX + 1]; + uint64_t abandoned_sent[SCTP_PR_SCTP_MAX + 1]; }; #endif |