pacemaker  2.0.5-ba59be712
Scalable High-Availability cluster resource manager
crm_internal.h
Go to the documentation of this file.
1 /*
2  * Copyright 2006-2020 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 CRM_INTERNAL__H
11 # define CRM_INTERNAL__H
12 
13 # ifndef PCMK__CONFIG_H
14 # define PCMK__CONFIG_H
15 # include <config.h>
16 # endif
17 
18 # include <portability.h>
19 
20 # include <glib.h>
21 # include <stdbool.h>
22 # include <libxml/tree.h>
23 
24 /* Public API headers can guard deprecated code with this symbol, thus
25  * preventing internal code (which includes this header) from using it, while
26  * still allowing external code (which can't include this header) to use it,
27  * for backward compatibility.
28  */
29 #define PCMK__NO_COMPAT
30 
31 # include <crm/lrmd.h>
32 # include <crm/common/logging.h>
33 # include <crm/common/ipc_internal.h>
35 # include <crm/common/internal.h>
36 
37 
38 /*
39  * XML attribute names used only by internal code
40  */
41 
42 #define PCMK__XA_ATTR_DAMPENING "attr_dampening"
43 #define PCMK__XA_ATTR_FORCE "attrd_is_force_write"
44 #define PCMK__XA_ATTR_INTERVAL "attr_clear_interval"
45 #define PCMK__XA_ATTR_IS_PRIVATE "attr_is_private"
46 #define PCMK__XA_ATTR_IS_REMOTE "attr_is_remote"
47 #define PCMK__XA_ATTR_NAME "attr_name"
48 #define PCMK__XA_ATTR_NODE_ID "attr_host_id"
49 #define PCMK__XA_ATTR_NODE_NAME "attr_host"
50 #define PCMK__XA_ATTR_OPERATION "attr_clear_operation"
51 #define PCMK__XA_ATTR_PATTERN "attr_regex"
52 #define PCMK__XA_ATTR_RESOURCE "attr_resource"
53 #define PCMK__XA_ATTR_SECTION "attr_section"
54 #define PCMK__XA_ATTR_SET "attr_set"
55 #define PCMK__XA_ATTR_USER "attr_user"
56 #define PCMK__XA_ATTR_UUID "attr_key"
57 #define PCMK__XA_ATTR_VALUE "attr_value"
58 #define PCMK__XA_ATTR_VERSION "attr_version"
59 #define PCMK__XA_ATTR_WRITER "attr_writer"
60 #define PCMK__XA_MODE "mode"
61 #define PCMK__XA_TASK "task"
62 
63 
64 /*
65  * IPC service names that are only used internally
66  */
67 
68 # define PCMK__SERVER_BASED_RO "cib_ro"
69 # define PCMK__SERVER_BASED_RW "cib_rw"
70 # define PCMK__SERVER_BASED_SHM "cib_shm"
71 
72 /*
73  * IPC commands that can be sent to Pacemaker daemons
74  */
75 
76 #define PCMK__ATTRD_CMD_PEER_REMOVE "peer-remove"
77 #define PCMK__ATTRD_CMD_UPDATE "update"
78 #define PCMK__ATTRD_CMD_UPDATE_BOTH "update-both"
79 #define PCMK__ATTRD_CMD_UPDATE_DELAY "update-delay"
80 #define PCMK__ATTRD_CMD_QUERY "query"
81 #define PCMK__ATTRD_CMD_REFRESH "refresh"
82 #define PCMK__ATTRD_CMD_FLUSH "flush"
83 #define PCMK__ATTRD_CMD_SYNC "sync"
84 #define PCMK__ATTRD_CMD_SYNC_RESPONSE "sync-response"
85 #define PCMK__ATTRD_CMD_CLEAR_FAILURE "clear-failure"
86 
87 #define PCMK__CONTROLD_CMD_NODES "list-nodes"
88 
89 /*
90  * Environment variables used by Pacemaker
91  */
92 
93 #define PCMK__ENV_PHYSICAL_HOST "physical_host"
94 
95 
96 #endif /* CRM_INTERNAL__H */
Resource agent executor.
Wrappers for and extensions to libqb logging.