#include <stddef.h>
-#define DEF_STR(name) DEF_STRUCT_STR(name, sql_settings)
-#define DEF_INT(name) DEF_STRUCT_INT(name, sql_settings)
-#define DEF_BOOL(name) DEF_STRUCT_BOOL(name, sql_settings)
+#define DEF_STR(name) DEF_STRUCT_STR(name, db_sql_settings)
+#define DEF_INT(name) DEF_STRUCT_INT(name, db_sql_settings)
+#define DEF_BOOL(name) DEF_STRUCT_BOOL(name, db_sql_settings)
static struct setting_def setting_defs[] = {
DEF_STR(driver),
{ 0, NULL, 0 }
};
-static struct sql_settings default_sql_settings = {
+static struct db_sql_settings default_db_sql_settings = {
.driver = NULL,
.connect = NULL,
.password_query = "SELECT username, domain, password FROM users WHERE username = '%n' AND domain = '%d'",
.userdb_warning_disable = FALSE
};
-static struct sql_connection *connections = NULL;
+static struct db_sql_connection *connections = NULL;
-static struct sql_connection *sql_conn_find(const char *config_path)
+static struct db_sql_connection *sql_conn_find(const char *config_path)
{
- struct sql_connection *conn;
+ struct db_sql_connection *conn;
for (conn = connections; conn != NULL; conn = conn->next) {
if (strcmp(conn->config_path, config_path) == 0)
}
static const char *parse_setting(const char *key, const char *value,
- struct sql_connection *conn)
+ struct db_sql_connection *conn)
{
return parse_setting_from_defs(conn->pool, setting_defs,
&conn->set, key, value);
}
-struct sql_connection *db_sql_init(const char *config_path, bool userdb)
+struct db_sql_connection *db_sql_init(const char *config_path, bool userdb)
{
- struct sql_connection *conn;
+ struct db_sql_connection *conn;
const char *error;
pool_t pool;
if (*config_path == '\0')
i_fatal("sql: Configuration file path not given");
- pool = pool_alloconly_create("sql_connection", 1024);
- conn = p_new(pool, struct sql_connection, 1);
+ pool = pool_alloconly_create("db_sql_connection", 1024);
+ conn = p_new(pool, struct db_sql_connection, 1);
conn->pool = pool;
conn->userdb_used = userdb;
conn->refcount = 1;
conn->config_path = p_strdup(pool, config_path);
- conn->set = default_sql_settings;
+ conn->set = default_db_sql_settings;
if (!settings_read_nosection(config_path, parse_setting, conn, &error))
i_fatal("sql %s: %s", config_path, error);
- if (conn->set.password_query == default_sql_settings.password_query)
+ if (conn->set.password_query == default_db_sql_settings.password_query)
conn->default_password_query = TRUE;
- if (conn->set.user_query == default_sql_settings.user_query)
+ if (conn->set.user_query == default_db_sql_settings.user_query)
conn->default_user_query = TRUE;
- if (conn->set.update_query == default_sql_settings.update_query)
+ if (conn->set.update_query == default_db_sql_settings.update_query)
conn->default_update_query = TRUE;
- if (conn->set.iterate_query == default_sql_settings.iterate_query)
+ if (conn->set.iterate_query == default_db_sql_settings.iterate_query)
conn->default_iterate_query = TRUE;
if (conn->set.driver == NULL) {
return conn;
}
-void db_sql_unref(struct sql_connection **_conn)
+void db_sql_unref(struct db_sql_connection **_conn)
{
- struct sql_connection *conn = *_conn;
+ struct db_sql_connection *conn = *_conn;
/* abort all pending auth requests before setting conn to NULL,
so that callbacks can still access it */
pool_unref(&conn->pool);
}
-void db_sql_connect(struct sql_connection *conn)
+void db_sql_connect(struct db_sql_connection *conn)
{
if (sql_connect(conn->db) < 0 && worker) {
/* auth worker's sql connection failed. we can't do anything
}
}
-void db_sql_success(struct sql_connection *conn ATTR_UNUSED)
+void db_sql_success(struct db_sql_connection *conn ATTR_UNUSED)
{
if (worker)
auth_worker_client_send_success();
}
-void db_sql_check_userdb_warning(struct sql_connection *conn)
+void db_sql_check_userdb_warning(struct db_sql_connection *conn)
{
if (worker || conn->userdb_used || conn->set.userdb_warning_disable)
return;
if (strcmp(conn->set.user_query,
- default_sql_settings.user_query) != 0) {
+ default_db_sql_settings.user_query) != 0) {
i_warning("sql: Ignoring changed user_query in %s, "
"because userdb sql not used. "
"(If this is intentional, set userdb_warning_disable=yes)",
conn->config_path);
} else if (strcmp(conn->set.iterate_query,
- default_sql_settings.iterate_query) != 0) {
+ default_db_sql_settings.iterate_query) != 0) {
i_warning("sql: Ignoring changed iterate_query in %s, "
"because userdb sql not used. "
"(If this is intentional, set userdb_warning_disable=yes)",
#include "sql-api.h"
-struct sql_settings {
+struct db_sql_settings {
const char *driver;
const char *connect;
const char *password_query;
bool userdb_warning_disable;
};
-struct sql_connection {
- struct sql_connection *next;
+struct db_sql_connection {
+ struct db_sql_connection *next;
pool_t pool;
int refcount;
char *config_path;
- struct sql_settings set;
+ struct db_sql_settings set;
struct sql_db *db;
bool default_password_query:1;
bool userdb_used:1;
};
-struct sql_connection *db_sql_init(const char *config_path, bool userdb);
-void db_sql_unref(struct sql_connection **conn);
+struct db_sql_connection *db_sql_init(const char *config_path, bool userdb);
+void db_sql_unref(struct db_sql_connection **conn);
-void db_sql_connect(struct sql_connection *conn);
-void db_sql_success(struct sql_connection *conn);
+void db_sql_connect(struct db_sql_connection *conn);
+void db_sql_success(struct db_sql_connection *conn);
-void db_sql_check_userdb_warning(struct sql_connection *conn);
+void db_sql_check_userdb_warning(struct db_sql_connection *conn);
#endif