# CMAP_ITER_INIT

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
SEE ALSO

## NAME

cmap_iter_init − Initialize iterator for keys stored in CMAP

## SYNOPSIS

#include <corosync/cmap.h>

cs_error_t cmap_iter_init (cmap_handle_t handle, const char *prefix, cmap_iter_handle_t *cmap_iter_handle);

## DESCRIPTION

The cmap_iter_init function is used to initialize iteration of all keys with given prefix. The handle argument is connection to CMAP database obtained by calling cmap_initialize(3) function. prefix is string, and every returned key must have name with given prefix. This variable can also be NULL (or empty string) and then all keys are iterated.

cmap_iter_init is used only for initialize context for future cmap_iter_next(3) calls and handle needed for that function is returned in cmap_iter_handle variable. When you have finished iteration over objects, call cmap_iter_finalize(3) function to free up memory associated with iteration.

## RETURN VALUE

This call returns the CS_OK value if successful. If there are no items with given prefixes, CS_ERR_NO_SECTIONS is returned.

## SEE ALSO

cmap_iter_next(3), cmap_iter_finalize(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