corosync  2.4.6
ipc_cmap.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2011 Red Hat, Inc.
3  *
4  * All rights reserved.
5  *
6  * Author: Jan Friesse (jfriesse@redhat.com)
7  *
8  * This software licensed under BSD license, the text of which follows:
9  *
10  * Redistribution and use in source and binary forms, with or without
11  * modification, are permitted provided that the following conditions are met:
12  *
13  * - Redistributions of source code must retain the above copyright notice,
14  * this list of conditions and the following disclaimer.
15  * - Redistributions in binary form must reproduce the above copyright notice,
16  * this list of conditions and the following disclaimer in the documentation
17  * and/or other materials provided with the distribution.
18  * - Neither the name of the Red Hat, Inc. nor the names of its
19  * contributors may be used to endorse or promote products derived from this
20  * software without specific prior written permission.
21  *
22  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
23  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
26  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
31  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
32  * THE POSSIBILITY OF SUCH DAMAGE.
33  */
34 
35 #ifndef IPC_CMAP_H_DEFINED
36 #define IPC_CMAP_H_DEFINED
37 
38 #include <netinet/in.h>
39 #include <corosync/corotypes.h>
40 #include <corosync/mar_gen.h>
41 
55 };
56 
71 };
72 
77  struct qb_ipc_request_header header __attribute__((aligned(8)));
78  mar_name_t key_name __attribute__((aligned(8)));
79  mar_size_t value_len __attribute__((aligned(8)));
80  mar_uint8_t type __attribute__((aligned(8)));
81  mar_uint8_t value[] __attribute__((aligned(8)));
82 };
83 
88  struct qb_ipc_response_header header __attribute__((aligned(8)));
89 };
90 
95  struct qb_ipc_request_header header __attribute__((aligned(8)));
96  mar_name_t key_name __attribute__((aligned(8)));
97 };
98 
103  struct qb_ipc_response_header header __attribute__((aligned(8)));
104 };
105 
110  struct qb_ipc_request_header header __attribute__((aligned(8)));
111  mar_name_t key_name __attribute__((aligned(8)));
112  mar_size_t value_len __attribute__((aligned(8)));
113 };
114 
119  struct qb_ipc_response_header header __attribute__((aligned(8)));
120  mar_size_t value_len __attribute__((aligned(8)));
121  mar_uint8_t type __attribute__((aligned(8)));
122  mar_uint8_t value[] __attribute__((aligned(8)));
123 };
124 
129  struct qb_ipc_request_header header __attribute__((aligned(8)));
130  mar_name_t key_name __attribute__((aligned(8)));
131  mar_int32_t step __attribute__((aligned(8)));
132 };
133 
138  struct qb_ipc_response_header header __attribute__((aligned(8)));
139 };
140 
145  struct qb_ipc_request_header header __attribute__((aligned(8)));
146  mar_name_t prefix __attribute__((aligned(8)));
147 };
148 
153  struct qb_ipc_response_header header __attribute__((aligned(8)));
154  mar_uint64_t iter_handle __attribute__((aligned(8)));
155 };
156 
161  struct qb_ipc_request_header header __attribute__((aligned(8)));
162  mar_uint64_t iter_handle __attribute__((aligned(8)));
163 };
164 
169  struct qb_ipc_response_header header __attribute__((aligned(8)));
170  mar_name_t key_name __attribute__((aligned(8)));
171  mar_size_t value_len __attribute__((aligned(8)));
172  mar_uint8_t type __attribute__((aligned(8)));
173 };
174 
179  struct qb_ipc_request_header header __attribute__((aligned(8)));
180  mar_uint64_t iter_handle __attribute__((aligned(8)));
181 };
182 
187  struct qb_ipc_response_header header __attribute__((aligned(8)));
188 };
189 
194  struct qb_ipc_request_header header __attribute__((aligned(8)));
195  mar_name_t key_name __attribute__((aligned(8)));
196  mar_int32_t track_type __attribute__((aligned(8)));
197  mar_uint64_t track_inst_handle __attribute__((aligned(8)));
198 };
199 
204  struct qb_ipc_response_header header __attribute__((aligned(8)));
205  mar_uint64_t track_handle __attribute__((aligned(8)));
206 };
207 
212  struct qb_ipc_request_header header __attribute__((aligned(8)));
213  mar_uint64_t track_handle __attribute__((aligned(8)));
214 };
215 
220  struct qb_ipc_response_header header __attribute__((aligned(8)));
221  mar_uint64_t track_inst_handle __attribute__((aligned(8)));
222 };
223 
228  struct qb_ipc_response_header header __attribute__((aligned(8)));
229  mar_uint64_t track_inst_handle __attribute__((aligned(8)));
230  mar_name_t key_name __attribute__((aligned(8)));
231  mar_int32_t event __attribute__((aligned(8)));
232  mar_uint8_t new_value_type __attribute__((aligned(8)));
233  mar_uint8_t old_value_type __attribute__((aligned(8)));
234  mar_size_t new_value_len __attribute__((aligned(8)));
235  mar_size_t old_value_len __attribute__((aligned(8)));
236  /*
237  * After old_vale_len, there are two items with length of new_value_len
238  * and old_value_len, only first (as a pointer) is defined
239  *
240  * mar_uint8_t *new_value;
241  * mar_uint8_t *old_value;
242  */
244 };
245 
246 #endif /* IPC_CMAP_H_DEFINED */
The res_lib_cmap_track_add struct.
Definition: ipc_cmap.h:203
The res_lib_cmap_iter_finalize struct.
Definition: ipc_cmap.h:186
struct qb_ipc_response_header header __attribute__((aligned(8)))
uint32_t value
struct qb_ipc_response_header header __attribute__((aligned(8)))
struct qb_ipc_request_header header __attribute__((aligned(8)))
The res_lib_cmap_iter_next struct.
Definition: ipc_cmap.h:168
The res_lib_cmap_adjust_int struct.
Definition: ipc_cmap.h:137
struct qb_ipc_request_header header __attribute__((aligned(8)))
The req_lib_cmap_iter_finalize struct.
Definition: ipc_cmap.h:178
mar_name_t struct
Definition: mar_gen.h:166
struct qb_ipc_request_header header __attribute__((aligned(8)))
The req_lib_cmap_iter_next struct.
Definition: ipc_cmap.h:160
struct qb_ipc_request_header header __attribute__((aligned(8)))
req_cmap_types
The req_cmap_types enum.
Definition: ipc_cmap.h:45
struct qb_ipc_request_header header __attribute__((aligned(8)))
The res_lib_cmap_iter_init struct.
Definition: ipc_cmap.h:152
The req_lib_cmap_track_add struct.
Definition: ipc_cmap.h:193
The res_lib_cmap_notify_callback struct.
Definition: ipc_cmap.h:227
uint64_t mar_uint64_t
Definition: mar_gen.h:54
mar_uint64_t mar_size_t
mar_size_t
Definition: mar_gen.h:286
uint8_t mar_uint8_t
Definition: mar_gen.h:51
The res_lib_cmap_track_delete struct.
Definition: ipc_cmap.h:219
struct qb_ipc_response_header header __attribute__((aligned(8)))
The res_lib_cmap_delete struct.
Definition: ipc_cmap.h:102
The req_lib_cmap_iter_init struct.
Definition: ipc_cmap.h:144
struct qb_ipc_response_header header __attribute__((aligned(8)))
res_cmap_types
The res_cmap_types enum.
Definition: ipc_cmap.h:60
The req_lib_cmap_track_delete struct.
Definition: ipc_cmap.h:211
The req_lib_cmap_delete struct.
Definition: ipc_cmap.h:94
struct qb_ipc_request_header header __attribute__((aligned(8)))
The res_lib_cmap_set struct.
Definition: ipc_cmap.h:87
struct qb_ipc_request_header header __attribute__((aligned(8)))
struct qb_ipc_request_header header __attribute__((aligned(8)))
The req_lib_cmap_adjust_int struct.
Definition: ipc_cmap.h:128
char type
Definition: totemrrp.c:518
The res_lib_cmap_get struct.
Definition: ipc_cmap.h:118
The req_lib_cmap_set struct.
Definition: ipc_cmap.h:76
struct qb_ipc_request_header header __attribute__((aligned(8)))
struct qb_ipc_response_header header __attribute__((aligned(8)))
struct qb_ipc_response_header header __attribute__((aligned(8)))
int32_t mar_int32_t
Definition: mar_gen.h:48
The req_lib_cmap_get struct.
Definition: ipc_cmap.h:109