corosync  3.0.3
ipc_cfg.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2005 MontaVista Software, Inc.
3  * Copyright (c) 2009-2013 Red Hat, Inc.
4  *
5  * All rights reserved.
6  *
7  * Author: Steven Dake (sdake@redhat.com)
8  *
9  * This software licensed under BSD license, the text of which follows:
10  *
11  * Redistribution and use in source and binary forms, with or without
12  * modification, are permitted provided that the following conditions are met:
13  *
14  * - Redistributions of source code must retain the above copyright notice,
15  * this list of conditions and the following disclaimer.
16  * - Redistributions in binary form must reproduce the above copyright notice,
17  * this list of conditions and the following disclaimer in the documentation
18  * and/or other materials provided with the distribution.
19  * - Neither the name of the MontaVista Software, Inc. nor the names of its
20  * contributors may be used to endorse or promote products derived from this
21  * software without specific prior written permission.
22  *
23  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
24  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
27  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
33  * THE POSSIBILITY OF SUCH DAMAGE.
34  */
35 #ifndef IPC_CFG_H_DEFINED
36 #define IPC_CFG_H_DEFINED
37 
38 #include <netinet/in.h>
39 #include <corosync/corotypes.h>
40 #include <corosync/mar_gen.h>
41 
42 #define CFG_INTERFACE_NAME_MAX_LEN 128
43 #define CFG_INTERFACE_STATUS_MAX_LEN 512
44 /*
45  * Too keep future ABI compatibility, this value
46  * is intentionaly bigger then INTERFACE_MAX
47  */
48 #define CFG_MAX_INTERFACES 16
49 
63 };
64 
85 };
86 
91  struct qb_ipc_request_header header __attribute__((aligned(8)));
92 };
93 
98  struct qb_ipc_response_header header __attribute__((aligned(8)));
99  mar_uint32_t interface_count __attribute__((aligned(8)));
100  char interface_name[CFG_MAX_INTERFACES][CFG_INTERFACE_NAME_MAX_LEN] __attribute__((aligned(8)));
101  char interface_status[CFG_MAX_INTERFACES][CFG_INTERFACE_STATUS_MAX_LEN] __attribute__((aligned(8)));
102 };
103 
108  struct qb_ipc_request_header header __attribute__((aligned(8)));
109 };
110 
115  struct qb_ipc_response_header header __attribute__((aligned(8)));
116 };
117 
122  struct qb_ipc_request_header header __attribute__((aligned(8)));
123  unsigned int nodeid __attribute__((aligned(8)));
124  cs_name_t reason __attribute__((aligned(8)));
125 };
126 
131  struct qb_ipc_response_header header __attribute__((aligned(8)));
132 };
133 
138  struct qb_ipc_request_header header __attribute__((aligned(8)));
139  unsigned int flags;
140 };
141 
146  struct qb_ipc_response_header header __attribute__((aligned(8)));
147 };
148 
153  struct qb_ipc_request_header header __attribute__((aligned(8)));
154  unsigned int response;
155 };
156 
161  struct qb_ipc_response_header header __attribute__((aligned(8)));
162 };
163 
168  struct qb_ipc_response_header header __attribute__((aligned(8)));
169  unsigned int flags;
170 };
171 
176  struct qb_ipc_request_header header __attribute__((aligned(8)));
177  unsigned int nodeid;
178 };
179 
184  struct qb_ipc_response_header header __attribute__((aligned(8)));
185  unsigned int family;
186  unsigned int num_addrs;
187  /* array of TOTEMIP_ADDRLEN items */
188  char addrs[];
189 };
190 
195  struct qb_ipc_request_header header __attribute__((aligned(8)));
196 };
197 
202  struct qb_ipc_response_header header __attribute__((aligned(8)));
203  mar_uint32_t local_nodeid __attribute__((aligned(8)));
204 };
205 
210  struct qb_ipc_request_header header __attribute__((aligned(8)));
211 };
212 
217  struct qb_ipc_response_header header __attribute__((aligned(8)));
218 };
219 
224  struct qb_ipc_request_header header __attribute__((aligned(8)));
225 };
226 
231  struct qb_ipc_response_header header __attribute__((aligned(8)));
232 };
233 
237 typedef enum {
243 
247 typedef enum {
252 
256 typedef enum {
261 
262 
263 #endif /* IPC_CFG_H_DEFINED */
res_lib_cfg_types
The res_lib_cfg_types enum.
Definition: ipc_cfg.h:68
The res_lib_cfg_reopen_log_files struct.
Definition: ipc_cfg.h:230
#define CFG_INTERFACE_STATUS_MAX_LEN
Definition: ipc_cfg.h:43
The res_lib_cfg_replytoshutdown struct.
Definition: ipc_cfg.h:160
corosync_shutdown_flags_t
corosync_shutdown_flags_t enum
Definition: ipc_cfg.h:256
The res_lib_cfg_testshutdown struct.
Definition: ipc_cfg.h:167
The req_lib_cfg_ringreenable struct.
Definition: ipc_cfg.h:107
req_lib_cfg_types
The req_lib_cfg_types enum.
Definition: ipc_cfg.h:53
The res_lib_cfg_get_node_addrs struct.
Definition: ipc_cfg.h:183
The req_lib_cfg_get_node_addrs struct.
Definition: ipc_cfg.h:175
The req_lib_cfg_reload_config struct.
Definition: ipc_cfg.h:209
The res_lib_cfg_local_get struct.
Definition: ipc_cfg.h:201
The res_lib_cfg_killnode struct.
Definition: ipc_cfg.h:130
unsigned int num_addrs
Definition: ipc_cfg.h:186
unsigned int flags
Definition: ipc_cfg.h:169
The req_lib_cfg_tryshutdown struct.
Definition: ipc_cfg.h:137
The res_lib_cfg_ringreenable struct.
Definition: ipc_cfg.h:114
#define CFG_INTERFACE_NAME_MAX_LEN
Definition: ipc_cfg.h:42
corosync_administrative_state_t
corosync_administrative_state_t enum
Definition: ipc_cfg.h:247
The req_lib_cfg_replytoshutdown struct.
Definition: ipc_cfg.h:152
The res_lib_cfg_tryshutdown struct.
Definition: ipc_cfg.h:145
corosync_administrative_target_t
corosync_administrative_target_t enum
Definition: ipc_cfg.h:237
#define CFG_MAX_INTERFACES
Definition: ipc_cfg.h:48
The req_lib_cfg_ringstatusget struct.
Definition: ipc_cfg.h:90
uint32_t mar_uint32_t
Definition: mar_gen.h:53
unsigned int flags
Definition: ipc_cfg.h:139
The res_lib_cfg_ringstatusget struct.
Definition: ipc_cfg.h:97
struct qb_ipc_request_header header __attribute__((aligned(8)))
The res_lib_cfg_reload_config struct.
Definition: ipc_cfg.h:216
The req_lib_cfg_reopen_log_files struct.
Definition: ipc_cfg.h:223
unsigned int nodeid
Definition: coroapi.h:75
The req_lib_cfg_killnode struct.
Definition: ipc_cfg.h:121
The cs_name_t struct.
Definition: corotypes.h:65
The req_lib_cfg_local_get struct.
Definition: ipc_cfg.h:194