pacemaker  2.1.7-0f7f88312f
Scalable High-Availability cluster resource manager
ipc_attrd_internal.h
Go to the documentation of this file.
1 /*
2  * Copyright 2022-2023 the Pacemaker project contributors
3  *
4  * The version control history for this file may have further details.
5  *
6  * This source code is licensed under the GNU Lesser General Public License
7  * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
8  */
9 
10 #ifndef PCMK__CRM_COMMON_IPC_ATTRD_INTERNAL__H
11 # define PCMK__CRM_COMMON_IPC_ATTRD_INTERNAL__H
12 
13 #include <glib.h> // GList
14 #include <crm/common/ipc.h> // pcmk_ipc_api_t
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
24 };
25 
26 // Information passed with pcmk__attrd_reply_query
27 typedef struct {
28  const char *node;
29  const char *name;
30  const char *value;
32 
40 typedef struct {
41  enum pcmk__attrd_api_reply reply_type;
42 
43  union {
44  // pcmk__attrd_reply_query
45  GList *pairs;
46  } data;
48 
69 int pcmk__attrd_api_clear_failures(pcmk_ipc_api_t *api, const char *node,
70  const char *resource, const char *operation,
71  const char *interval_spec, const char *user_name,
72  uint32_t options);
73 
87 int pcmk__attrd_api_delete(pcmk_ipc_api_t *api, const char *node, const char *name,
88  uint32_t options);
89 
105 int pcmk__attrd_api_purge(pcmk_ipc_api_t *api, const char *node);
106 
122 int pcmk__attrd_api_query(pcmk_ipc_api_t *api, const char *node, const char *name,
123  uint32_t options);
124 
140 int pcmk__attrd_api_refresh(pcmk_ipc_api_t *api, const char *node);
141 
163 int pcmk__attrd_api_update(pcmk_ipc_api_t *api, const char *node, const char *name,
164  const char *value, const char *dampen, const char *set,
165  const char *user_name, uint32_t options);
166 
190 int pcmk__attrd_api_update_list(pcmk_ipc_api_t *api, GList *attrs,
191  const char *dampen, const char *set,
192  const char *user_name, uint32_t options);
193 
194 #ifdef __cplusplus
195 }
196 #endif
197 
198 #endif // PCMK__CRM_COMMON_IPC_ATTRD_INTERNAL__H
char data[0]
Definition: cpg.c:55
int pcmk__attrd_api_clear_failures(pcmk_ipc_api_t *api, const char *node, const char *resource, const char *operation, const char *interval_spec, const char *user_name, uint32_t options)
Definition: ipc_attrd.c:200
const char * name
Definition: cib.c:26
int pcmk__attrd_api_refresh(pcmk_ipc_api_t *api, const char *node)
Definition: ipc_attrd.c:363
int pcmk__attrd_api_update(pcmk_ipc_api_t *api, const char *node, const char *name, const char *value, const char *dampen, const char *set, const char *user_name, uint32_t options)
Definition: ipc_attrd.c:450
pcmk__attrd_api_reply
Possible types of attribute manager replies.
int pcmk__attrd_api_update_list(pcmk_ipc_api_t *api, GList *attrs, const char *dampen, const char *set, const char *user_name, uint32_t options)
Definition: ipc_attrd.c:497
int pcmk__attrd_api_delete(pcmk_ipc_api_t *api, const char *node, const char *name, uint32_t options)
Definition: ipc_attrd.c:257
int pcmk__attrd_api_purge(pcmk_ipc_api_t *api, const char *node)
Definition: ipc_attrd.c:280
IPC interface to Pacemaker daemons.
int pcmk__attrd_api_query(pcmk_ipc_api_t *api, const char *node, const char *name, uint32_t options)
Definition: ipc_attrd.c:321