From: drh Date: Thu, 11 Sep 2014 18:44:04 +0000 (+0000) Subject: Add new APIs that take 64-bit length parameters: sqlite3_malloc64(), X-Git-Tag: version-3.8.7~119 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=46c831bf2a9195891dfb213e6c40ca3f22b09688;p=thirdparty%2Fsqlite.git Add new APIs that take 64-bit length parameters: sqlite3_malloc64(), sqlite3_realloc64(), sqlite3_bind_blob64(), sqlite3_bind_text64(), sqlite3_result_blob64(), and sqlite3_result_text64(). Add the sqlite3_msize() interface. Internal memory allocation routines now use 64-bit unsigned length parameters for safety. Fix the sqlite3_get_table() to use sqlite3_realloc64() to avoid a integer overflow problem. FossilOrigin-Name: 7e4978c003867d1b532b69221013dda75ca61953 --- 46c831bf2a9195891dfb213e6c40ca3f22b09688 diff --cc manifest index e96df967f0,637b73b365..24f2ea483a --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Add\sthe\sSQLITE_USER_AUTHENTICATION\sextension\sto\sthe\strunk.\s\sThis\sextension\nis\sdisabled\sby\sdefault.\s\sSpecial\scompilation\sprocedures\sare\sneed\sto\senable\nit. - D 2014-09-11T17:27:54.337 -C Change\sthe\sname\sof\sthe\s_texte64()\sinterfaces\sto\sjust\s_test64(),\swithout\sthe\s"e". -D 2014-09-09T20:30:24.037 ++C Add\snew\sAPIs\sthat\stake\s64-bit\slength\sparameters:\ssqlite3_malloc64(),\nsqlite3_realloc64(),\ssqlite3_bind_blob64(),\ssqlite3_bind_text64(),\nsqlite3_result_blob64(),\sand\ssqlite3_result_text64().\nAdd\sthe\ssqlite3_msize()\sinterface.\nInternal\smemory\sallocation\sroutines\snow\suse\s64-bit\sunsigned\nlength\sparameters\sfor\ssafety.\nFix\sthe\ssqlite3_get_table()\sto\suse\ssqlite3_realloc64()\sto\savoid\na\sinteger\soverflow\sproblem. ++D 2014-09-11T18:44:04.913 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in cf57f673d77606ab0f2d9627ca52a9ba1464146a F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@@ -171,30 -168,30 +171,30 @@@ F src/auth.c d8abcde53426275dab6243b441 F src/backup.c a31809c65623cc41849b94d368917f8bb66e6a7e F src/bitvec.c 19a4ba637bd85f8f63fc8c9bae5ade9fb05ec1cb F src/btmutex.c 49ca66250c7dfa844a4d4cb8272b87420d27d3a5 - F src/btree.c b1c1cd1cc3ae2e433a23b9a6c9ab53805707d8cd + F src/btree.c e4916b441bb036897cc69df275a2df3fea4d53b6 F src/btree.h a79aa6a71e7f1055f01052b7f821bd1c2dce95c8 F src/btreeInt.h e0ecb5dba292722039a7540beb3fc448103273cc -F src/build.c 8cb237719c185eec7bd8449b2e747491ded11932 +F src/build.c 047d7e1d2d89fa55134fa1d6b669c9c2983c0d11 F src/callback.c 7b44ce59674338ad48b0e84e7b72f935ea4f68b0 F src/complete.c 535183afb3c75628b78ce82612931ac7cdf26f14 -F src/ctime.c 0231df905e2c4abba4483ee18ffc05adc321df2a +F src/ctime.c 16cd19215d9fd849ee2b7509b092f2e0bbd6a958 F src/date.c 57a7f9ba9f6b4d5268f5e411739066a611f99036 F src/delete.c fae81cc2eb14b75267d4f47d3cfc9ae02aae726f F src/expr.c 441a7e24e2f7bea9475778fa8acce9e8a69ca8f0 F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb F src/fkey.c da985ae673efef2c712caef825a5d2edb087ead7 - F src/func.c 1b7ac915eb83255eba90906cc2e317b1f29ae5c9 -F src/func.c 63a0da710cdef3dd195bde045e55af34d775b851 ++F src/func.c d4d218704b13bc1814b7d76874e405743c903773 F src/global.c 5110fa12e09729b84eee0191c984ec4008e21937 F src/hash.c 4263fbc955f26c2e8cdc0cf214bc42435aa4e4f5 F src/hash.h c8f3c31722cf3277d03713909761e152a5b81094 F src/hwtime.h d32741c8f4df852c7d959236615444e2b1063b08 F src/insert.c 0b073fade178d9dbd990bbb32b4438e50b884a06 F src/journal.c b4124532212b6952f42eb2c12fa3c25701d8ba8d -F src/legacy.c 87c92f4a08e2f70220e3b22a9c3b2482d36a134a +F src/legacy.c ba1863ea58c4c840335a84ec276fc2b25e22bc4e F src/lempar.c cdf0a000315332fc9b50b62f3b5e22e080a0952b - F src/loadext.c 31c2122b7dd05a179049bbf163fd4839f181cbab + F src/loadext.c de741e66e5ddc1598d904d7289239696e40ed994 -F src/main.c e48517e3da289d93ad86e8b7b4f68078df5e6e51 +F src/main.c d15621461fb0c52675eba2b650492ed1beef69ab - F src/malloc.c 954de5f998c23237e04474a3f2159bf483bba65a + F src/malloc.c cc015821ba267ad5c91dc8761d0498a3fc3ce6ce F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645 F src/mem1.c faf615aafd8be74a71494dfa027c113ea5c6615f F src/mem2.c dce31758da87ec2cfa52ba4c5df1aed6e07d8e8f @@@ -227,16 -224,16 +227,16 @@@ F src/random.c d10c1f85b6709ca97278428f F src/resolve.c 0d1621e45fffe4b4396477cf46e41a84b0145ffb F src/rowset.c eccf6af6d620aaa4579bd3b72c1b6395d9e9fa1e F src/select.c b4457526cee73c0b69fad42f799f619b1d5a8a8a -F src/shell.c 713cef4d73c05fc8e12f4960072329d767a05d50 -F src/sqlite.h.in cabd2e9e3a8acb15c5a0f23317e423a17d111e7d +F src/shell.c c00220cdd7f2027780bc25b78376c16dc24e4b7d - F src/sqlite.h.in 577876beef2264a0b031c0d744c81855983088f9 ++F src/sqlite.h.in 8b018219ce988913e5977d5de9ab4beb33be23b6 F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad - F src/sqlite3ext.h 1f40357fb9b12a80c5a3b2b109fd249b009213d4 - F src/sqliteInt.h c208bf79ce30b516e1524835e7cb278e49a56709 + F src/sqlite3ext.h 17d487c3c91b0b8c584a32fbeb393f6f795eea7d -F src/sqliteInt.h 0a9083f9d277bf8ca7e9327c01e01bd01f01a585 ++F src/sqliteInt.h 0f6bd5c2bc864b1261898a73673bed1030cfbfe2 F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d F src/status.c 7ac05a5c7017d0b9f0b4bcd701228b784f987158 - F src/table.c 4e28a53e66bad8d014a510ef0205f5497c712b08 + F src/table.c 218ae2ba022881846741dfc8351aefdf129e0377 -F src/tclsqlite.c 8d6d6833c0053f0b3b1aeb1c5c7a7eeff0ad4d3f -F src/test1.c 22bfe1ce9f2f3746d682093a475ec0a33e0e55d8 +F src/tclsqlite.c c67d310c833046cccc192125d64ad422ab882684 +F src/test1.c 523cd70ded28db71af9a30ec184cbe0957de9575 F src/test2.c 98049e51a17dc62606a99a9eb95ee477f9996712 F src/test3.c 1c0e5d6f080b8e33c1ce8b3078e7013fdbcd560c F src/test4.c 9b32d22f5f150abe23c1830e2057c4037c45b3df @@@ -1197,8 -1193,7 +1197,8 @@@ F tool/vdbe_profile.tcl 67746953071a9f8 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f - P ad7063aa1a0db32cdbe71815545b2edca57d3bcc b149ef5c639e6bcff7bd1c7866353e7f7f468070 - R 6795c3f7d8a461e29887bf50932299a0 - T +closed b149ef5c639e6bcff7bd1c7866353e7f7f468070 -P 18d80cbc590165913d82056aa69ddaeea07b76ec -R 3de8eb96dbf21697cafd6a57c5ce9a51 ++P 65884d4f81a4705b0356b6cb8ec4909945ff5c19 6ab76c5fedfe568b0f0f34a600f9135bf6558148 ++R a34346a4fba04f6707f06567bf21377a ++T +closed 6ab76c5fedfe568b0f0f34a600f9135bf6558148 U drh - Z 65dfbe9c0e630b41b378079f3a3abad0 -Z 5ae42b376f3f0dc69341930379e42b64 ++Z ecfd648f0ae419a16a536c86444de6f4 diff --cc manifest.uuid index 06a6011b35,3cbc755153..0feb233a2e --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 65884d4f81a4705b0356b6cb8ec4909945ff5c19 -6ab76c5fedfe568b0f0f34a600f9135bf6558148 ++7e4978c003867d1b532b69221013dda75ca61953