Mercurial > dovecot > original-hg > dovecot-1.2
changeset 3162:5d6787582410 HEAD
Added sql_get_flags() function, currently returning only
SQL_DB_FLAG_BLOCKING.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sun, 27 Feb 2005 01:16:51 +0200 |
parents | 6a3254e3c3de |
children | 8a4c6f0491ab |
files | src/lib-sql/driver-mysql.c src/lib-sql/driver-pgsql.c src/lib-sql/sql-api-private.h src/lib-sql/sql-api.h |
diffstat | 4 files changed, 24 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-sql/driver-mysql.c Sun Feb 27 00:55:03 2005 +0200 +++ b/src/lib-sql/driver-mysql.c Sun Feb 27 01:16:51 2005 +0200 @@ -244,6 +244,12 @@ pool_unref(db->pool); } +static enum sql_db_flags +driver_mysql_get_flags(struct sql_db *db __attr_unused__) +{ + return SQL_DB_FLAG_BLOCKING; +} + static int driver_mysql_connection_do_query(struct mysql_connection *conn, const char *query) { @@ -453,6 +459,7 @@ struct sql_db driver_mysql_db = { driver_mysql_init, driver_mysql_deinit, + driver_mysql_get_flags, driver_mysql_exec, driver_mysql_query };
--- a/src/lib-sql/driver-pgsql.c Sun Feb 27 00:55:03 2005 +0200 +++ b/src/lib-sql/driver-pgsql.c Sun Feb 27 01:16:51 2005 +0200 @@ -169,6 +169,12 @@ i_free(db); } +static enum sql_db_flags +driver_mysql_get_flags(struct sql_db *db __attr_unused__) +{ + return 0; +} + static void consume_results(void *context) { struct pgsql_db *db = context; @@ -552,6 +558,7 @@ struct sql_db driver_pgsql_db = { driver_pgsql_init, driver_pgsql_deinit, + driver_mysql_get_flags, driver_pgsql_exec, driver_pgsql_query };
--- a/src/lib-sql/sql-api-private.h Sun Feb 27 00:55:03 2005 +0200 +++ b/src/lib-sql/sql-api-private.h Sun Feb 27 01:16:51 2005 +0200 @@ -7,6 +7,8 @@ struct sql_db *(*init)(const char *connect_string); void (*deinit)(struct sql_db *db); + enum sql_db_flags (*get_flags)(struct sql_db *db); + void (*exec)(struct sql_db *db, const char *query); void (*query)(struct sql_db *db, const char *query, sql_query_callback_t *callback, void *context);
--- a/src/lib-sql/sql-api.h Sun Feb 27 00:55:03 2005 +0200 +++ b/src/lib-sql/sql-api.h Sun Feb 27 01:16:51 2005 +0200 @@ -1,6 +1,11 @@ #ifndef __SQL_API_H #define __SQL_API_H +enum sql_db_flags { + /* Set if queries are not executed asynchronously */ + SQL_DB_FLAG_BLOCKING = 0x01, +}; + /* This SQL API is designed to work asynchronously. The underlying drivers however may not. */ @@ -14,6 +19,9 @@ struct sql_db *sql_init(const char *db_driver, const char *connect_string); void sql_deinit(struct sql_db *db); +/* Returns SQL database state flags. */ +enum sql_db_flags sql_get_flags(struct sql_db *db); + /* Execute SQL query without waiting for results. */ void sql_exec(struct sql_db *db, const char *query); /* Execute SQL query and return result in callback. */