From 8c3bde05ce4da421bd409af806f66a7f0de53e48 Mon Sep 17 00:00:00 2001 From: drh Date: Fri, 19 May 2017 20:46:27 +0000 Subject: [PATCH 1/4] Branch for the 3.19 release. FossilOrigin-Name: f2b829ec52c2037eba4feb9427c56d84aca736cb5fc841dfe91cfff22cf660c1 --- manifest | 13 ++++++++----- manifest.uuid | 2 +- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/manifest b/manifest index c4c9173c64..d17b17216d 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\ssome\sproblems\sin\sfts5\scode\sdetected\sby\s-fsanitize=undefined. -D 2017-05-19T12:32:32.722 +C Branch\sfor\sthe\s3.19\srelease. +D 2017-05-19T20:46:27.662 F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 8eeb80162074004e906b53d7340a12a14c471a83743aab975947e95ce061efcc @@ -1580,7 +1580,10 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 7940bff32aa6ea868a53680822d148b7ec7a075c01ae9e0d5ad9859bcc339054 +P 35f721045dfe3f82e016938ab1a668bfc37b6b57b8813cc963ef640ec82de58d R 43b2f6640d15533e1a63dfe250cd3268 -U dan -Z f9fce9521e2a47d8f39c7a8284ffa988 +T *branch * branch-3.19 +T *sym-branch-3.19 * +T -sym-trunk * +U drh +Z a733288d67c031dc7d9d7d304f469f22 diff --git a/manifest.uuid b/manifest.uuid index cee88ede1d..dc4e892a2d 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -35f721045dfe3f82e016938ab1a668bfc37b6b57b8813cc963ef640ec82de58d \ No newline at end of file +f2b829ec52c2037eba4feb9427c56d84aca736cb5fc841dfe91cfff22cf660c1 \ No newline at end of file From d8025e43ae7ea99f844e595377a1dd4c3b1618a4 Mon Sep 17 00:00:00 2001 From: drh Date: Fri, 19 May 2017 23:04:04 +0000 Subject: [PATCH 2/4] Prevent a possible NULL pointer dereference in the OP_Found opcode that can follow an OOM error. Problem found by OSS-Fuzz. FossilOrigin-Name: 50ad60ded54aa22dfdf519ed5da6451de790e22a972ff299f7976fbdce7a0579 --- manifest | 16 +++++++--------- manifest.uuid | 2 +- src/vdbe.c | 6 ++++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/manifest b/manifest index d17b17216d..7b0500a7ac 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Branch\sfor\sthe\s3.19\srelease. -D 2017-05-19T20:46:27.662 +C Prevent\sa\spossible\sNULL\spointer\sdereference\sin\sthe\sOP_Found\sopcode\sthat\ncan\sfollow\san\sOOM\serror.\s\sProblem\sfound\sby\sOSS-Fuzz. +D 2017-05-19T23:04:04.031 F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 8eeb80162074004e906b53d7340a12a14c471a83743aab975947e95ce061efcc @@ -470,7 +470,7 @@ F src/update.c c443935c652af9365e033f756550b5032d02e1b06eb2cb890ed7511ae0c051dc F src/utf.c 699001c79f28e48e9bcdf8a463da029ea660540c F src/util.c fc081ec6f63448dcd80d3dfad35baecfa104823254a815b081a4d9fe76e1db23 F src/vacuum.c 1fe4555cd8c9b263afb85b5b4ee3a4a4181ad569 -F src/vdbe.c 9bac2bc2313ed682e6f48ccff6644d3263341885bfcbb3cdea7b720c722be2d5 +F src/vdbe.c b24b9806db72ad02ca82263b4705150fe9a547508948ee9906b7e120d3710211 F src/vdbe.h f7d1456e28875c2dcb964056589b5b7149ab7edf39edeca801596a39bb3d3848 F src/vdbeInt.h 1ecdacc1322fdd3241ec30c32a480e328a6f864e532dc53fae8e0ab68121aebf F src/vdbeapi.c dc904b3c5e459727993c2421e653e29d63223846d129fae98adc782b0a996481 @@ -1580,10 +1580,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 35f721045dfe3f82e016938ab1a668bfc37b6b57b8813cc963ef640ec82de58d -R 43b2f6640d15533e1a63dfe250cd3268 -T *branch * branch-3.19 -T *sym-branch-3.19 * -T -sym-trunk * +P f2b829ec52c2037eba4feb9427c56d84aca736cb5fc841dfe91cfff22cf660c1 +Q +c2de178fe7e2e4e0d764e7e6ac637cfc8c053580c43f7246318dafad2974de3c +R fa3de8848fde01ec07b6ff80f323523f U drh -Z a733288d67c031dc7d9d7d304f469f22 +Z 8ada4e4e3a5f42b8890ba86493cb429e diff --git a/manifest.uuid b/manifest.uuid index dc4e892a2d..bf1abc06e9 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -f2b829ec52c2037eba4feb9427c56d84aca736cb5fc841dfe91cfff22cf660c1 \ No newline at end of file +50ad60ded54aa22dfdf519ed5da6451de790e22a972ff299f7976fbdce7a0579 \ No newline at end of file diff --git a/src/vdbe.c b/src/vdbe.c index e6c964245f..495cec2191 100644 --- a/src/vdbe.c +++ b/src/vdbe.c @@ -4106,10 +4106,12 @@ case OP_Found: { /* jump, in3 */ pIdxKey = &r; pFree = 0; }else{ + assert( pIn3->flags & MEM_Blob ); + rc = ExpandBlob(pIn3); + assert( rc==SQLITE_OK || rc==SQLITE_NOMEM ); + if( rc ) goto no_mem; pFree = pIdxKey = sqlite3VdbeAllocUnpackedRecord(pC->pKeyInfo); if( pIdxKey==0 ) goto no_mem; - assert( pIn3->flags & MEM_Blob ); - (void)ExpandBlob(pIn3); sqlite3VdbeRecordUnpack(pC->pKeyInfo, pIn3->n, pIn3->z, pIdxKey); } pIdxKey->default_rc = 0; From 44ec1d6edaac87ed3470980c884ba609c1f2d2dd Mon Sep 17 00:00:00 2001 From: drh Date: Mon, 22 May 2017 13:06:45 +0000 Subject: [PATCH 3/4] Include the "msvc.h" header file in the amalgamation tarball. FossilOrigin-Name: 3dd6fe53c7ae6ebe2393e956d040e00b8cd0589674d20aafe1585aaa61325bbe --- autoconf/Makefile.am | 2 +- manifest | 15 +++++++-------- manifest.uuid | 2 +- tool/mkautoconfamal.sh | 1 + 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/autoconf/Makefile.am b/autoconf/Makefile.am index e8211596d9..a1d8f59efd 100644 --- a/autoconf/Makefile.am +++ b/autoconf/Makefile.am @@ -12,7 +12,7 @@ sqlite3_LDADD = @EXTRA_SHELL_OBJ@ @READLINE_LIBS@ sqlite3_DEPENDENCIES = @EXTRA_SHELL_OBJ@ sqlite3_CFLAGS = $(AM_CFLAGS) -DSQLITE_ENABLE_EXPLAIN_COMMENTS -include_HEADERS = sqlite3.h sqlite3ext.h +include_HEADERS = sqlite3.h sqlite3ext.h msvc.h EXTRA_DIST = sqlite3.1 tea Makefile.msc sqlite3.rc README.txt Replace.cs pkgconfigdir = ${libdir}/pkgconfig diff --git a/manifest b/manifest index 7b0500a7ac..c8d1cd13f7 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Prevent\sa\spossible\sNULL\spointer\sdereference\sin\sthe\sOP_Found\sopcode\sthat\ncan\sfollow\san\sOOM\serror.\s\sProblem\sfound\sby\sOSS-Fuzz. -D 2017-05-19T23:04:04.031 +C Include\sthe\s"msvc.h"\sheader\sfile\sin\sthe\samalgamation\starball. +D 2017-05-22T13:06:45.288 F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 8eeb80162074004e906b53d7340a12a14c471a83743aab975947e95ce061efcc @@ -10,7 +10,7 @@ F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2 F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90 F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2 F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903 -F autoconf/Makefile.am 1a47d071e3d5435f8f7ebff7eb6703848bbd65d4 +F autoconf/Makefile.am ed95854f5df64c1d0a447d8ecb55edc67e3c32f79f597c3a4870f9ac51698275 F autoconf/Makefile.msc 1014be616b420a5f48611d21b62ca2f50ec97ee795087ecb8a4d6bf6375ba11d F autoconf/README.first 6c4f34fe115ff55d4e8dbfa3cecf04a0188292f7 F autoconf/README.txt 4f04b0819303aabaa35fff5f7b257fb0c1ef95f1 @@ -1512,7 +1512,7 @@ F tool/libvers.c caafc3b689638a1d88d44bc5f526c2278760d9b9 F tool/loadfts.c c3c64e4d5e90e8ba41159232c2189dba4be7b862 F tool/logest.c 11346aa019e2e77a00902aa7d0cabd27bd2e8cca F tool/max-limits.c cbb635fbb37ae4d05f240bfb5b5270bb63c54439 -F tool/mkautoconfamal.sh e855df211ecbcc7131dee817110ff386cfb112f7 +F tool/mkautoconfamal.sh ab527af92dc684028e0d1db3fa6241787fae78987b99e5bbac7eb87e1970b8e5 F tool/mkkeywordhash.c f7f3b342211ac6a14258b9726d5b97cf4f548f22 F tool/mkmsvcmin.tcl cbd93f1cfa3a0a9ae56fc958510aa3fc3ac65e29cb111716199e3d0e66eefaa4 F tool/mkopcodec.tcl d1b6362bd3aa80d5520d4d6f3765badf01f6c43c @@ -1580,8 +1580,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P f2b829ec52c2037eba4feb9427c56d84aca736cb5fc841dfe91cfff22cf660c1 -Q +c2de178fe7e2e4e0d764e7e6ac637cfc8c053580c43f7246318dafad2974de3c -R fa3de8848fde01ec07b6ff80f323523f +P 50ad60ded54aa22dfdf519ed5da6451de790e22a972ff299f7976fbdce7a0579 +R 70185df2307fdc4359181caa65daa887 U drh -Z 8ada4e4e3a5f42b8890ba86493cb429e +Z 0303a77637cd34b7c34820a37ec20c26 diff --git a/manifest.uuid b/manifest.uuid index bf1abc06e9..7429bc11a2 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -50ad60ded54aa22dfdf519ed5da6451de790e22a972ff299f7976fbdce7a0579 \ No newline at end of file +3dd6fe53c7ae6ebe2393e956d040e00b8cd0589674d20aafe1585aaa61325bbe \ No newline at end of file diff --git a/tool/mkautoconfamal.sh b/tool/mkautoconfamal.sh index 4864ee85c3..4a1730b626 100644 --- a/tool/mkautoconfamal.sh +++ b/tool/mkautoconfamal.sh @@ -51,6 +51,7 @@ cp sqlite3.h $TMPSPACE cp sqlite3ext.h $TMPSPACE cp $TOP/sqlite3.1 $TMPSPACE cp $TOP/sqlite3.pc.in $TMPSPACE +cp $TOP/src/msvc.h $TMPSPACE cp $TOP/src/shell.c $TMPSPACE cp $TOP/src/sqlite3.rc $TMPSPACE cp $TOP/tool/Replace.cs $TMPSPACE From 2435fa69161be6b253cb08541cb6452b232ba9dd Mon Sep 17 00:00:00 2001 From: drh Date: Mon, 22 May 2017 13:58:13 +0000 Subject: [PATCH 4/4] Version 3.19.0 FossilOrigin-Name: 28a94eb282822cad1d1420f2dad6bf65e4b8b9062eda4a0b9ee8270b2c608e40 --- manifest | 11 +++++++---- manifest.uuid | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/manifest b/manifest index c8d1cd13f7..6b3f641961 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Include\sthe\s"msvc.h"\sheader\sfile\sin\sthe\samalgamation\starball. -D 2017-05-22T13:06:45.288 +C Version\s3.19.0 +D 2017-05-22T13:58:13.592 F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 8eeb80162074004e906b53d7340a12a14c471a83743aab975947e95ce061efcc @@ -1580,7 +1580,10 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 50ad60ded54aa22dfdf519ed5da6451de790e22a972ff299f7976fbdce7a0579 +P 3dd6fe53c7ae6ebe2393e956d040e00b8cd0589674d20aafe1585aaa61325bbe R 70185df2307fdc4359181caa65daa887 +T +bgcolor * #d0c0ff +T +sym-release * +T +sym-version-3.19.0 * U drh -Z 0303a77637cd34b7c34820a37ec20c26 +Z b6ab1af5186519250316abf46ab3c207 diff --git a/manifest.uuid b/manifest.uuid index 7429bc11a2..a38c601c9b 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -3dd6fe53c7ae6ebe2393e956d040e00b8cd0589674d20aafe1585aaa61325bbe \ No newline at end of file +28a94eb282822cad1d1420f2dad6bf65e4b8b9062eda4a0b9ee8270b2c608e40 \ No newline at end of file