1 /*
2 * Copyright (c) 2004-2008 The Trustees of Indiana University and Indiana
3 * University Research and Technology
4 * Corporation. All rights reserved.
5 * Copyright (c) 2004-2006 The University of Tennessee and The University
6 * of Tennessee Research Foundation. All rights
7 * reserved.
8 * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
9 * University of Stuttgart. All rights reserved.
10 * Copyright (c) 2004-2005 The Regents of the University of California.
11 * All rights reserved.
12 * Copyright (c) 2016-2018 Intel, Inc. All rights reserved.
13 * Copyright (c) 2018 IBM Corporation. All rights reserved.
14 * $COPYRIGHT$
15 *
16 * Additional copyrights may follow
17 *
18 * $HEADER$
19 */
20
21 #ifndef PMIX_PTL_TCP_H
22 #define PMIX_PTL_TCP_H
23
24 #ifdef HAVE_NETINET_IN_H
25 #include <netinet/in.h>
26 #endif
27 #ifdef HAVE_ARPA_INET_H
28 #include <arpa/inet.h>
29 #endif
30 #ifdef HAVE_NETDB_H
31 #include <netdb.h>
32 #endif
33
34 #include "src/mca/ptl/ptl.h"
35
36 BEGIN_C_DECLS
37
38 typedef struct {
39 pmix_ptl_base_component_t super;
40 char *session_tmpdir;
41 char *system_tmpdir;
42 char *if_include;
43 char *if_exclude;
44 int ipv4_port;
45 int ipv6_port;
46 bool disable_ipv4_family;
47 bool disable_ipv6_family;
48 struct sockaddr_storage connection;
49 char *session_filename;
50 char *nspace_filename;
51 char *system_filename;
52 char *rendezvous_filename;
53 int wait_to_connect;
54 int max_retries;
55 char *report_uri;
56 bool remote_connections;
57 int handshake_wait_time;
58 int handshake_max_retries;
59 } pmix_ptl_tcp_component_t;
60
61 extern pmix_ptl_tcp_component_t mca_ptl_tcp_component;
62
63 extern pmix_ptl_module_t pmix_ptl_tcp_module;
64
65 END_C_DECLS
66
67 #endif /* PMIX_PTL_TCP_H */