19 #ifndef MCA_BTL_SCTP_ENDPOINT_H
20 #define MCA_BTL_SCTP_ENDPOINT_H
23 #include "opal/mca/event/event.h"
24 #include "btl_sctp_frag.h"
28 #define MCA_BTL_SCTP_ENDPOINT_CACHE 1
35 MCA_BTL_SCTP_CONNECTING = 0,
36 MCA_BTL_SCTP_CONNECT_ACK,
39 MCA_BTL_SCTP_CONNECTED,
41 } mca_btl_sctp_state_t;
56 #if MCA_BTL_SCTP_ENDPOINT_CACHE
71 int endpoint_has_initialized;
87 int mca_btl_sctp_set_socket_options(
int sd);
struct mca_btl_sctp_proc_t * endpoint_proc
proc structure corresponding to endpoint
Definition: btl_sctp_endpoint.h:53
SCTP fragment derived type.
Definition: btl_sctp_frag.h:43
Structure to represent a single event.
Definition: event_struct.h:87
Definition: mutex_unix.h:53
The opal_list_t interface is used to provide a generic doubly-linked list container for Open MPI...
char * endpoint_cache
cache for the recv (reduce the number of recv syscall)
Definition: btl_sctp_endpoint.h:57
size_t endpoint_retries
number of connection retries attempted
Definition: btl_openib_endpoint.h:192
Definition: opal_list.h:98
opal_event_t endpoint_recv_event
event for async processing of recv frags
Definition: btl_sctp_endpoint.h:69
opal_event_t endpoint_send_event
event for async processing of send frags
Definition: btl_sctp_endpoint.h:68
struct mca_btl_sctp_addr_t * endpoint_addr
address of endpoint
Definition: btl_sctp_endpoint.h:54
opal_mutex_t endpoint_send_lock
lock for concurrent access to endpoint state
Definition: btl_sctp_endpoint.h:66
struct mca_btl_sctp_frag_t * endpoint_recv_frag
current recv frag being processed
Definition: btl_sctp_endpoint.h:62
State of ELAN endpoint connection.
Definition: btl_elan_endpoint.h:33
Structure used to publish SCTP connection information to peers.
Definition: btl_sctp_addr.h:38
Definition: opal_list.h:147
int endpoint_sd
socket connection to endpoint
Definition: btl_sctp_endpoint.h:55
char * endpoint_cache_pos
current position in the cache
Definition: btl_sctp_endpoint.h:58
size_t endpoint_cache_length
length of the data in the cache
Definition: btl_sctp_endpoint.h:59
struct mca_btl_sctp_frag_t * endpoint_send_frag
current send frag being processed
Definition: btl_sctp_endpoint.h:61
struct mca_btl_sctp_module_t * endpoint_btl
BTL instance that created this connection.
Definition: btl_sctp_endpoint.h:52
opal_mutex_t endpoint_recv_lock
lock for concurrent access to endpoint state
Definition: btl_sctp_endpoint.h:67
mca_btl_sctp_state_t endpoint_state
current state of the connection
Definition: btl_sctp_endpoint.h:63
opal_list_t endpoint_frags
list of pending frags to send
Definition: btl_sctp_endpoint.h:65
bool endpoint_nbo
convert headers to network byte order?
Definition: btl_sctp_endpoint.h:70
BTL Module Interface.
Definition: btl_sctp.h:103
Represents the state of a remote process and the set of addresses that it exports.
Definition: btl_sctp_proc.h:37
Definition: btl_sctp_endpoint.h:79
#define OBJ_CLASS_DECLARATION(NAME)
Declaration for class descriptor.
Definition: opal_object.h:236