---
name: "confdb_initialize"
section: "3"
platform: "linux"
package: "corosync-dev"
version: "1.4.6-1.1"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/confdb_initialize"
---

# confdb\_initialize(3)

Create a new connection to the ConfDb service

## NAME

confdb\_initialize - Create a new connection to the ConfDb service

## SYNOPSIS

**#include \<corosync/confdb.h\>**

**int confdb\_initialize(confdb\_handle\_t \****handle***, confdb\_callbacks\_t \****callbacks***);**

## DESCRIPTION

The **confdb\_initialize** function is used to initialize a connection to the configuration database API.

Each application may have several connections to the CONFDB API.  Each  application uses the *handle* argument to uniquely identify the connection.  The *handle* argument is then used in other function calls to identify the connection to be used for communication with the CONFDB service.

Every time the configuration database is updated, the callback is called. The callback function is described by the following type definitions:

-

  ```
  typedef void (*confdb_change_notify_fn_t) (
  	confdb_handle_t handle,
  	unsigned int parent_object_handle,
  	unsigned int object_handle,
  	void *object_name,
  	int  object_name_len,
  	void *key_name,
  	int key_name_len,
  	void *key_value,
  	int key_value_len);
  ```

-

  The *callbacks* argument is of the type:

-

  ```

  ```

  typedef struct {\
   	confdb\_change\_notify\_fn\_t confdb\_change\_notify\_fn; } confdb\_callbacks\_t;

-

  When a configuration change occurs, the callback is called from the **confdb\_dispatch()** function.

## RETURN VALUE

This call returns the CONFDB\_OK value if successful, otherwise an error is returned.

## BUGS

Callbacks are not support at the moment.

## ERRORS

The errors are undocumented.

## SEE ALSO

[**confdb\_overview**(8)](/confdb_overview/8.md), [**confdb\_finalize**(3)](/confdb_finalize/3.md), [**confdb\_fd\_get**(3)](/confdb_fd_get/3.md), [**confdb\_dispatch**(3)](/confdb_dispatch/3.md),
