pacemaker  1.1.18-7fdfbbe
Scalable High-Availability cluster resource manager
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
operations.c File Reference
#include <crm_internal.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>
#include <crm/crm.h>
#include <crm/lrmd.h>
#include <crm/msg_xml.h>
#include <crm/common/xml.h>
#include <crm/common/util.h>
Include dependency graph for operations.c:

Go to the source code of this file.

Macros

#define _GNU_SOURCE
 
#define FAKE_TE_ID   "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
 

Functions

char * generate_op_key (const char *rsc_id, const char *op_type, int interval)
 Generate an operation key. More...
 
gboolean parse_op_key (const char *key, char **rsc_id, char **op_type, int *interval)
 
char * generate_notify_key (const char *rsc_id, const char *notify_type, const char *op_type)
 
char * generate_transition_magic_v202 (const char *transition_key, int op_status)
 
char * generate_transition_magic (const char *transition_key, int op_status, int op_rc)
 
gboolean decode_transition_magic (const char *magic, char **uuid, int *transition_id, int *action_id, int *op_status, int *op_rc, int *target_rc)
 
char * generate_transition_key (int transition_id, int action_id, int target_rc, const char *node)
 
gboolean decode_transition_key (const char *key, char **uuid, int *transition_id, int *action_id, int *target_rc)
 
void filter_action_parameters (xmlNode *param_set, const char *version)
 
int rsc_op_expected_rc (lrmd_event_data_t *op)
 
gboolean did_rsc_op_fail (lrmd_event_data_t *op, int target_rc)
 
xmlNode * crm_create_op_xml (xmlNode *parent, const char *prefix, const char *task, const char *interval, const char *timeout)
 Create a CIB XML element for an operation. More...
 
xmlNode * create_operation_update (xmlNode *parent, lrmd_event_data_t *op, const char *caller_version, int target_rc, const char *node, const char *origin, int level)
 
bool crm_op_needs_metadata (const char *rsc_class, const char *op)
 Check whether an operation requires resource agent meta-data. More...
 

Macro Definition Documentation

#define _GNU_SOURCE

Definition at line 11 of file operations.c.

#define FAKE_TE_ID   "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Definition at line 351 of file operations.c.

Function Documentation

xmlNode* create_operation_update ( xmlNode *  parent,
lrmd_event_data_t op,
const char *  caller_version,
int  target_rc,
const char *  node,
const char *  origin,
int  level 
)

Definition at line 457 of file operations.c.

xmlNode* crm_create_op_xml ( xmlNode *  parent,
const char *  prefix,
const char *  task,
const char *  interval,
const char *  timeout 
)

Create a CIB XML element for an operation.

Parameters
[in]parentIf not NULL, make new XML node a child of this one
[in]prefixGenerate an ID using this prefix
[in]taskOperation task to set
[in]intervalOperation interval to set
[in]timeoutIf not NULL, operation timeout to set
Returns
New XML object on success, NULL otherwise

Definition at line 439 of file operations.c.

bool crm_op_needs_metadata ( const char *  rsc_class,
const char *  op 
)

Check whether an operation requires resource agent meta-data.

Parameters
[in]rsc_classResource agent class (or NULL to skip class check)
[in]opOperation action (or NULL to skip op check)
Returns
TRUE if operation needs meta-data, FALSE otherwise
Note
At least one of rsc_class and op must be specified.

Definition at line 635 of file operations.c.

gboolean decode_transition_key ( const char *  key,
char **  uuid,
int *  transition_id,
int *  action_id,
int *  target_rc 
)

Definition at line 217 of file operations.c.

gboolean decode_transition_magic ( const char *  magic,
char **  uuid,
int *  transition_id,
int *  action_id,
int *  op_status,
int *  op_rc,
int *  target_rc 
)

Definition at line 174 of file operations.c.

gboolean did_rsc_op_fail ( lrmd_event_data_t op,
int  target_rc 
)

Definition at line 404 of file operations.c.

void filter_action_parameters ( xmlNode *  param_set,
const char *  version 
)

Definition at line 283 of file operations.c.

char* generate_notify_key ( const char *  rsc_id,
const char *  notify_type,
const char *  op_type 
)

Definition at line 118 of file operations.c.

char* generate_op_key ( const char *  rsc_id,
const char *  op_type,
int  interval 
)

Generate an operation key.

Parameters
[in]rsc_idID of resource being operated on
[in]op_typeOperation name
[in]intervalOperation interval
Returns
Newly allocated memory containing operation key as string
Note
It is the caller's responsibility to free() the result.

Definition at line 37 of file operations.c.

char* generate_transition_key ( int  transition_id,
int  action_id,
int  target_rc,
const char *  node 
)

Definition at line 200 of file operations.c.

char* generate_transition_magic ( const char *  transition_key,
int  op_status,
int  op_rc 
)

Definition at line 157 of file operations.c.

char* generate_transition_magic_v202 ( const char *  transition_key,
int  op_status 
)

Definition at line 140 of file operations.c.

gboolean parse_op_key ( const char *  key,
char **  rsc_id,
char **  op_type,
int *  interval 
)

Definition at line 46 of file operations.c.

int rsc_op_expected_rc ( lrmd_event_data_t op)

Definition at line 389 of file operations.c.