Browse Source

Update sqlite3

mingodad 6 years ago
parent
commit
a9dcf91198
2 changed files with 347 additions and 186 deletions
  1. 334 181
      SquiLu-ext/sqlite3.c
  2. 13 5
      SquiLu-ext/sqlite3.h

File diff suppressed because it is too large
+ 334 - 181
SquiLu-ext/sqlite3.c


+ 13 - 5
SquiLu-ext/sqlite3.h

@@ -123,9 +123,9 @@ extern "C" {
 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
 ** [sqlite_version()] and [sqlite_source_id()].
 */
-#define SQLITE_VERSION        "3.30.0"
-#define SQLITE_VERSION_NUMBER 3030000
-#define SQLITE_SOURCE_ID      "2019-09-14 00:21:34 f464d847af490dd3ec45565dcc4c2e6ff4ed1ebb65036f30ca0b3ce2e730alt1"
+#define SQLITE_VERSION        "3.31.0"
+#define SQLITE_VERSION_NUMBER 3031000
+#define SQLITE_SOURCE_ID      "2019-10-28 04:20:28 a1e1ba9145049491c593ac70d9e05149662d34770129c270d702f284cd19alt1"
 
 /*
 ** CAPI3REF: Run-Time Library Version Numbers
@@ -4881,9 +4881,12 @@ SQLITE_API int sqlite3_reset(sqlite3_stmt *pStmt);
 ** function that is not deterministic.  The SQLite query planner is able to
 ** perform additional optimizations on deterministic functions, so use
 ** of the [SQLITE_DETERMINISTIC] flag is recommended where possible.
+**
 ** ^The fourth parameter may also optionally include the [SQLITE_DIRECTONLY]
 ** flag, which if present prevents the function from being invoked from
-** within VIEWs or TRIGGERs.
+** within VIEWs or TRIGGERs.  For security reasons, the [SQLITE_DIRECTONLY]
+** flag is recommended for any application-defined SQL function that has
+** side-effects.
 **
 ** ^(The fifth parameter is an arbitrary pointer.  The implementation of the
 ** function can gain access to this pointer using [sqlite3_user_data()].)^
@@ -5007,7 +5010,12 @@ SQLITE_API int sqlite3_create_window_function(
 ** deterministic, for example, but randomblob() is not.
 **
 ** The SQLITE_DIRECTONLY flag means that the function may only be invoked
-** from top-level SQL, and cannot be used in VIEWs or TRIGGERs.
+** from top-level SQL, and cannot be used in VIEWs or TRIGGERs.  This is
+** a security feature which is recommended for all 
+** [application-defined SQL functions] that have side-effects.  This flag 
+** prevents an attacker from adding triggers and views to a schema then 
+** tricking a high-privilege application into causing unintended side-effects
+** while performing ordinary queries.
 **
 ** The SQLITE_SUBTYPE flag indicates to SQLite that a function may call
 ** [sqlite3_value_subtype()] to inspect the sub-types of its arguments.

Some files were not shown because too many files changed in this diff