cs_error_t cmap_dec (cmap_handle_t handle, const char *key_name);
The cmap_dec function is used to decrease integer value of already stored 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 increase value of.
Function is defined only on values where increase makes sense and is well defined, so it can 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
Overflow/underflow is not detected and it's ignored.
This call returns the CS_OK value if successful. If value or key_name are unspecified, CS_ERR_INVALID_PARAM is returned. CS_ERR_NOT_EXIST error is returned if key doesn't exist (wasn't created by calling cmap_set(3) first). Some of keys may be tagged read-only directly in corosync and setting such key will result in CS_ERR_ACCESS error.
cmap_get(3), cmap_set(3), cmap_initialize(3), cmap_overview(3)
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