pacemaker  2.0.1-9e909a5bdd
Scalable High-Availability cluster resource manager
remote_internal.h
Go to the documentation of this file.
1 /*
2  * Copyright 2008-2018 Andrew Beekhof <andrew@beekhof.net>
3  *
4  * This source code is licensed under the GNU Lesser General Public License
5  * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
6  */
7 
8 #ifndef PCMK__REMOTE__H
9 # define PCMK__REMOTE__H
10 
11 // internal functions from remote.c
12 
13 typedef struct crm_remote_s crm_remote_t;
14 
15 int crm_remote_send(crm_remote_t *remote, xmlNode *msg);
16 int crm_remote_ready(crm_remote_t *remote, int total_timeout /*ms */ );
17 gboolean crm_remote_recv(crm_remote_t *remote, int total_timeout /*ms */,
18  int *disconnected);
19 xmlNode *crm_remote_parse_buffer(crm_remote_t *remote);
20 int crm_remote_tcp_connect(const char *host, int port);
21 int crm_remote_tcp_connect_async(const char *host, int port,
22  int timeout /*ms */,
23  int *timer_id, void *userdata,
24  void (*callback) (void *userdata, int sock));
25 int crm_remote_accept(int ssock);
26 void crm_sockaddr2str(void *sa, char *s);
27 
28 # ifdef HAVE_GNUTLS_GNUTLS_H
29 # include <gnutls/gnutls.h>
30 
31 gnutls_session_t *pcmk__new_tls_session(int csock, unsigned int conn_type,
32  gnutls_credentials_type_t cred_type,
33  void *credentials);
34 int pcmk__init_tls_dh(gnutls_dh_params_t *dh_params);
35 int pcmk__read_handshake_data(crm_client_t *client);
36 
45 int crm_initiate_client_tls_handshake(crm_remote_t *remote, int timeout_ms);
46 
47 # endif // HAVE_GNUTLS_GNUTLS_H
48 #endif // PCMK__REMOTE__H
int crm_remote_tcp_connect(const char *host, int port)
Definition: remote.c:1090
int crm_remote_accept(int ssock)
Definition: remote.c:1125
AIS_Host host
Definition: internal.h:84
int crm_remote_send(crm_remote_t *remote, xmlNode *msg)
Definition: remote.c:481
void gnutls_session_t
Definition: cib_remote.c:42
int crm_remote_ready(crm_remote_t *remote, int total_timeout)
Definition: remote.c:602
int crm_remote_tcp_connect_async(const char *host, int port, int timeout, int *timer_id, void *userdata, void(*callback)(void *userdata, int sock))
Definition: remote.c:1006
gboolean crm_remote_recv(crm_remote_t *remote, int total_timeout, int *disconnected)
Definition: remote.c:764
void crm_sockaddr2str(void *sa, char *s)
Convert an IP address (IPv4 or IPv6) to a string for logging.
Definition: remote.c:1106
xmlNode * crm_remote_parse_buffer(crm_remote_t *remote)
Definition: remote.c:530