]> jfr.im git - irc/quakenet/newserv.git/blobdiff - dbapi2/dbapi2.h
DBAPI2: add support for stored procedures
[irc/quakenet/newserv.git] / dbapi2 / dbapi2.h
index 0c3c8644623141c201429757f0d9f4f8faad9dcd..b7b71878c41fb5ec5501242561fb63949112bdfa 100644 (file)
@@ -32,6 +32,7 @@ typedef void (*DBAPIQueryCallback)(const struct DBAPIResult *, void *);
 typedef void (*DBAPIQuery)(const struct DBAPIConn *, DBAPIQueryCallback, DBAPIUserData, const char *, ...) __attribute__ ((format (printf, 4, 5)));
 typedef void (*DBAPISimpleQuery)(const struct DBAPIConn *, const char *, ...) __attribute__ ((format (printf, 2, 3)));
 typedef void (*DBAPIQueryV)(const struct DBAPIConn *, DBAPIQueryCallback, DBAPIUserData, const char *);
+typedef void (*DBAPICallV)(const struct DBAPIConn *, DBAPIQueryCallback, DBAPIUserData, const char *, const char *);
 typedef void (*DBAPICreateTable)(const struct DBAPIConn *, DBAPIQueryCallback, DBAPIUserData, const char *, ...) __attribute__ ((format (printf, 4, 5)));
 typedef void (*DBAPICreateTableV)(const struct DBAPIConn *, DBAPIQueryCallback, DBAPIUserData, const char *);
 typedef void (*DBAPILoadTable)(const struct DBAPIConn *, DBAPIQueryCallback, DBAPIQueryCallback, DBAPIQueryCallback, DBAPIUserData, const char *);
@@ -42,6 +43,8 @@ typedef void (*DBAPISafeCreateTable)(const struct DBAPIConn *, DBAPIQueryCallbac
 
 typedef void (*DBAPIEscapeString)(const struct DBAPIConn *, char *, const char *, size_t);
 typedef int (*DBAPIQuoteString)(const struct DBAPIConn *, char *, size_t, const char *, size_t);
+typedef void (*DBAPICall)(const struct DBAPIConn *, DBAPIQueryCallback, DBAPIUserData, const char *, const char *, const char *, ...);
+typedef void (*DBAPISimpleCall)(const struct DBAPIConn *, const char *, const char *, const char *, ...);
 
 typedef char *(*DBAPITableName)(const struct DBAPIConn *, const char *);
 
@@ -59,6 +62,7 @@ typedef struct DBAPIProvider {
 
   DBAPIEscapeString escapestring;
   DBAPIQuoteString quotestring;
+  DBAPICallV call;
 
 /* private members */
   struct DBAPIProviderData *__providerdata;
@@ -78,6 +82,9 @@ typedef struct DBAPIConn {
   DBAPISafeSimpleQuery squery;
   DBAPISafeCreateTable createtable;
 
+  DBAPICall call;
+  DBAPISimpleCall scall;
+
   char name[DBNAME_LEN+1];
 
   void *handle;
@@ -88,6 +95,7 @@ typedef struct DBAPIConn {
   DBAPIQueryV __query;
   DBAPICreateTableV __createtable;
   DBAPILoadTable __loadtable;
+  DBAPICallV __call;
 } DBAPIConn;
 
 typedef char *(*DBAPIResultGet)(const struct DBAPIResult *, unsigned int);