SQLite

All files named ”src/loadext.c”
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for src/loadext.c

2025-05-19
14:04
[d7edd8e671] part of check-in [8819b7285b] Make the new sqlite3_setlk_timeout() interface accessible to loadable extensions. (check-in: [8819b7285b] user: drh branch: trunk, size: 24904)
2025-03-28
08:59
[4cde2939fa] part of check-in [648aca5b47] Second round of cygwin fixes: this makes the full "unix" vfs usable with Cygwin as well. Not all tests are working yet. WIP! (check-in: [648aca5b47] user: jan.nijtmans branch: cygwin-fixes, size: 24869)
2023-10-30
18:09
[7432c944ff] part of check-in [8fc9aa0f89] Make the new sqlite3_get_clientdata() and sqlite3_set_clientdata() interfaces available to run-time loaded extensions. (check-in: [8fc9aa0f89] user: drh branch: trunk, size: 24846)
2023-10-13
12:48
[7d56c6f28a] part of check-in [8c25c4b18a] Round one of an audit for SQLITE_ENABLE_API_ARMOR for functions exposed by JNI and those functions missing armor, as reported in several forum posts. (check-in: [8c25c4b18a] user: stephan branch: api-armor-audit, size: 24761)
2023-08-16
15:27
[98cfba1098] part of check-in [a237a31ff4] Make sqlite3_stmt_explain() accessible to loadable extensions. (check-in: [a237a31ff4] user: drh branch: trunk, size: 24525)
2023-07-28
12:59
[e389600cd7] part of check-in [a0de01108c] A failed attempt to add a new sqlite3_result_zeroterminated() interface that is a hint to SQLite that a TEXT result does have a zero terminator. The idea is to avoid unnecessary copying of TEXT values. This seems like an unnecessary complication at the moment, but maybe I'll return to this later. Note that this check-in does not work - it is a proof of concept only. (check-in: [a0de01108c] user: drh branch: sqlite3_result_zeroterminated, size: 24534)
2023-06-01
16:40
[176d6b2cb1] part of check-in [d016885547] If the filename argument to sqlite3_load_extension() is an empty string, then raise an error. It turns out that if dlopen() is called with an empty filename, it tries to load the current executable. And then if the caller requests some other function from the current executable, mischief can result. (check-in: [d016885547] user: drh branch: trunk, size: 24468)
2023-03-25
12:27
[be5af440f3] part of check-in [787291414d] Even tighter bounds on the maximum length of the filename for sqlite3_load_extension(). (check-in: [787291414d] user: drh branch: trunk, size: 24295)
03:17
[fb07842759] part of check-in [9f351bdee2] Tighter constraints on the maximum length of the filename handed over to sqlite3_load_extension(), due to forum post a43074729e. This is a follow-on to [01f3877c7172d522] and forum post 08a0d6d9bf. (check-in: [9f351bdee2] user: drh branch: trunk, size: 24229)
2023-01-11
00:27
[b04eb648ce] part of check-in [d030f34136] Add a new sqlite3_is_interrupted() interface that can be used by long-running app-defined functions and similar to see if they need to exit early due to an sqlite3_interrupt() call. (check-in: [d030f34136] user: drh branch: trunk, size: 24092)
2022-11-22
15:41
[2566317595] part of check-in [6d5dc9eed5] Fix last function pointer in sqlite3Apis init. Reported at forum post eba0faa96d. (check-in: [6d5dc9eed5] user: larrybr branch: trunk, size: 24033)
2022-10-14
19:21
[8086232d10] part of check-in [565d74c36f] Add missing initializer from the extension loader. Fix for check-in [d6d449978245b4fa]. (check-in: [565d74c36f] user: drh branch: trunk, size: 24029)
2022-05-17
14:59
[853385cc7a] part of check-in [2ad152236c] Add the sqlite3_db_name() interface. (check-in: [2ad152236c] user: drh branch: trunk, size: 23974)
2022-04-28
18:33
[0705c27472] part of check-in [a99ee612b9] Fix problem with SQLITE_OMIT_VIRTUALTABLE builds. (check-in: [a99ee612b9] user: dan branch: trunk, size: 23954)
2022-03-22
03:03
[2ecb1441f9] part of check-in [da874180d3] expose sqlite3_{deserialize,serialize}() in sqlite3ext.h (check-in: [da874180d3] user: larrybr branch: extapi-serializing, size: 23883)
2022-02-01
14:58
[aa919a6a78] part of check-in [eb84b80e1f] Add new interfaces to enable virtual table to process IN operator constraints all at once, rather than one element at a time. (check-in: [eb84b80e1f] user: drh branch: batch-in-operator, size: 23752)
2022-01-22
00:18
[6575343395] part of check-in [d571262d23] An initial attempt to implement sqlite3_vtab_distinct(). (check-in: [d571262d23] user: drh branch: sqlite3_vtab_distinct, size: 23685)
2022-01-20
17:10
[9a693eb895] part of check-in [0873c76b9b] Initial implementation of the sqlite3_vtab_rhs_value() interface and the qpvtab extension used for testing the virtual table interface. (check-in: [0873c76b9b] user: drh branch: sqlite3_vtab_rhs_value, size: 23660)
2021-12-24
20:22
[95db1fe62c] part of check-in [b518ce7743] Add the sqlite3_error_offset() interface. Use it in the CLI to provide better context for error messages. (check-in: [b518ce7743] user: drh branch: improved-error-context, size: 23634)
2021-10-15
23:02
[e1dcff1c91] part of check-in [bb6f2b8b48] Demostrate a prototype sqlite3_autovacuum_pages() interface. (check-in: [bb6f2b8b48] user: drh branch: autovacuum-pages-callback, size: 23577)
2021-06-23
16:07
[0aa9e7f08e] part of check-in [6699a2f6be] Fully incorporate *_changes64() API improvement. (check-in: [6699a2f6be] user: larrybr branch: trunk, size: 23516)
2021-06-11
12:41
[12684b3f19] part of check-in [01f3877c71] Avoid bugs in some implementations of dlopen() by avoiding calls to dlopen() with a filename argument that exceeds FILENAME_MAX bytes. Forum post 08a0d6d9bf. (check-in: [01f3877c71] user: drh branch: trunk, size: 23435)
2020-11-24
21:19
[8c9c8cd2bd] part of check-in [db25f1dc8e] Add the new sqlite3_txn_state() interface to the set of routines accessible by run-time loadables extensions. (check-in: [db25f1dc8e] user: drh branch: trunk, size: 22903)
2020-06-19
11:34
[436af4968c] part of check-in [7bb08b1bfc] Refactoring various names. No changes in the resulting machine code. (check-in: [7bb08b1bfc] user: drh branch: trunk, size: 22849)
2020-04-26
22:04
[421310045b] part of check-in [b73d9a7d6f] Yet another attempt to enhance sqlite3_load_extension() so that it works with Window-style pathnames using a backslash separator character. (check-in: [b73d9a7d6f] user: drh branch: trunk, size: 22859)
14:33
[acefcfb00f] part of check-in [57b16d8ca3] Fix an issue with check-in [bc3bf7c6681a96bc] when compiling on Windows. (check-in: [57b16d8ca3] user: drh branch: trunk, size: 22809)
2020-04-25
21:05
[af284e3025] part of check-in [bc3bf7c668] Fix the sqlite3_load_extension() interface so that it tolerates backslashes in place of forward-slashes in pathnames on Windows. (check-in: [bc3bf7c668] user: drh branch: trunk, size: 22809)
2020-04-21
01:06
[4540fb20e8] part of check-in [ae697b152d] Experimental API: sqlite3_database_file_object(). (check-in: [ae697b152d] user: drh branch: sqlite3_database_file_object, size: 22697)
2020-02-18
19:49
[b179df50e6] part of check-in [9469f36ac8] Add the new sqlite3_create_filename() and sqlite3_free_filename() interfaces for use by Shims. Use these interfaces inside the multiplexor. (check-in: [9469f36ac8] user: drh branch: trunk, size: 22665)
2020-01-11
16:08
[8cd803f174] part of check-in [bcb43d11c4] Redesign for better legacy compatibility. Add the sqlite3_uri_key() interface. (check-in: [bcb43d11c4] user: drh branch: enhanced-uri, size: 22580)
2019-11-14
15:21
[d74f5e7bd5] part of check-in [b8a631fd30] Merge recent enhancements from trunk. (check-in: [b8a631fd30] user: drh branch: hard-heap-limit, size: 22480)
2019-10-03
14:36
[4ddc65ae13] part of check-in [3934d2d08e] Fix some test script issues that come up with SQLITE_OMIT_VIRTUALTABLE builds. (check-in: [3934d2d08e] user: dan branch: trunk, size: 22418)
2019-08-20
17:14
[de2db4516f] part of check-in [9b14eb7754] Bring the hard-heap-limit branch up-to-date with trunk. (check-in: [9b14eb7754] user: drh branch: hard-heap-limit, size: 22395)
13:49
[a045bb3425] part of check-in [658bd51623] Add the new sqlite3_drop_modules() interface to the loadable extension mechanism. (check-in: [658bd51623] user: drh branch: trunk, size: 22367)
2019-04-25
18:15
[4b9eecde58] part of check-in [b0ccef61a7] Add the sqlite3_hard_heap_limit64() interface and the corresponding "PRAGMA hard_heap_limit=N" command. (check-in: [b0ccef61a7] user: drh branch: hard-heap-limit, size: 22371)
2019-04-04
17:39
[22afc33c3a] part of check-in [4fca46ded7] Correctly initialize the loadable extension thunk. (check-in: [4fca46ded7] user: drh branch: trunk, size: 22309)
2018-12-06
17:06
[e6f10875d5] part of check-in [53d3b169d8] When masking bits off of sqlite3.flags, make sure the mask is 64 bits in size so as not to accidentally mask of high-order bits. (check-in: [53d3b169d8] user: drh branch: trunk, size: 22223)
2018-11-28
08:02
[9050dd153b] part of check-in [9bcdec85e2] Fixes for SQLITE_OMIT_VIRTUAL_TABLE builds. (check-in: [9bcdec85e2] user: dan branch: trunk, size: 22218)
2018-10-29
17:53
[448eab53ec] part of check-in [592b66e805] Add the sqlite3_normalized_sql() API. (check-in: [592b66e805] user: mistachkin branch: normalized_sql, size: 22184)
2018-09-10
17:21
[30b140d0e5] part of check-in [3def6d8ef1] Add the ability for loadable extensions to access the new sqlite3_create_window_function() interface. (check-in: [3def6d8ef1] user: drh branch: trunk, size: 22077)
2018-05-09
15:17
[6aae573919] part of check-in [0e809cdcbd] Add 14 new interfaces to the loadable extension mechanism. (check-in: [0e809cdcbd] user: drh branch: trunk, size: 22010)
2018-05-07
02:50
[5b89b8ca83] part of check-in [b348d1193a] Backout change [05fee1a21ea398f1e4d6f1cf3] because it does not take into account the LD_LIBRARY_PATH environment variable used by dl_open(). (check-in: [b348d1193a] user: drh branch: trunk, size: 21655)
2018-01-16
20:50
[f6e4e416a7] part of check-in [f301db3c23] Make the new sqlite3_vtab_collation() interface accessible to loadable extensions. (check-in: [f301db3c23] user: drh branch: trunk, size: 21760)
2018-01-13
01:53
[8d5d9c3ab3] part of check-in [cd7c42699e] Add the new "nochange" APIs to the extension loading mechanism. (check-in: [cd7c42699e] user: drh branch: trunk, size: 21734)
2017-12-23
14:39
[55bcc3c741] part of check-in [07c773148d] Simplification to the error handling logic in the extension loader. (check-in: [07c773148d] user: drh branch: trunk, size: 21650)
13:55
[c2eb35ab31] part of check-in [05fee1a21e] Improve the error message that comes back when sqlite3_load_extension() fails because the named file exists but is not a valid shared library. (check-in: [05fee1a21e] user: drh branch: trunk, size: 21665)
2017-07-13
17:54
[20865b183b] part of check-in [e5a518038f] Add the three new pointer interfaces to the loadable extension mechanism. Update sqlite3_value_subtype() documentation to remove the statement about it not being used internally. (check-in: [e5a518038f] user: drh branch: bind-pointer, size: 21545)
2017-07-12
12:19
[15e458a122] part of check-in [783100b801] Compile cleanly with SQLITE_OMIT_UTF16. (check-in: [783100b801] user: drh branch: trunk, size: 21470)
2017-07-11
17:28
[83fc9858b1] part of check-in [b9debd626a] Enabled the new sqlite3_prepare_v3() and sqlite3_prepare16_v3() interfaces for loadable extensions. (check-in: [b9debd626a] user: drh branch: trunk, size: 21428)
2017-03-25
19:16
[a72909474d] part of check-in [8469fc0d48] Add the new sqlite3_set_last_insert_rowid() interface to the extension loader thunk. (check-in: [8469fc0d48] user: drh branch: trunk, size: 21349)
2017-01-19
21:20
[a68d8d1d14] part of check-in [9ed3852161] If compiled with SQLITE_INLINE_MEMCPY, all memcpy() calls are replaced with in-line code. With that change, cachegrind shows which memcpy() calls are taking the most time. This is a performance-measurement hack only and is not for production use. (check-in: [9ed3852161] user: drh branch: trunk, size: 21283)
2016-09-15
19:15
[5d6642d141] part of check-in [7b10461370] Omit the sqlite3Apis constant object when compiling with SQLITE_OMIT_LOAD_EXTENSION, since it is not used. (check-in: [7b10461370] user: drh branch: trunk, size: 21303)
2016-08-01
17:06
[dd7a2b7790] part of check-in [90d2c490fc] Fix other harmless compiler warnings. (check-in: [90d2c490fc] user: drh branch: trunk, size: 21487)
16:57
[ab2870487f] part of check-in [fd184e5a8f] Remove a duplicate typedef from loadext.c (remaining copy is in sqlite3ext.h). (check-in: [fd184e5a8f] user: dan branch: trunk, size: 21508)
14:35
[0ac0030646] part of check-in [b6ea2f21f6] Avoid making unnecessary changes to the signatures of the sqlite3_auto_extension() and sqlite3_cancel_auto_extension() interfaces. (check-in: [b6ea2f21f6] user: drh branch: trunk, size: 21850)
2016-07-28
22:46
[c3c2a37e4c] part of check-in [bf9c86c74f] The return type used by the auto-extension entry points is 'int', not 'void'. (check-in: [bf9c86c74f] user: mistachkin branch: callbackConv, size: 21936)
22:38
[74a66e96c9] part of check-in [87ba69b5ca] Make sure all the auto-extension mechanism function signatures match up precisely. (check-in: [87ba69b5ca] user: mistachkin branch: callbackConv, size: 21938)
22:23
[4e26039f8d] part of check-in [3ea567c4b0] Make the extension auto-loading mechanism work with the __stdcall calling convention. Also, fix a couple Tcl command calling conventions missed in the previous check-in. (check-in: [3ea567c4b0] user: mistachkin branch: callbackConv, size: 21962)
2016-07-25
00:05
[5dd8b5a67d] part of check-in [1c5baae3c5] Fix code so that the deprecated sqlite3_trace() and sqlite3_profile() interfaces are not called when SQLITE_OMIT_DEPRECATED is used. (check-in: [1c5baae3c5] user: drh branch: trunk, size: 21538)
2016-05-28
17:23
[4237fd37ca] part of check-in [d3f99a5e8d] Enhance the sqlite3_load_extension() interface to permit extensions to return SQLITE_OK_LOAD_PERMANENTLY which will prevent the extensions from unloading when the database connection closes. (check-in: [d3f99a5e8d] user: drh branch: load-permanently, size: 21497)
15:03
[f2316d5ccd] part of check-in [3a46104389] Enhance the sqlite3_load_extension() API so that the first parameter (the "db" parameter) can be NULL. An extension that is not associated with any database connection remains loaded for the life of the process. (check-in: [3a46104389] user: drh branch: persistent-extensions, size: 21555)
2016-04-21
01:30
[8b3a73f062] part of check-in [b2ae5bfa32] Revert sqlite3_enable_load_extension() to its original long-standing behavior. Add SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION which will enable only the C-API and leave the SQL function disabled. (check-in: [b2ae5bfa32] user: drh branch: load-ext-security, size: 21417)
2016-04-20
00:30
[3f74ec1020] part of check-in [edb454e45a] API Change: Modify sqlite3_enable_load_extension() so that it only enables/disables the load_extension() SQL function, and leaves the C-APIs enabled at all times. In this way, applications can enable extension loading for the C interface without having to expose that capability to the SQL. (check-in: [edb454e45a] user: drh branch: load-ext-security, size: 20846)
2016-03-17
16:01
[e70f8f9e97] part of check-in [6782c87b37] Experimental implementation of the sqlite3_system_errno() interface. (check-in: [6782c87b37] user: drh branch: sqlite_system_errno, size: 21333)
2016-02-13
23:43
[9e2a41adca] part of check-in [6a9c4a3ebf] Enhance ability to debug out-of-memory errors. (check-in: [6a9c4a3ebf] user: mistachkin branch: noMemBkpt, size: 21276)
2015-12-03
13:43
[84996d7d70] part of check-in [a78e865607] Make the sqlite3_status64(), sqlite3_strlike(), and sqlite3_db_cacheflush() APIs available to loadable extensions. (check-in: [a78e865607] user: drh branch: trunk, size: 21256)
2015-10-14
20:34
[18586e45a2] part of check-in [1c46c194a2] Fix harmless compiler warnings. (check-in: [1c46c194a2] user: mistachkin branch: trunk, size: 21159)
2015-10-12
04:56
[c5916a158f] part of check-in [6f2858f681] Change all references to 3.8.12 into 3.9.0. Comment changes only - no changes to code. (check-in: [6f2858f681] user: drh branch: trunk, size: 21151)
2015-10-10
14:41
[b3f1a52924] part of check-in [9ddef84d43] Compiler warning fixes: Rename some local variables from "j1" to avoid a name collision with the j1() bessel function in the math library. Omit a dummy initializer that gcc 4.6.3 does not like. (check-in: [9ddef84d43] user: drh branch: trunk, size: 21152)
2015-09-10
20:40
[f0b66d28e3] part of check-in [c6fca0be11] Make the sqlite3_value_subtype() and sqlite3_result_subtype() interfaces available to loadable extensions. (check-in: [c6fca0be11] user: drh branch: subtypes, size: 21160)
2015-07-24
17:36
[dfcee8c7c0] part of check-in [1997ee548b] Add the sqlite3_bind_zeroblob64() API. (check-in: [1997ee548b] user: dan branch: trunk, size: 21076)
17:14
[78ff69f010] part of check-in [f8991e6f72] Fix compiler warnings. Get the new sqlite3_result_zeroblob64() working on loadable extensions. (check-in: [f8991e6f72] user: drh branch: trunk, size: 21049)
2015-06-15
14:43
[e722f4b832] part of check-in [b0badb9902] Fix harmless compiler warnings. (check-in: [b0badb9902] user: drh branch: trunk, size: 21020)
2015-04-30
12:31
[29255bbe1c] part of check-in [93ce2bca70] Fix signed/unsigned comparison compiler warnings. Add the SQLITE_OMIT_RANDOMNESS compile-time option to cause the PRNG to be seeded identically on every run, for testing purposes. (check-in: [93ce2bca70] user: drh branch: trunk, size: 20903)
2015-04-29
16:50
[89176b67ce] part of check-in [48f553b05c] Use sqlite3_malloc64() in place of sqlite3_malloc() internally. (check-in: [48f553b05c] user: drh branch: trunk, size: 20898)
2014-12-09
19:07
[86bd4e2fcc] part of check-in [4f7549ff92] Make the sqlite3_table_column_metadata() interface available by default and without requiring the SQLITE_ENABLE_COLUMN_METADATA compile-time option. Other sqlite3_column_* interfaces that have a run-time penalty even if they are unused still require the SQLITE_ENABLE_COLUMN_METADATA option at compile-time. (check-in: [4f7549ff92] user: drh branch: trunk, size: 20890)
2014-09-09
20:30
[de741e66e5] part of check-in [6ab76c5fed] Change the name of the _texte64() interfaces to just _test64(), without the "e". (check-in: [6ab76c5fed] user: drh branch: 64-bit-lengths, size: 20932)
18:41
[0cb3e0394c] part of check-in [18d80cbc59] Add new interfaces to the loadable extension mechanism. (check-in: [18d80cbc59] user: drh branch: 64-bit-lengths, size: 20934)
2014-08-22
18:00
[31c2122b7d] part of check-in [cf561d1f0b] Split the sqlite3Error() routine into sqlite3Error() and sqlite3ErrorWithMsg(), for a slight size reduction and performance increase. (check-in: [cf561d1f0b] user: drh branch: trunk, size: 20610)
2014-08-15
22:37
[f03a8a2301] part of check-in [c8ade949d4] Aborted merge. (check-in: [c8ade949d4] user: numist branch: obsolete, size: 20595)
2014-05-19
15:16
[84de402d4d] part of check-in [17349a49d2] Changes to help ensure that a multiplication does not overflow when computing the number of bytes needed for a memory allocation, and cause a malfunction. No problems existing problems were discovered. However, these changes should help to ensure that no problems arise in the future. (check-in: [17349a49d2] user: drh branch: safer-malloc, size: 20608)
2013-07-15
17:02
[867c7b330b] part of check-in [cdce87eb88] Add the sqlite3_cancel_auto_extension(X) interface which will undo a prior call to sqlite3_auto_extension(X). (check-in: [cdce87eb88] user: drh branch: trunk, size: 20603)
2013-04-18
22:56
[c48f7f3f17] part of check-in [6cfa1d73d7] Experiments in making loadable extensions easier to program. The shared library filename tries various operating-system specific extensions if the bare library name does not work. And the entry point is derived from the filename is the legacy entry point name "sqlite3_extension_init" is not found. (check-in: [6cfa1d73d7] user: drh branch: loadext, size: 19787)
2013-03-01
23:40
[1422eba4aa] part of check-in [780d06c5e5] Complete the initialization of the loadable extension thunk table. Also fix other (harmless) compiler warnings. (check-in: [780d06c5e5] user: drh branch: trunk, size: 17836)
2011-12-13
04:08
[f20382fbae] part of check-in [ce55f250f5] When an sqlite3_auto_extension() function fails, report back its actual error code, not the generic SQLITE_ERROR. (check-in: [ce55f250f5] user: drh branch: nx-devkit, size: 17540)
2011-10-13
00:11
[d0d2022a5a] part of check-in [af8bcdd951] Be sure to allocate plenty of space for error messages coming out of sqlite3_load_extension(), so that filenames and procedure names are not truncated. Ticket [7d32c69b50f89d] (check-in: [af8bcdd951] user: drh branch: trunk, size: 17530)
2011-06-28
07:15
[99a161b27a] part of check-in [29e69f389c] Changes to allow FTS to be compiled as a loadable module again. (check-in: [29e69f389c] user: dan branch: trunk, size: 17473)
2011-04-06
17:54
[3ae0d52da0] part of check-in [2039ed952a] Changes to support building with various SQLITE_OMIT_XXX options defined. (check-in: [2039ed952a] user: dan branch: trunk, size: 17299)
2010-10-11
17:57
[8af9fcc757] part of check-in [f818fb6f73] Further changes to extension loading to support compile-time options. (check-in: [f818fb6f73] user: drh branch: trunk, size: 17179)
13:12
[a3e276c195] part of check-in [76c64a3556] Make APIs added since version 3.6.0 accessible to loadable extensions. (check-in: [76c64a3556] user: drh branch: trunk, size: 17011)
2010-07-24
16:34
[6d422ea91c] part of check-in [ac1f37a647] Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and all memory from sqlite3_malloc() is freed by sqlite3_free(). (check-in: [ac1f37a647] user: drh branch: malloc-enhancement, size: 16465)
2009-11-10
01:30
[1c7a61ce12] part of check-in [f6c045f649] Remove the obsolete "$Id:$" RCS identifier strings from the source code. (check-in: [f6c045f649] user: drh branch: trunk, size: 16639)
2009-06-03
01:24
[0e88a33566] part of check-in [baea79fd0c] Additional changes to reduce stack usage. The SQLITE_SMALL_STACK compile-time option is now available. (CVS 6708) (check-in: [baea79fd0c] user: drh branch: trunk, size: 16697)
2009-05-20
02:40
[a281f9890c] part of check-in [929cfbc66f] Updates to the extension loading logic to support full coverage testing. (CVS 6659) (check-in: [929cfbc66f] user: drh branch: trunk, size: 16555)
2009-01-20
16:53
[3f96631089] part of check-in [1041abd678] When not compiling for an EBCDIC system, use built-in alternatives to the tolowe r(), toupper() and other ctype.h library functions. Ticket #3597. (CVS 6196) (check-in: [1041abd678] user: danielk1977 branch: trunk, size: 16486)
2008-12-08
18:19
[2f53996c69] part of check-in [73c7302c5f] The amalgamation now compiles cleanly on GCC with options -pedantic-errors -Wno-long-long. (CVS 5991) (check-in: [73c7302c5f] user: drh branch: trunk, size: 16497)
2008-10-12
00:27
[3872457afd] part of check-in [ba3711acee] Added SQLITE_OMIT_DEPRECATED compile time option to leave out deprecated functions. Updated test scripts to skip tests of deprecated functions if they are compiled out. (CVS 5808) (check-in: [ba3711acee] user: shane branch: trunk, size: 16451)
2008-10-07
15:25
[cadd5df14b] part of check-in [02a12eb1cf] Remove the SQLITE_MUTEX_APPDEF compile-time option. The SQLITE_THREADSAFE=0 option always removes all mutex code. For application-defined mutexes only, use SQLITE_THREADSAFE=1 with SQLITE_MUTEX_NOOP=1. Ticket #3421. (CVS 5779) (check-in: [02a12eb1cf] user: drh branch: trunk, size: 16253)
2008-09-02
00:52
[6581a5bbc4] part of check-in [ef26ea5c46] Continuing work on adding full support for the SQLITE_OMIT_WSD compile-time option. (CVS 5658) (check-in: [ef26ea5c46] user: drh branch: trunk, size: 16265)
2008-08-02
03:50
[eb1fe4f44d] part of check-in [f1e44eb323] Additional coverage testing. Fix a segfault following OOM in sqltie3_load_extension(). (CVS 5523) (check-in: [f1e44eb323] user: drh branch: trunk, size: 15534)
2008-07-28
19:34
[9ab55455f5] part of check-in [e48f9697e9] Implement the "lookaside" memory allocation cache. Use of this cache makes the speed1.test script run about 15% faster. Added new interfaces to control the cache. (CVS 5488) (check-in: [e48f9697e9] user: drh branch: trunk, size: 15554)
2008-07-08
14:17
[ae0eed9fa9] part of check-in [94c95fad56] Fix a compilation bug with SQLITE_OMIT_AUTOINIT. (CVS 5366) (check-in: [94c95fad56] user: danielk1977 branch: trunk, size: 15549)
2008-06-19
15:06
[40024a0f47] part of check-in [12ba27d94e] Add recent API additions to the loadable extension interface. (CVS 5246) (check-in: [12ba27d94e] user: drh branch: trunk, size: 15523)
2008-06-18
17:09
[2ac671f42a] part of check-in [5059644c4b] Implement the 'CONFIG_SINGLETHREAD' and 'CONFIG_MULTITHREAD' configuration modes. (CVS 5234) (check-in: [5059644c4b] user: danielk1977 branch: trunk, size: 15395)
2008-06-13
18:24
[f99a75534a] part of check-in [a03c5af115] Progress toward implementation of sqlite3_config() and a rework of the mutex and memory allocation subsystems. This is an incremental check-in. (CVS 5218) (check-in: [a03c5af115] user: drh branch: trunk, size: 15393)
2008-05-15
19:43
[eac6c61810] part of check-in [cf1fb2d850] Add version tag comments to source files that lack them. Tickets #3118 and #3119. (CVS 5136) (check-in: [cf1fb2d850] user: drh branch: trunk, size: 15165)
2008-05-01
17:03
[48455156d6] part of check-in [227a6f67c2] Fix harmless compiler warnings. (CVS 5073) (check-in: [227a6f67c2] user: drh branch: trunk, size: 15107)
2008-04-10
16:01
[5c20a5afeb] part of check-in [30c5086068] Give file scope to the sqlite3Apis constant. Ticket #3024. (CVS 4980) (check-in: [30c5086068] user: drh branch: trunk, size: 15008)
2008-03-20
00:32
[f26b22f7c8] part of check-in [bee38c2dda] Fix the load-extension mechanism so that tests build with or without it. This check-in also includes prototypes for the new sqlite3_limit() interface, but no implementation. (CVS 4892) (check-in: [bee38c2dda] user: drh branch: trunk, size: 14994)
2008-03-19
23:52
[841cf403aa] part of check-in [7b9682c65f] Fix build whether compiling with or without auto-extension enabled (CVS 4891) (check-in: [7b9682c65f] user: mlcreech branch: trunk, size: 14936)
21:45
[4acd067b2e] part of check-in [54c55cae55] Add a new interface, sqlite3_context_db_handle(), that returns the database connection pointer for an application-defined function. (CVS 4889) (check-in: [54c55cae55] user: drh branch: trunk, size: 14858)
19:55
[cf7de78e1e] part of check-in [bf1cecede8] Update the loadable extension module to include recently added interfaces. (CVS 4886) (check-in: [bf1cecede8] user: drh branch: trunk, size: 14829)
16:08
[6f1105d8e1] part of check-in [e90c4cc8a8] Move SQL functions used for testing only out of func.c and into a new test file named test_func.c. Use sqlite3_auto_extension() to make sure the test functions appear in every database connection. (CVS 4883) (check-in: [e90c4cc8a8] user: drh branch: trunk, size: 14727)
14:15
[41bb393d74] part of check-in [15110ea027] Add a new api sqlite3_randomness() for providing access to SQLite's internal PRNG. Add sqlite3_test_control() verbs for controlling the PRNG. (CVS 4882) (check-in: [15110ea027] user: drh branch: trunk, size: 14535)
2008-03-04
17:45
[eceaebcff9] part of check-in [9c6694bb61] Various renames & cleanups to limit exported symbols on amalgamation build (CVS 4819) (check-in: [9c6694bb61] user: mlcreech branch: trunk, size: 14481)
2008-01-01
05:49
[d17a0f760d] part of check-in [6dea8c1638] Define SQLITE_CORE=1 at the start of the amalgamation file for the benefit of any extension source code (i.e. fts3) appended to it. Ticket #2858. (CVS 4649) (check-in: [6dea8c1638] user: danielk1977 branch: trunk, size: 14484)
2007-09-14
16:20
[124e566563] part of check-in [87e37eabf0] Minor fixes for the OMIT_INCRBLOB compilation option. (CVS 4430) (check-in: [87e37eabf0] user: danielk1977 branch: trunk, size: 14455)
2007-09-01
05:57
[6894dbbf16] part of check-in [3d74256c91] Call sqlite3OsDlError to obtain error information after DlOpen or DlSym fail. (CVS 4358) (check-in: [3d74256c91] user: danielk1977 branch: trunk, size: 14221)
2007-08-31
16:11
[d8a41422b7] part of check-in [d3ab3e3911] Initial implementation of the sqlite3_file_control() interface. Compiles and passes all historical tests but the new method is itself untested. (CVS 4353) (check-in: [d3ab3e3911] user: drh branch: trunk, size: 13905)
2007-08-30
20:09
[9e6bbbc095] part of check-in [a73a8b50f7] Fix the loadable extension module so that it will compile with SQLITE_THREADSAFE=0. (CVS 4349) (check-in: [a73a8b50f7] user: drh branch: trunk, size: 13881)
17:15
[d13c65529d] part of check-in [293a3f837b] Make mutex functions available to loadable extensions. Fix the amalgamation generator to include the latest source files. (CVS 4346) (check-in: [293a3f837b] user: drh branch: trunk, size: 13816)
16:23
[5f6ad0aa48] part of check-in [e9b2700b8c] Make the latest interfaces usable by loadable extensions. (CVS 4343) (check-in: [e9b2700b8c] user: drh branch: trunk, size: 13704)
2007-08-23
02:47
[8b31e2e0e9] part of check-in [21f6b31097] Improvements to memory leak detection. The --backtrace=NNN option is now recognized by tester.tcl. Memory leak summaries are automatically written to the file ./memleak.txt and each leak is tagged with the test in which it occurred. The quick.test script runs on Linux with no errors and no leaks. (CVS 4273) (check-in: [21f6b31097] user: drh branch: trunk, size: 13238)
2007-08-21
19:33
[dd803303fd] part of check-in [9287276191] The sqlite3_value object now carries an sqlite3* pointer to use for recording malloc failures. This eliminates the need to pass sqlite3* pointers into many internal interfaces. Also added more mutexing. (CVS 4263) (check-in: [9287276191] user: drh branch: trunk, size: 13209)
15:13
[780748f3f5] part of check-in [3787563e90] Readded the sqlite3_open_v2() interface. No test cases yet. Additional progress toward adding mutexes to all interfaces. (CVS 4261) (check-in: [3787563e90] user: drh branch: trunk, size: 12615)
13:51
[8563d7ef0d] part of check-in [6225cd461c] Remove the obsolete static mutexes. Use only the lastest static mutex code. (CVS 4259) (check-in: [6225cd461c] user: drh branch: trunk, size: 12474)
10:44
[245ef19db9] part of check-in [fbbd5bda54] Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255) (check-in: [fbbd5bda54] user: drh branch: trunk, size: 12453)
2007-08-17
15:53
[c0ccda3dbd] part of check-in [af3e3c7acd] Begin migration to using sqlite3_vfs interface. (CVS 4240) (check-in: [af3e3c7acd] user: danielk1977 branch: trunk, size: 12469)
2007-08-16
04:30
[aa1c6e584d] part of check-in [deb7ecd65f] Half-way through a major refactoring of the memory allocation. I have not even attempted to compile so I am certain there are countless errors. (CVS 4231) (check-in: [deb7ecd65f] user: drh branch: trunk, size: 12204)
2007-07-20
10:33
[6c24ee62ad] part of check-in [639993490e] Add new APIs to the end of the sqlite3_apis structure in loadext.c, in order to preserve backwards compatibility. Fix an incompatibility introduced by (4108). (CVS 4168) (check-in: [639993490e] user: drh branch: trunk, size: 12186)
2007-06-27
11:10
[16f5d54efe] part of check-in [850822e290] Fix for compiling with OMIT_VIRTUALTABLE defined. (CVS 4140) (check-in: [850822e290] user: danielk1977 branch: trunk, size: 12153)
2007-06-22
15:21
[b85b4e777c] part of check-in [68677e420c] Extend fts2 so that user defined tokenizers may be added. Add a tokenizer that uses the ICU library if available. Documentation and tests to come. (CVS 4108) (check-in: [68677e420c] user: danielk1977 branch: trunk, size: 12117)
2007-04-23
23:56
[afe4f4755d] part of check-in [25c1c7aaa8] Get the build working with -DSQLITE_OMIT_UTF16=1. Ticket #2314. (CVS 3865) (check-in: [25c1c7aaa8] user: drh branch: trunk, size: 12089)
2007-03-29
18:46
[146fb9b9dc] part of check-in [3111b43ec3] Add the sqlite3_clear_bindings() API to the loadable extension interface. Ticket #2135. (CVS 3752) (check-in: [3111b43ec3] user: drh branch: trunk, size: 11845)
2007-03-25
19:08
[c186ad5c9e] part of check-in [f02ba56d5c] Add the sqlite3_prepare_v2 and sqlite3_prepare16_v2 APIs to the loadable extension interface. (CVS 3713) (check-in: [f02ba56d5c] user: drh branch: trunk, size: 11819)
2007-01-26
13:08
[bbfdbf452c] part of check-in [e1fae43c89] Make sure the loadext.c module works even if all SQLITE_OMIT macros are defined. Tickets #2184 and #2069. (CVS 3604) (check-in: [e1fae43c89] user: drh branch: trunk, size: 11738)
2006-12-21
01:29
[d7f0903ba1] part of check-in [a1bcc6de57] Move the shared-library loading routines into the OS portability layer, thus enabling the os_win.c code to handle the character encoding confusion of win95/nt/ce. Ticket #2023. (CVS 3541) (check-in: [a1bcc6de57] user: drh branch: trunk, size: 11406)
2006-12-20
03:37
[acbbf33357] part of check-in [a81f3ddfd0] Patch to get extension loading working on wince. Ticket #2023. (CVS 3537) (check-in: [a81f3ddfd0] user: drh branch: trunk, size: 12731)
2006-09-22
23:38
[ab9b7fc502] part of check-in [791d70936b] Fix a build problem around sqlite3_overload_function. Only affects so/dll builds. (CVS 3435) (check-in: [791d70936b] user: shess branch: trunk, size: 12408)
2006-09-15
07:28
[5ffbf47d9e] part of check-in [ba579ddc43] Add support for extended result codes - additional result information carried in the higher bits of the integer return codes. This must be enabled using the sqlite3_extended_result_code() API. Only a few extra result codes are currently defined. (CVS 3422) (check-in: [ba579ddc43] user: drh branch: trunk, size: 12379)
2006-08-23
20:07
[7a41142266] part of check-in [a85fc877eb] Add the new experimental sqlite3_auto_extension() API. (CVS 3362) (check-in: [a85fc877eb] user: drh branch: trunk, size: 12354)
2006-06-27
15:16
[040853b36a] part of check-in [4692319ccf] The ability to load extensions is turned off by default. It must be enabled by calling sqlite3_enable_load_extension() before it will work. This prevents security problems in legacy applications. Ticket #1863. (CVS 3311) (check-in: [4692319ccf] user: drh branch: trunk, size: 10404)
00:14
[e4a39d0c84] part of check-in [1ca385bb39] Export the sqlite3_bind_value API to loadable extensions. (CVS 3299) (check-in: [1ca385bb39] user: drh branch: trunk, size: 9583)
2006-06-26
21:35
[66035906cd] part of check-in [85a66a25e9] Publish APIs sqlite3_malloc() and sqlite3_realloc() that use the OS-layer memory allocator. Convert sqlite3_free() and sqlite3_mprintf() to also use the OS-layer memory allocator. (CVS 3298) (check-in: [85a66a25e9] user: drh branch: trunk, size: 9561)
2006-06-20
11:01
[b08c5f5a57] part of check-in [c6ea353bd9] Modifications so that compilation and testing with the various OMIT macros defined works. (CVS 3276) (check-in: [c6ea353bd9] user: danielk1977 branch: trunk, size: 9524)
2006-06-17
13:21
[3a730b22df] part of check-in [059b1f6140] The default entry point for loadable extensions is now always sqlite3_extension_init(). (CVS 3268) (check-in: [059b1f6140] user: drh branch: trunk, size: 8448)
2006-06-15
15:38
[676257ae26] part of check-in [25c4750878] Add column_value, declare_vtab and create_module to the function table used by dynamic extensions. (CVS 3256) (check-in: [25c4750878] user: danielk1977 branch: trunk, size: 9699)
2006-06-14
10:38
[d8c7bd14e6] part of check-in [402a77c43d] Add some tests for sqlite3_load_extension(). (CVS 3239) (check-in: [402a77c43d] user: danielk1977 branch: trunk, size: 9626)
2006-06-13
15:12
[0215a9c83b] part of check-in [0bcec95963] Improved comments and documentation of sqlite3_load_extension(). (CVS 3229) (check-in: [0bcec95963] user: drh branch: trunk, size: 9550)
2006-06-12
12:46
[d0fadf55c5] part of check-in [89ead80129] Get builds working again when extension loading is not enabled. Ticket #1839. (CVS 3215) (check-in: [89ead80129] user: drh branch: trunk, size: 8347)
2006-06-08
15:48
[528a3c130c] part of check-in [327e6909c9] Unload shared libraries when a database connection closes. (CVS 3208) (check-in: [327e6909c9] user: drh branch: trunk, size: 8313)
15:28
Added: [71405a8f9f] part of check-in [4ca932d3ae] New shell command ".load" and the sqlite3_load_extension() API allow new SQL functions and collating sequences to be loaded at run-time from a DLL or shared library. (CVS 3207) (check-in: [4ca932d3ae] user: drh branch: trunk, size: 7700)