Merge the adaptive realtime branch, which will make adding new required fields
[asterisk/asterisk.git] / include / asterisk / res_odbc.h
index 1defc81..4fbc2da 100644 (file)
@@ -30,6 +30,7 @@
 #include <sql.h>
 #include <sqlext.h>
 #include <sqltypes.h>
+#include "asterisk/linkedlists.h"
 
 typedef enum { ODBC_SUCCESS=0, ODBC_FAIL=-1} odbc_status;
 
@@ -44,6 +45,27 @@ struct odbc_obj {
        AST_LIST_ENTRY(odbc_obj) list;
 };
 
+/*!\brief These aren't used in any API calls, but they are kept in a common
+ * location, simply for convenience and to avoid duplication.
+ */
+struct odbc_cache_columns {
+       char *name;
+       SQLSMALLINT type;
+       SQLINTEGER size;
+       SQLSMALLINT decimals;
+       SQLSMALLINT radix;
+       SQLSMALLINT nullable;
+       SQLINTEGER octetlen;
+       AST_RWLIST_ENTRY(odbc_cache_columns) list;
+};
+
+struct odbc_cache_tables {
+       char *connection;
+       char *table;
+       AST_RWLIST_HEAD(_columns, odbc_cache_columns) columns;
+       AST_RWLIST_ENTRY(odbc_cache_tables) list;
+};
+
 /* functions */
 
 /*!