corosync  2.3.5
Data Structures | Macros | Functions
icmap.c File Reference
#include <config.h>
#include <string.h>
#include <stdio.h>
#include <corosync/corotypes.h>
#include <qb/qbdefs.h>
#include <corosync/list.h>
#include <corosync/icmap.h>
Include dependency graph for icmap.c:

Go to the source code of this file.

Data Structures

struct  icmap_item
 
struct  icmap_map
 
struct  icmap_track
 
struct  icmap_ro_access_item
 

Macros

#define ICMAP_MAX_VALUE_LEN   (16*1024)
 

Functions

 DECLARE_LIST_INIT (icmap_ro_access_item_list_head)
 
 DECLARE_LIST_INIT (icmap_track_list_head)
 
cs_error_t icmap_init_r (icmap_map_t *result)
 
cs_error_t icmap_init (void)
 
void icmap_fini_r (const icmap_map_t map)
 
void icmap_fini (void)
 
icmap_map_t icmap_get_global_map (void)
 
void icmap_convert_name_to_valid_name (char *key_name)
 
int icmap_key_value_eq (const icmap_map_t map1, const char *key_name1, const icmap_map_t map2, const char *key_name2)
 
cs_error_t icmap_set_r (const icmap_map_t map, const char *key_name, const void *value, size_t value_len, icmap_value_types_t type)
 
cs_error_t icmap_set (const char *key_name, const void *value, size_t value_len, icmap_value_types_t type)
 
cs_error_t icmap_set_int8_r (const icmap_map_t map, const char *key_name, int8_t value)
 
cs_error_t icmap_set_uint8_r (const icmap_map_t map, const char *key_name, uint8_t value)
 
cs_error_t icmap_set_int16_r (const icmap_map_t map, const char *key_name, int16_t value)
 
cs_error_t icmap_set_uint16_r (const icmap_map_t map, const char *key_name, uint16_t value)
 
cs_error_t icmap_set_int32_r (const icmap_map_t map, const char *key_name, int32_t value)
 
cs_error_t icmap_set_uint32_r (const icmap_map_t map, const char *key_name, uint32_t value)
 
cs_error_t icmap_set_int64_r (const icmap_map_t map, const char *key_name, int64_t value)
 
cs_error_t icmap_set_uint64_r (const icmap_map_t map, const char *key_name, uint64_t value)
 
cs_error_t icmap_set_float_r (const icmap_map_t map, const char *key_name, float value)
 
cs_error_t icmap_set_double_r (const icmap_map_t map, const char *key_name, double value)
 
cs_error_t icmap_set_string_r (const icmap_map_t map, const char *key_name, const char *value)
 
cs_error_t icmap_set_int8 (const char *key_name, int8_t value)
 
cs_error_t icmap_set_uint8 (const char *key_name, uint8_t value)
 
cs_error_t icmap_set_int16 (const char *key_name, int16_t value)
 
cs_error_t icmap_set_uint16 (const char *key_name, uint16_t value)
 
cs_error_t icmap_set_int32 (const char *key_name, int32_t value)
 
cs_error_t icmap_set_uint32 (const char *key_name, uint32_t value)
 
cs_error_t icmap_set_int64 (const char *key_name, int64_t value)
 
cs_error_t icmap_set_uint64 (const char *key_name, uint64_t value)
 
cs_error_t icmap_set_float (const char *key_name, float value)
 
cs_error_t icmap_set_double (const char *key_name, double value)
 
cs_error_t icmap_set_string (const char *key_name, const char *value)
 
cs_error_t icmap_delete_r (const icmap_map_t map, const char *key_name)
 
cs_error_t icmap_delete (const char *key_name)
 
cs_error_t icmap_get_r (const icmap_map_t map, const char *key_name, void *value, size_t *value_len, icmap_value_types_t *type)
 
cs_error_t icmap_get (const char *key_name, void *value, size_t *value_len, icmap_value_types_t *type)
 
cs_error_t icmap_get_int8_r (const icmap_map_t map, const char *key_name, int8_t *i8)
 
cs_error_t icmap_get_uint8_r (const icmap_map_t map, const char *key_name, uint8_t *u8)
 
cs_error_t icmap_get_int16_r (const icmap_map_t map, const char *key_name, int16_t *i16)
 
cs_error_t icmap_get_uint16_r (const icmap_map_t map, const char *key_name, uint16_t *u16)
 
cs_error_t icmap_get_int32_r (const icmap_map_t map, const char *key_name, int32_t *i32)
 
cs_error_t icmap_get_uint32_r (const icmap_map_t map, const char *key_name, uint32_t *u32)
 
cs_error_t icmap_get_int64_r (const icmap_map_t map, const char *key_name, int64_t *i64)
 
cs_error_t icmap_get_uint64_r (const icmap_map_t map, const char *key_name, uint64_t *u64)
 
cs_error_t icmap_get_float_r (const icmap_map_t map, const char *key_name, float *flt)
 
cs_error_t icmap_get_double_r (const icmap_map_t map, const char *key_name, double *dbl)
 
cs_error_t icmap_get_int8 (const char *key_name, int8_t *i8)
 
cs_error_t icmap_get_uint8 (const char *key_name, uint8_t *u8)
 
cs_error_t icmap_get_int16 (const char *key_name, int16_t *i16)
 
cs_error_t icmap_get_uint16 (const char *key_name, uint16_t *u16)
 
cs_error_t icmap_get_int32 (const char *key_name, int32_t *i32)
 
cs_error_t icmap_get_uint32 (const char *key_name, uint32_t *u32)
 
cs_error_t icmap_get_int64 (const char *key_name, int64_t *i64)
 
cs_error_t icmap_get_uint64 (const char *key_name, uint64_t *u64)
 
cs_error_t icmap_get_float (const char *key_name, float *flt)
 
cs_error_t icmap_get_double (const char *key_name, double *dbl)
 
cs_error_t icmap_get_string (const char *key_name, char **str)
 
cs_error_t icmap_adjust_int_r (const icmap_map_t map, const char *key_name, int32_t step)
 
cs_error_t icmap_adjust_int (const char *key_name, int32_t step)
 
cs_error_t icmap_fast_adjust_int_r (const icmap_map_t map, const char *key_name, int32_t step)
 
cs_error_t icmap_fast_adjust_int (const char *key_name, int32_t step)
 
cs_error_t icmap_inc_r (const icmap_map_t map, const char *key_name)
 
cs_error_t icmap_inc (const char *key_name)
 
cs_error_t icmap_dec_r (const icmap_map_t map, const char *key_name)
 
cs_error_t icmap_dec (const char *key_name)
 
cs_error_t icmap_fast_inc_r (const icmap_map_t map, const char *key_name)
 
cs_error_t icmap_fast_inc (const char *key_name)
 
cs_error_t icmap_fast_dec_r (const icmap_map_t map, const char *key_name)
 
cs_error_t icmap_fast_dec (const char *key_name)
 
icmap_iter_t icmap_iter_init_r (const icmap_map_t map, const char *prefix)
 
icmap_iter_t icmap_iter_init (const char *prefix)
 
const char * icmap_iter_next (icmap_iter_t iter, size_t *value_len, icmap_value_types_t *type)
 
void icmap_iter_finalize (icmap_iter_t iter)
 
cs_error_t icmap_track_add (const char *key_name, int32_t track_type, icmap_notify_fn_t notify_fn, void *user_data, icmap_track_t *icmap_track)
 
cs_error_t icmap_track_delete (icmap_track_t icmap_track)
 
void * icmap_track_get_user_data (icmap_track_t icmap_track)
 
cs_error_t icmap_set_ro_access (const char *key_name, int prefix, int ro_access)
 
int icmap_is_key_ro (const char *key_name)
 
cs_error_t icmap_copy_map (icmap_map_t dst_map, const icmap_map_t src_map)
 

Macro Definition Documentation

#define ICMAP_MAX_VALUE_LEN   (16*1024)

Definition at line 46 of file icmap.c.

Referenced by icmap_convert_name_to_valid_name().

Function Documentation

DECLARE_LIST_INIT ( icmap_ro_access_item_list_head  )
DECLARE_LIST_INIT ( icmap_track_list_head  )
cs_error_t icmap_adjust_int ( const char *  key_name,
int32_t  step 
)

Definition at line 987 of file icmap.c.

References icmap_adjust_int_r().

cs_error_t icmap_adjust_int_r ( const icmap_map_t  map,
const char *  key_name,
int32_t  step 
)
void icmap_convert_name_to_valid_name ( char *  key_name)
cs_error_t icmap_copy_map ( icmap_map_t  dst_map,
const icmap_map_t  src_map 
)
cs_error_t icmap_dec ( const char *  key_name)

Definition at line 1067 of file icmap.c.

References icmap_dec_r().

Referenced by cs_ipcs_private_data_get().

cs_error_t icmap_dec_r ( const icmap_map_t  map,
const char *  key_name 
)

Definition at line 1062 of file icmap.c.

References icmap_adjust_int_r().

Referenced by icmap_dec().

cs_error_t icmap_delete ( const char *  key_name)
cs_error_t icmap_delete_r ( const icmap_map_t  map,
const char *  key_name 
)

Definition at line 647 of file icmap.c.

References CS_ERR_INVALID_PARAM, CS_ERR_NOT_EXIST, CS_OK, icmap_item::key_name, and icmap_map::qb_map.

Referenced by icmap_delete().

cs_error_t icmap_fast_adjust_int ( const char *  key_name,
int32_t  step 
)

Definition at line 1044 of file icmap.c.

References icmap_fast_adjust_int_r().

cs_error_t icmap_fast_adjust_int_r ( const icmap_map_t  map,
const char *  key_name,
int32_t  step 
)
cs_error_t icmap_fast_dec ( const char *  key_name)

Definition at line 1087 of file icmap.c.

References icmap_fast_dec_r().

cs_error_t icmap_fast_dec_r ( const icmap_map_t  map,
const char *  key_name 
)

Definition at line 1082 of file icmap.c.

References icmap_fast_adjust_int_r().

Referenced by icmap_fast_dec().

cs_error_t icmap_fast_inc ( const char *  key_name)

Definition at line 1077 of file icmap.c.

References icmap_fast_inc_r().

Referenced by main_mcast().

cs_error_t icmap_fast_inc_r ( const icmap_map_t  map,
const char *  key_name 
)

Definition at line 1072 of file icmap.c.

References icmap_fast_adjust_int_r().

Referenced by icmap_fast_inc().

void icmap_fini ( void  )

Definition at line 261 of file icmap.c.

References icmap_fini_r().

Referenced by corosync_state_dump().

void icmap_fini_r ( const icmap_map_t  map)

Definition at line 252 of file icmap.c.

References icmap_map::qb_map.

Referenced by icmap_fini().

cs_error_t icmap_get ( const char *  key_name,
void *  value,
size_t *  value_len,
icmap_value_types_t type 
)

Definition at line 739 of file icmap.c.

References CS_ERR_INVALID_PARAM, CS_OK, and icmap_get_r().

Referenced by icmap_get_string(), and totem_config_keyread().

cs_error_t icmap_get_double ( const char *  key_name,
double *  dbl 
)

Definition at line 890 of file icmap.c.

References icmap_get_double_r().

cs_error_t icmap_get_double_r ( const icmap_map_t  map,
const char *  key_name,
double *  dbl 
)

Definition at line 830 of file icmap.c.

References ICMAP_VALUETYPE_DOUBLE.

Referenced by icmap_get_double().

cs_error_t icmap_get_float ( const char *  key_name,
float *  flt 
)

Definition at line 884 of file icmap.c.

References icmap_get_float_r().

cs_error_t icmap_get_float_r ( const icmap_map_t  map,
const char *  key_name,
float *  flt 
)

Definition at line 824 of file icmap.c.

References ICMAP_VALUETYPE_FLOAT.

Referenced by icmap_get_float().

icmap_map_t icmap_get_global_map ( void  )

Definition at line 278 of file icmap.c.

Referenced by main().

cs_error_t icmap_get_int16 ( const char *  key_name,
int16_t *  i16 
)

Definition at line 848 of file icmap.c.

References icmap_get_int16_r().

cs_error_t icmap_get_int16_r ( const icmap_map_t  map,
const char *  key_name,
int16_t *  i16 
)

Definition at line 788 of file icmap.c.

References ICMAP_VALUETYPE_INT16.

Referenced by icmap_get_int16().

cs_error_t icmap_get_int32 ( const char *  key_name,
int32_t *  i32 
)

Definition at line 860 of file icmap.c.

References icmap_get_int32_r().

cs_error_t icmap_get_int32_r ( const icmap_map_t  map,
const char *  key_name,
int32_t *  i32 
)

Definition at line 800 of file icmap.c.

References ICMAP_VALUETYPE_INT32.

Referenced by icmap_get_int32().

cs_error_t icmap_get_int64 ( const char *  key_name,
int64_t *  i64 
)

Definition at line 872 of file icmap.c.

References icmap_get_int64_r().

cs_error_t icmap_get_int64_r ( const icmap_map_t  map,
const char *  key_name,
int64_t *  i64 
)

Definition at line 812 of file icmap.c.

References ICMAP_VALUETYPE_INT64.

Referenced by icmap_get_int64().

cs_error_t icmap_get_int8 ( const char *  key_name,
int8_t *  i8 
)

Definition at line 836 of file icmap.c.

References icmap_get_int8_r().

cs_error_t icmap_get_int8_r ( const icmap_map_t  map,
const char *  key_name,
int8_t *  i8 
)

Definition at line 776 of file icmap.c.

References ICMAP_VALUETYPE_INT8.

Referenced by icmap_get_int8().

cs_error_t icmap_get_r ( const icmap_map_t  map,
const char *  key_name,
void *  value,
size_t *  value_len,
icmap_value_types_t type 
)

Definition at line 706 of file icmap.c.

References CS_ERR_INVALID_PARAM, and CS_OK.

Referenced by icmap_get().

cs_error_t icmap_get_string ( const char *  key_name,
char **  str 
)
cs_error_t icmap_get_uint16 ( const char *  key_name,
uint16_t *  u16 
)

Definition at line 854 of file icmap.c.

References icmap_get_uint16_r().

Referenced by totem_config_read().

cs_error_t icmap_get_uint16_r ( const icmap_map_t  map,
const char *  key_name,
uint16_t *  u16 
)

Definition at line 794 of file icmap.c.

References ICMAP_VALUETYPE_UINT16.

Referenced by icmap_get_uint16().

cs_error_t icmap_get_uint32 ( const char *  key_name,
uint32_t *  u32 
)
cs_error_t icmap_get_uint32_r ( const icmap_map_t  map,
const char *  key_name,
uint32_t *  u32 
)

Definition at line 806 of file icmap.c.

References ICMAP_VALUETYPE_UINT32.

Referenced by icmap_get_uint32().

cs_error_t icmap_get_uint64 ( const char *  key_name,
uint64_t *  u64 
)

Definition at line 878 of file icmap.c.

References icmap_get_uint64_r().

Referenced by wd_get_service_engine_ver0().

cs_error_t icmap_get_uint64_r ( const icmap_map_t  map,
const char *  key_name,
uint64_t *  u64 
)

Definition at line 818 of file icmap.c.

References ICMAP_VALUETYPE_UINT64.

Referenced by icmap_get_uint64().

cs_error_t icmap_get_uint8 ( const char *  key_name,
uint8_t *  u8 
)

Definition at line 842 of file icmap.c.

References icmap_get_uint8_r().

Referenced by cs_ipcs_service_destroy(), totem_config_keyread(), and totem_config_read().

cs_error_t icmap_get_uint8_r ( const icmap_map_t  map,
const char *  key_name,
uint8_t *  u8 
)

Definition at line 782 of file icmap.c.

References ICMAP_VALUETYPE_UINT8.

Referenced by icmap_get_uint8().

cs_error_t icmap_inc ( const char *  key_name)

Definition at line 1057 of file icmap.c.

References icmap_inc_r().

Referenced by cs_ipcs_private_data_get().

cs_error_t icmap_inc_r ( const icmap_map_t  map,
const char *  key_name 
)

Definition at line 1052 of file icmap.c.

References icmap_adjust_int_r().

Referenced by icmap_inc().

cs_error_t icmap_init ( void  )
cs_error_t icmap_init_r ( icmap_map_t result)

Definition at line 203 of file icmap.c.

References CS_ERR_INIT, CS_ERR_NO_MEMORY, and qb_to_cs_error().

Referenced by icmap_init().

int icmap_is_key_ro ( const char *  key_name)
void icmap_iter_finalize ( icmap_iter_t  iter)
icmap_iter_t icmap_iter_init ( const char *  prefix)
icmap_iter_t icmap_iter_init_r ( const icmap_map_t  map,
const char *  prefix 
)

Definition at line 1092 of file icmap.c.

References icmap_map::qb_map.

Referenced by icmap_copy_map(), and icmap_iter_init().

const char* icmap_iter_next ( icmap_iter_t  iter,
size_t *  value_len,
icmap_value_types_t type 
)
int icmap_key_value_eq ( const icmap_map_t  map1,
const char *  key_name1,
const icmap_map_t  map2,
const char *  key_name2 
)

Definition at line 399 of file icmap.c.

References icmap_map::qb_map, icmap_item::type, icmap_item::value, and icmap_item::value_len.

cs_error_t icmap_set ( const char *  key_name,
const void *  value,
size_t  value_len,
icmap_value_types_t  type 
)

Definition at line 501 of file icmap.c.

References icmap_set_r().

Referenced by icmap_adjust_int_r().

cs_error_t icmap_set_double ( const char *  key_name,
double  value 
)

Definition at line 635 of file icmap.c.

References icmap_set_double_r().

Referenced by mon_get_service_engine_ver0().

cs_error_t icmap_set_double_r ( const icmap_map_t  map,
const char *  key_name,
double  value 
)

Definition at line 565 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_DOUBLE.

Referenced by icmap_set_double().

cs_error_t icmap_set_float ( const char *  key_name,
float  value 
)

Definition at line 629 of file icmap.c.

References icmap_set_float_r().

cs_error_t icmap_set_float_r ( const icmap_map_t  map,
const char *  key_name,
float  value 
)

Definition at line 559 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_FLOAT.

Referenced by icmap_set_float().

cs_error_t icmap_set_int16 ( const char *  key_name,
int16_t  value 
)

Definition at line 593 of file icmap.c.

References icmap_set_int16_r().

cs_error_t icmap_set_int16_r ( const icmap_map_t  map,
const char *  key_name,
int16_t  value 
)

Definition at line 523 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_INT16.

Referenced by icmap_set_int16().

cs_error_t icmap_set_int32 ( const char *  key_name,
int32_t  value 
)

Definition at line 605 of file icmap.c.

References icmap_set_int32_r().

Referenced by mon_get_service_engine_ver0().

cs_error_t icmap_set_int32_r ( const icmap_map_t  map,
const char *  key_name,
int32_t  value 
)

Definition at line 535 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_INT32.

Referenced by icmap_set_int32().

cs_error_t icmap_set_int64 ( const char *  key_name,
int64_t  value 
)

Definition at line 617 of file icmap.c.

References icmap_set_int64_r().

cs_error_t icmap_set_int64_r ( const icmap_map_t  map,
const char *  key_name,
int64_t  value 
)

Definition at line 547 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_INT64.

Referenced by icmap_set_int64().

cs_error_t icmap_set_int8 ( const char *  key_name,
int8_t  value 
)

Definition at line 581 of file icmap.c.

References icmap_set_int8_r().

cs_error_t icmap_set_int8_r ( const icmap_map_t  map,
const char *  key_name,
int8_t  value 
)

Definition at line 511 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_INT8.

Referenced by icmap_set_int8().

cs_error_t icmap_set_r ( const icmap_map_t  map,
const char *  key_name,
const void *  value,
size_t  value_len,
icmap_value_types_t  type 
)
cs_error_t icmap_set_ro_access ( const char *  key_name,
int  prefix,
int  ro_access 
)
cs_error_t icmap_set_string ( const char *  key_name,
const char *  value 
)
cs_error_t icmap_set_string_r ( const icmap_map_t  map,
const char *  key_name,
const char *  value 
)

Definition at line 571 of file icmap.c.

References CS_ERR_INVALID_PARAM, icmap_set_r(), and ICMAP_VALUETYPE_STRING.

Referenced by coroparse_configparse(), and icmap_set_string().

cs_error_t icmap_set_uint16 ( const char *  key_name,
uint16_t  value 
)

Definition at line 599 of file icmap.c.

References icmap_set_uint16_r().

Referenced by corosync_service_link_and_init(), and totem_config_read().

cs_error_t icmap_set_uint16_r ( const icmap_map_t  map,
const char *  key_name,
uint16_t  value 
)

Definition at line 529 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_UINT16.

Referenced by coroparse_configparse(), and icmap_set_uint16().

cs_error_t icmap_set_uint32 ( const char *  key_name,
uint32_t  value 
)
cs_error_t icmap_set_uint32_r ( const icmap_map_t  map,
const char *  key_name,
uint32_t  value 
)

Definition at line 541 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_UINT32.

Referenced by coroparse_configparse(), and icmap_set_uint32().

cs_error_t icmap_set_uint64 ( const char *  key_name,
uint64_t  value 
)
cs_error_t icmap_set_uint64_r ( const icmap_map_t  map,
const char *  key_name,
uint64_t  value 
)

Definition at line 553 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_UINT64.

Referenced by coroparse_configparse(), and icmap_set_uint64().

cs_error_t icmap_set_uint8 ( const char *  key_name,
uint8_t  value 
)

Definition at line 587 of file icmap.c.

References icmap_set_uint8_r().

Referenced by totem_config_keyread(), and totem_config_read().

cs_error_t icmap_set_uint8_r ( const icmap_map_t  map,
const char *  key_name,
uint8_t  value 
)

Definition at line 517 of file icmap.c.

References icmap_set_r(), and ICMAP_VALUETYPE_UINT8.

Referenced by coroparse_configparse(), and icmap_set_uint8().

cs_error_t icmap_track_add ( const char *  key_name,
int32_t  track_type,
icmap_notify_fn_t  notify_fn,
void *  user_data,
icmap_track_t icmap_track 
)
cs_error_t icmap_track_delete ( icmap_track_t  icmap_track)
void* icmap_track_get_user_data ( icmap_track_t  icmap_track)

Definition at line 1228 of file icmap.c.

References icmap_track::user_data.