]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Limit compile time value SQLITE_MAX_SQL_LENGTH to 1024 less than 2^31, or 2147482624...
authordan <Dan Kennedy>
Thu, 4 Dec 2025 16:44:11 +0000 (16:44 +0000)
committerdan <Dan Kennedy>
Thu, 4 Dec 2025 16:44:11 +0000 (16:44 +0000)
FossilOrigin-Name: d73364555d213e443d8400ed69b134006f4e2fe0054d74fe0828ff01effe5cd2

manifest
manifest.uuid
src/main.c
src/sqliteLimit.h

index 83fad04937cad0b062703b0ced4fcf8614c54932..e0c233ddc1d7bae42209110abb9066999d7c49a2 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Enable\sTEMP\striggers\sto\sreference\stables\sin\sthe\smain\sschema.
-D 2025-12-04T13:42:53.023
+C Limit\scompile\stime\svalue\sSQLITE_MAX_SQL_LENGTH\sto\s1024\sless\sthan\s2^31,\sor\s2147482624.\sThis\sis\sto\savoid\shaving\sto\sdeal\swith\sedge\scases\srelated\sto\s32-bit\sinteger\soverflow\sthat\scan\sonly\soccur\sin\scustom\sbuilds.
+D 2025-12-04T16:44:11.298
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -700,7 +700,7 @@ F src/insert.c dfd311b0ac2d4f6359e62013db67799757f4d2cc56cca5c10f4888acfbbfa3fd
 F src/json.c fb031340edee159c07ad37dbe668ffe945ed86f525b0eb3822e4a67cbc498a72
 F src/legacy.c d7874bc885906868cd51e6c2156698f2754f02d9eee1bae2d687323c3ca8e5aa
 F src/loadext.c 4747f72084dc80520a2d23e5bb0bc0760672208a81a2b115ce0b657acd65edf4
-F src/main.c c99e86fd7dc6c8c2c0f67395562e3300bca2780b845db9bdc2bdac6acf13c6aa
+F src/main.c 8ee5d36123330e7a6a8ef3acd6c05cdc254d6d4ef6ca2e472c702ac1ee9a5617
 F src/malloc.c 410e570b30c26cc36e3372577df50f7a96ee3eed5b2b161c6b6b48773c650c5e
 F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645
 F src/mem1.c 3bb59158c38e05f6270e761a9f435bf19827a264c13d1631c58b84bdc96d73b2
@@ -742,7 +742,7 @@ F src/sqlite.h.in 706cacea5308b0244fb6cec92e08310fb427a125375c64137cc1f878ae4cf5
 F src/sqlite3.rc 015537e6ac1eec6c7050e17b616c2ffe6f70fca241835a84a4f0d5937383c479
 F src/sqlite3ext.h 5d5330f5f8461f5ce74960436ddcfa53ecd09c2b8b23901e22ae38aec3243998
 F src/sqliteInt.h af67bc95fa6b66cd3c7f3d18d2d040ad386e4cbb02965ee318cc721ee9d5fa45
-F src/sqliteLimit.h 0a5516b4ec192a205c541e05f67009028a9451dc6678aae4cf8e68596903c246
+F src/sqliteLimit.h 7e705474d59912388832cc5465edbc0dbb552872e23452812846e90d280987f3
 F src/status.c 7565d63a79aa2f326339a24a0461a60096d0bd2bce711fefb50b5c89335f3592
 F src/table.c 0f141b58a16de7e2fbe81c308379e7279f4c6b50eb08efeec5892794a0ba30d1
 F src/tclsqlite.c 4b6f6b142b951a8a127e0cbd2e37284fc71f8e6a391ec8c6188fb831b51ec0b8
@@ -2184,9 +2184,8 @@ F tool/version-info.c 33d0390ef484b3b1cb685d59362be891ea162123cea181cb8e6d2cf6dd
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh d924598cf2f55a4ecbc2aeb055c10bd5f48114793e7ba25f9585435da29e7e98
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P aef5397569d65d2971367b0278fe3a6f42544cf771572e7d046e2472f052364d 4f79434f5b52470291dcd09e31fdefba708d0243a2b60966536c6cb91451d203
-R 1b1d291f620f9976802e4c1eb32b7e7e
-T +closed 4f79434f5b52470291dcd09e31fdefba708d0243a2b60966536c6cb91451d203
-U drh
-Z 88a8c793081990ff4d18bca6e2e33f30
+P 307a500aa6a1f3ac8b154d2e981bb30c90236be26a8c9a8f318d5982c62440dd
+R 1901d2d7906ab24deca78086256a7fb1
+U dan
+Z 8a6f9d64c3e534e1ce9c8fde1cff2900
 # Remove this line to create a well-formed Fossil manifest.
index e0003593920a738adbe4c3d6b3572ea5ae9f0ec0..1f6d3e51cc42e362b27b0aabf1f794d0cece0d3c 100644 (file)
@@ -1 +1 @@
-307a500aa6a1f3ac8b154d2e981bb30c90236be26a8c9a8f318d5982c62440dd
+d73364555d213e443d8400ed69b134006f4e2fe0054d74fe0828ff01effe5cd2
index 4e2bee499f4af04dda07a3767d3ead3f6ec82ff4..6e9d7d599d0c00ff73e8046c6b5a591d66403490 100644 (file)
@@ -2945,6 +2945,9 @@ static const int aHardLimit[] = {
 #if SQLITE_MAX_SQL_LENGTH>SQLITE_MAX_LENGTH
 # error SQLITE_MAX_SQL_LENGTH must not be greater than SQLITE_MAX_LENGTH
 #endif
+#if SQLITE_MAX_SQL_LENGTH>2147482624     /* 1024 less than 2^31 */
+# error SQLITE_MAX_SQL_LENGTH must not be greater than 2147482624
+#endif
 #if SQLITE_MAX_COMPOUND_SELECT<2
 # error SQLITE_MAX_COMPOUND_SELECT must be at least 2
 #endif
index d2689a2720519124492018955871ee4a7536e9ca..ea49d6ba0515cf62233f5e0893090b85c8fba081 100644 (file)
@@ -60,6 +60,9 @@
 ** It used to be the case that setting this value to zero would
 ** turn the limit off.  That is no longer true.  It is not possible
 ** to turn this limit off.
+**
+** The hard limit is the largest possible 32-bit signed integer less
+** 1024, or 2147482624.
 */
 #ifndef SQLITE_MAX_SQL_LENGTH
 # define SQLITE_MAX_SQL_LENGTH 1000000000