aboutsummaryrefslogtreecommitdiff
path: root/src/sqlite3ext.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/sqlite3ext.h')
-rw-r--r--src/sqlite3ext.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/sqlite3ext.h b/src/sqlite3ext.h
index 338e1becd..689a5c485 100644
--- a/src/sqlite3ext.h
+++ b/src/sqlite3ext.h
@@ -251,12 +251,13 @@ struct sqlite3_api_routines {
char *(*vsnprintf)(int,char*,const char*,va_list);
int (*wal_checkpoint_v2)(sqlite3*,const char*,int,int*,int*);
/* Version 3.8.7 and later */
- int (*auto_extension)(void(*)(void));
+ int (*auto_extension)(int(*)(sqlite3*,char**,const sqlite3_api_routines*));
int (*bind_blob64)(sqlite3_stmt*,int,const void*,sqlite3_uint64,
void(*)(void*));
int (*bind_text64)(sqlite3_stmt*,int,const char*,sqlite3_uint64,
void(*)(void*),unsigned char);
- int (*cancel_auto_extension)(void(*)(void));
+ int (*cancel_auto_extension)(int(*)(sqlite3*,char**,
+ const sqlite3_api_routines*));
int (*load_extension)(sqlite3*,const char*,const char*,char**);
void *(*malloc64)(sqlite3_uint64);
sqlite3_uint64 (*msize)(void*);
@@ -287,6 +288,16 @@ struct sqlite3_api_routines {
};
/*
+** This is the function signature used for all extension entry points. It
+** is also defined in the file "loadext.c".
+*/
+typedef int (*sqlite3_loadext_entry)(
+ sqlite3 *db, /* Handle to the database. */
+ char **pzErrMsg, /* Used to set error string on failure. */
+ const sqlite3_api_routines *pThunk /* Extension API function pointers. */
+);
+
+/*
** The following macros redefine the API routines so that they are
** redirected through the global sqlite3_api structure.
**