1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-10 01:02:56 +03:00

Add the sqlite3_os_routine_set()/get() functions. (CVS 2818)

FossilOrigin-Name: c1ed79f594fb85009c2e9e5e281cbe66a9d2fa17
This commit is contained in:
danielk1977
2005-12-15 10:11:30 +00:00
parent af9a7c22b5
commit 13a68c3f61
14 changed files with 198 additions and 45 deletions

View File

@@ -222,8 +222,30 @@ extern struct sqlite3OsVtbl {
int (*xCurrentTime)(double*);
void (*xEnterMutex)(void);
void (*xLeaveMutex)(void);
void *(*xThreadSpecificData)(int);
} sqlite3Os;
/*
** The semi-published API for setting and getting methods from the
** global sqlite3OsVtbl structure. Neither sqlite3_os_routine_XXX() function
** is intriniscally thread-safe.
**
** External get/set access is only provided to the routines identified
** by the hash-defined SQLITE_OS_ROUTINE symbols.
*/
#define SQLITE_OS_ROUTINE_OPENREADWRITE 1
#define SQLITE_OS_ROUTINE_OPENREADONLY 2
#define SQLITE_OS_ROUTINE_OPENEXCLUSIVE 3
#define SQLITE_OS_ROUTINE_DELETE 4
#define SQLITE_OS_ROUTINE_FILEEXISTS 5
#define SQLITE_OS_ROUTINE_SYNCDIRECTORY 6
void *sqlite3_os_routine_get(int);
void *sqlite3_os_routine_set(int, void *);
void sqlite3_os_enter_mutex();
void sqlite3_os_leave_mutex();
/*
** Prototypes for routines found in os.c
*/