X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fsctp%2Fsctp.h;h=5f19566d240a99f384445db80cc1cc8d8804ad52;hb=eb987d3a09f669787014b1553f032219522149e1;hp=f0ce59492853d7a9be5d5382eac47771195e2f42;hpb=6e4d4a3684914d071a9b9249217bb6222aeb1d24;p=vpp.git diff --git a/src/vnet/sctp/sctp.h b/src/vnet/sctp/sctp.h index f0ce5949285..5f19566d240 100644 --- a/src/vnet/sctp/sctp.h +++ b/src/vnet/sctp/sctp.h @@ -192,6 +192,9 @@ typedef struct _sctp_user_configuration typedef struct _sctp_connection { + /** Required for pool_get_aligned */ + CLIB_CACHE_LINE_ALIGN_MARK (cacheline0); + sctp_sub_connection_t sub_conn[MAX_SCTP_CONNECTIONS]; /**< Common transport data. First! */ sctp_user_configuration_t conn_config; /**< Allows tuning of some SCTP behaviors */ @@ -312,19 +315,18 @@ void sctp_init_mss (sctp_connection_t * sctp_conn); void sctp_prepare_initack_chunk (sctp_connection_t * sctp_conn, u8 idx, vlib_buffer_t * b, ip4_address_t * ip4_addr, - ip6_address_t * ip6_addr); -void -sctp_prepare_initack_chunk_for_collision (sctp_connection_t * sctp_conn, - u8 idx, vlib_buffer_t * b, - ip4_address_t * ip4_addr, - ip6_address_t * ip6_addr); + u8 add_ip4, ip6_address_t * ip6_addr, + u8 add_ip6); +void sctp_prepare_initack_chunk_for_collision (sctp_connection_t * sctp_conn, + u8 idx, vlib_buffer_t * b, + ip4_address_t * ip4_addr, + ip6_address_t * ip6_addr); void sctp_prepare_abort_for_collision (sctp_connection_t * sctp_conn, u8 idx, vlib_buffer_t * b, ip4_address_t * ip4_addr, ip6_address_t * ip6_addr); -void -sctp_prepare_operation_error (sctp_connection_t * sctp_conn, u8 idx, - vlib_buffer_t * b, u8 err_cause); +void sctp_prepare_operation_error (sctp_connection_t * sctp_conn, u8 idx, + vlib_buffer_t * b, u8 err_cause); void sctp_prepare_cookie_echo_chunk (sctp_connection_t * sctp_conn, u8 idx, vlib_buffer_t * b, u8 reuse_buffer); void sctp_prepare_cookie_ack_chunk (sctp_connection_t * sctp_conn, u8 idx, @@ -463,11 +465,12 @@ sctp_optparam_type_to_string (u8 type) #define SCTP_MAX_INIT_RETRANS 8 // number of attempts #define SCTP_HB_INTERVAL 30 * SHZ #define SCTP_HB_MAX_BURST 1 - #define SCTP_DATA_IDLE_INTERVAL 15 * SHZ /* 15 seconds; the time-interval after which the connetion is considered IDLE */ - #define SCTP_TO_TIMER_TICK SCTP_TICK*10 /* Period for converting from SCTP_TICK */ +#define SCTP_CONN_RECOVERY 1 << 1 +#define SCTP_FAST_RECOVERY 1 << 2 + typedef struct _sctp_lookup_dispatch { u8 next, error;