Asterisk.org: Developer Documentation (28 Oct 2009)

Wed Oct 28 15:47:49 2009

## Asterisk developer's documentation

# astdb.h

Go to the documentation of this file.

    00001 /*
    00002  * Asterisk -- An open source telephony toolkit.
    00003  *
    00004  * Copyright (C) 1999 - 2005, Digium, Inc.
    00005  *
    00006  * Mark Spencer <markster@digium.com>
    00007  *
    00008  * See http://www.asterisk.org for more information about
    00009  * the Asterisk project. Please do not directly contact
    00010  * any of the maintainers of this project for assistance;
    00011  * the project provides a web site, mailing lists and IRC
    00012  * channels for your use.
    00013  *
    00014  * This program is free software, distributed under the terms of
    00015  * the GNU General Public License Version 2. See the LICENSE file
    00016  * at the top of the source tree.
    00017  */
    00018
    00019 /*! \file
    00020  * \brief Persistant data storage (akin to *doze registry)
    00021  */
    00022
    00023 #ifndef _ASTERISK_ASTDB_H
    00024 #define _ASTERISK_ASTDB_H
    00025
    00026 #if defined(__cplusplus) || defined(c_plusplus)
    00027 extern "C" {
    00028 #endif
    00029
    00030 struct ast_db_entry {
    00031    struct ast_db_entry *next;
    00032    char *key;
    00033    char data[0];
    00034 };
    00035
    00036 int ast_db_get(const char *family, const char *key, char *out, int outlen);
    00037
    00038 int ast_db_put(const char *family, const char *key, char *value);
    00039
    00040 int ast_db_del(const char *family, const char *key);
    00041
    00042 int ast_db_deltree(const char *family, const char *keytree);
    00043
    00044 struct ast_db_entry *ast_db_gettree(const char *family, const char *keytree);
    00045
    00046 void ast_db_freetree(struct ast_db_entry *entry);
    00047
    00048 #if defined(__cplusplus) || defined(c_plusplus)
    00049 }
    00050 #endif
    00051
    00052 #endif /* _ASTERISK_ASTDB_H */