pacemaker 3.0.1-16e74fc4da
Scalable High-Availability cluster resource manager
Loading...
Searching...
No Matches
cib_utils.c File Reference
#include <crm_internal.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
#include <sys/utsname.h>
#include <glib.h>
#include <crm/crm.h>
#include <crm/cib/internal.h>
#include <crm/common/cib_internal.h>
#include <crm/common/xml.h>
#include <crm/common/xml_internal.h>
Include dependency graph for cib_utils.c:

Go to the source code of this file.

Macros

#define log_signon_query_err(out, fmt, args...)
 

Functions

gboolean cib_version_details (xmlNode *cib, int *admin_epoch, int *epoch, int *updates)
 
gboolean cib_diff_version_details (xmlNode *diff, int *admin_epoch, int *epoch, int *updates, int *_admin_epoch, int *_epoch, int *_updates)
 
int cib__get_notify_patchset (const xmlNode *msg, const xmlNode **patchset)
 
xmlNode * createEmptyCib (int cib_epoch)
 Create XML for a new (empty) CIB.
 
int cib_perform_op (cib_t *cib, const char *op, uint32_t call_options, cib__op_fn_t fn, bool is_query, const char *section, xmlNode *req, xmlNode *input, bool manage_counters, bool *config_changed, xmlNode **current_cib, xmlNode **result_cib, xmlNode **diff, xmlNode **output)
 
int cib__create_op (cib_t *cib, const char *op, const char *host, const char *section, xmlNode *data, int call_options, const char *user_name, const char *client_name, xmlNode **op_msg)
 
int cib__extend_transaction (cib_t *cib, xmlNode *request)
 
void cib_native_callback (cib_t *cib, xmlNode *msg, int call_id, int rc)
 
void cib_native_notify (gpointer data, gpointer user_data)
 
gboolean cib_read_config (GHashTable *options, xmlNode *current_cib)
 
int cib_internal_op (cib_t *cib, const char *op, const char *host, const char *section, xmlNode *data, xmlNode **output_data, int call_options, const char *user_name)
 
int cib_apply_patch_event (xmlNode *event, xmlNode *input, xmlNode **output, int level)
 Apply a CIB update patch to a given CIB.
 
int cib__signon_query (pcmk__output_t *out, cib_t **cib, xmlNode **cib_object)
 
int cib__signon_attempts (cib_t *cib, enum cib_conn_type type, int attempts)
 
int cib__clean_up_connection (cib_t **cib)
 

Macro Definition Documentation

◆ log_signon_query_err

#define log_signon_query_err ( out,
fmt,
args... )
Value:
do { \
if (out != NULL) { \
out->err(out, fmt, ##args); \
} else { \
crm_err(fmt, ##args); \
} \
} while (0)

Definition at line 854 of file cib_utils.c.

Function Documentation

◆ cib__clean_up_connection()

int cib__clean_up_connection ( cib_t ** cib)

Definition at line 942 of file cib_utils.c.

◆ cib__create_op()

int cib__create_op ( cib_t * cib,
const char * op,
const char * host,
const char * section,
xmlNode * data,
int call_options,
const char * user_name,
const char * client_name,
xmlNode ** op_msg )

Definition at line 558 of file cib_utils.c.

◆ cib__extend_transaction()

int cib__extend_transaction ( cib_t * cib,
xmlNode * request )

Definition at line 637 of file cib_utils.c.

◆ cib__get_notify_patchset()

int cib__get_notify_patchset ( const xmlNode * msg,
const xmlNode ** patchset )

Definition at line 74 of file cib_utils.c.

◆ cib__signon_attempts()

int cib__signon_attempts ( cib_t * cib,
enum cib_conn_type type,
int attempts )

Definition at line 916 of file cib_utils.c.

◆ cib__signon_query()

int cib__signon_query ( pcmk__output_t * out,
cib_t ** cib,
xmlNode ** cib_object )

Definition at line 863 of file cib_utils.c.

◆ cib_apply_patch_event()

int cib_apply_patch_event ( xmlNode * event,
xmlNode * input,
xmlNode ** output,
int level )

Apply a CIB update patch to a given CIB.

Parameters
[in]eventCIB update patch
[in]inputCIB to patch
[out]outputResulting CIB after patch
[in]levelLog the patch at this log level (unless LOG_CRIT)
Returns
Legacy Pacemaker return code
Note
sbd calls this function

Definition at line 811 of file cib_utils.c.

◆ cib_diff_version_details()

gboolean cib_diff_version_details ( xmlNode * diff,
int * admin_epoch,
int * epoch,
int * updates,
int * _admin_epoch,
int * _epoch,
int * _updates )

Definition at line 45 of file cib_utils.c.

◆ cib_internal_op()

int cib_internal_op ( cib_t * cib,
const char * op,
const char * host,
const char * section,
xmlNode * data,
xmlNode ** output_data,
int call_options,
const char * user_name )

Definition at line 777 of file cib_utils.c.

◆ cib_native_callback()

void cib_native_callback ( cib_t * cib,
xmlNode * msg,
int call_id,
int rc )

Definition at line 665 of file cib_utils.c.

◆ cib_native_notify()

void cib_native_notify ( gpointer data,
gpointer user_data )

Definition at line 713 of file cib_utils.c.

◆ cib_perform_op()

int cib_perform_op ( cib_t * cib,
const char * op,
uint32_t call_options,
cib__op_fn_t fn,
bool is_query,
const char * section,
xmlNode * req,
xmlNode * input,
bool manage_counters,
bool * config_changed,
xmlNode ** current_cib,
xmlNode ** result_cib,
xmlNode ** diff,
xmlNode ** output )

Definition at line 221 of file cib_utils.c.

◆ cib_read_config()

gboolean cib_read_config ( GHashTable * options,
xmlNode * current_cib )

Definition at line 745 of file cib_utils.c.

◆ cib_version_details()

gboolean cib_version_details ( xmlNode * cib,
int * admin_epoch,
int * epoch,
int * updates )

Definition at line 27 of file cib_utils.c.

◆ createEmptyCib()

xmlNode * createEmptyCib ( int cib_epoch)

Create XML for a new (empty) CIB.

Parameters
[in]cib_epochWhat to use as PCMK_XA_EPOCH CIB attribute
Returns
Newly created XML for empty CIB
Note
It is the caller's responsibility to free the result with pcmk__xml_free().

Definition at line 117 of file cib_utils.c.