pacemaker  2.1.8-3980678f03
Scalable High-Availability cluster resource manager
ipc_attrd_internal.h
Go to the documentation of this file.
1 /*
2  * Copyright 2022-2024 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 
106 int pcmk__attrd_api_purge(pcmk_ipc_api_t *api, const char *node, bool reap);
107 
123 int pcmk__attrd_api_query(pcmk_ipc_api_t *api, const char *node, const char *name,
124  uint32_t options);
125 
141 int pcmk__attrd_api_refresh(pcmk_ipc_api_t *api, const char *node);
142 
164 int pcmk__attrd_api_update(pcmk_ipc_api_t *api, const char *node, const char *name,
165  const char *value, const char *dampen, const char *set,
166  const char *user_name, uint32_t options);
167 
191 int pcmk__attrd_api_update_list(pcmk_ipc_api_t *api, GList *attrs,
192  const char *dampen, const char *set,
193  const char *user_name, uint32_t options);
194 
195 #ifdef __cplusplus
196 }
197 #endif
198 
199 #endif // PCMK__CRM_COMMON_IPC_ATTRD_INTERNAL__H
char data[0]
Definition: cpg.c:58
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:178
const char * name
Definition: cib.c:26
int pcmk__attrd_api_refresh(pcmk_ipc_api_t *api, const char *node)
Definition: ipc_attrd.c:307
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:378
int pcmk__attrd_api_purge(pcmk_ipc_api_t *api, const char *node, bool reap)
Definition: ipc_attrd.c:242
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:410
int pcmk__attrd_api_delete(pcmk_ipc_api_t *api, const char *node, const char *name, uint32_t options)
Definition: ipc_attrd.c:219
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:270