|
|
| version 1.1.2.1, 2011/11/22 21:12:52 | version 1.1.2.2, 2011/11/23 08:50:03 |
|---|---|
| Line 1 | Line 1 |
| #include "global.h" | #include "global.h" |
| #include "dbmqtt.h" | |
| /* | |
| * mqtt_rtlm_log() Log database connection message | |
| * | |
| * @fmt = format string | |
| * @... = argument list | |
| * return: none | |
| */ | |
| static void | |
| mqtt_rtlm_log(const char *fmt, ...) | |
| { | |
| va_list lst; | |
| va_start(lst, fmt); | |
| vsyslog(LOG_ERR, fmt, lst); | |
| va_end(lst); | |
| } | |
| #define MQTT_DB_LOG(_sql) (assert((_sql)), mqtt_rtlm_log("Error:: SQL #%d - %s", \ | |
| sqlite3_errcode((_sql)), sqlite3_errmsg((_sql)))) | |
| /* | |
| * mqtt_rtlm_open() Open database connection | |
| * | |
| * @csCfgName = config filename | |
| * return: NULL error or SQL handle | |
| */ | |
| sqlite3 * | |
| mqtt_rtlm_open(sl_config *cfg) | |
| { | |
| sqlite3 *sql = NULL; | |
| const char *str = NULL; | |
| if (!cfg) | |
| return NULL; | |
| str = (const char*) cfg_GetAttribute(cfg, CFG("mqtt_acc"), CFG("name")); | |
| if (!str) { | |
| mqtt_rtlm_log("Error:: Unknown database name ...\n"); | |
| return NULL; | |
| } | |
| if (sqlite3_open_v2(str, &sql, SQLITE_OPEN_READONLY, NULL)) { | |
| MQTT_DB_LOG(sql); | |
| sqlite3_close(sql); | |
| return NULL; | |
| } | |
| return sql; | |
| } | |
| /* | |
| * mqtt_rtlm_close() Close database connection | |
| * | |
| * @sql = SQL handle | |
| * return: none | |
| */ | |
| void | |
| mqtt_rtlm_close(sqlite3 *sql) | |
| { | |
| sqlite3_close(sql); | |
| } |