CMAP_SET(3) Corosync Cluster Engine Programmer's Manual CMAP_SET(3)
NAME
cmap_set - Store value in CMAP
SYNOPSIS
#include <corosync/cmap.h> cs_error_t cmap_set (cmap_handle_t handle, const char *key_name, const void *value, size_t value_len, cmap_value_types_t type); Also shortcuts for different types are defined
cs_error_t cmap_set_int8(cmap_handle_t handle, const char *key_name, int8_t value); cs_error_t cmap_set_uint8(cmap_handle_t handle, const char *key_name, uint8_t value); cs_error_t cmap_set_int16(cmap_handle_t handle, const char *key_name, int16_t value); cs_error_t cmap_set_uint16(cmap_handle_t handle, const char *key_name, uint16_t value); cs_error_t cmap_set_int32(cmap_handle_t handle, const char *key_name, int32_t value); cs_error_t cmap_set_uint32(cmap_handle_t handle, const char *key_name, uint32_t value); cs_error_t cmap_set_int64(cmap_handle_t handle, const char *key_name, int64_t value); cs_error_t cmap_set_uint64(cmap_handle_t handle, const char *key_name, uint64_t value); cs_error_t cmap_set_float(cmap_handle_t handle, const char *key_name, float value); cs_error_t cmap_set_double(cmap_handle_t handle, const char *key_name, double value); cs_error_t cmap_set_string(cmap_handle_t handle, const char *key_name, const char *value);DESCRIPTION
The
cmap_set function is used to store key inside cmap. The
handle argument is connection to CMAP database obtained by calling
cmap_initialize(3) function.
key_name is name of key to set value.
Key name is limited by minimal (CMAP_KEYNAME_MINLEN, currently 3) and
maximal (CMAP_KEYNAME_MAXLEN, currently 255) length. Also key can
contain only limited set of characters expressed by regexp [a-zA-
Z0-9._-/:]*.
value is pointer to allocated data which will be stored
inside CMAP. Length of value (number of bytes) is supplied as
value_len parameter. Last parameter is
type which gives type of
value. It may be one of:
CMAP_VALUETYPE_INT8 - 8-bit signed integer
CMAP_VALUETYPE_UINT8 - 8-bit unsigned integer
CMAP_VALUETYPE_INT16 - 16-bit signed integer
CMAP_VALUETYPE_UINT16 - 16-bit unsigned integer
CMAP_VALUETYPE_INT32 - 32-bit signed integer
CMAP_VALUETYPE_UINT32 - 32-bit unsigned integer
CMAP_VALUETYPE_INT64 - 64-bit signed integer
CMAP_VALUETYPE_UINT64 - 64-bit unsigned integer
CMAP_VALUETYPE_FLOAT - Float value
CMAP_VALUETYPE_DOUBLE - Double value
CMAP_VALUETYPE_STRING - C-style string
CMAP_VALUETYPE_BINARY - Binary data, byte with zero value has no
special meaning
RETURN VALUE
This call returns the CS_OK value if successful. If value or key_name
are unspecified, CS_ERR_INVALID_PARAM is returned. Too short or too
long key_name returns CS_ERR_NAME_TOO_LONG error code. Some of keys
may be tagged read-only directly in corosync and setting such key
will result in CS_ERR_ACCESS error.
SEE ALSO
cmap_get(3),
cmap_initialize(3),
cmap_overview(8) CS_ERR_TRY_AGAIN Resource temporarily unavailable
CS_ERR_INVALID_PARAM Invalid argument
CS_ERR_ACCESS Permission denied
CS_ERR_LIBRARY The connection failed
CS_ERR_INTERRUPT System call interrupted by a signal
CS_ERR_NOT_SUPPORTED The requested protocol/functionality not
supported
CS_ERR_MESSAGE_ERROR Incorrect auth message received
CS_ERR_NO_MEMORY Not enough memory to complete the requested task
corosync Man Page 23/01/2012 CMAP_SET(3)