summaryrefslogtreecommitdiff
path: root/dist
AgeCommit message (Collapse)Author
2021-08-08Merge tag 'android-11.0.0_r40' into lineage-18.1HEADlineage-18.1alk3pInjection
Android 11.0.0 Release 40 (RQ3A.210805.001.A1) Change-Id: I669442cfe31142509964a3be72168fe77e44d951
2021-06-16DO NOT MERGE Fix floating point to text conversion overflowZim
Any precision >=2147483647 will cause a buffer overflow. For instance, executing the following statement will segfault select (printf('%.2147483647G',0.01)); Later sqlite versions fixed this by hard-coding a hard-limit of 100k million on the precision of floating point to text conversions https://sqlite.org/src/info/d08d3405878d394e We fix this on earlier versions by setting the compile time flag to the same 100k million Bug: 153352319 Test: builds Change-Id: Ied86cf81f0064da9d3d963ecf943894bc1ae1a93 (cherry picked from commit 4810d35fd17c3ab2f1fcbe9a0c73a8c587623d89)
2021-03-24sqlite: Upgrade to SQLite 3.32.2Lalit Maganti
This change is a cherry-pick of aosp/1337179 which is being merged here because of merge conflicts due to changes [1] and [2] which were made in internal master and rvc-dev but not in AOSP. Downloaded from https://www.sqlite.org/2020/sqlite-autoconf-3320200.tar.gz $ sha1sum sqlite-autoconf-3320200.tar.gz 429e3f2d0b16a95ad1025a97b2a328d0b4037575 sqlite-autoconf-3320200.tar.gz dist/orig contains the stock sqlite3 code, as packaged in the tar.gz file above. dist contains a copy of dist/orig, but with the Android.patch file applied. More details about the release are available here: https://www.sqlite.org/releaselog/3_32_2.html [1] ag/0f62c1a0e8b463b5b27035e11478e66d7daec69a [2] ag/88147c430cc041a27d07e593ffea12b7aa586f7a Test: code compiles and device boots with no problems. Test: select sqlite_version() - returns 3.32.2 Test: atest cts/SQLiteDatabaseTest all passed. Test: atest cts/SQLiteSecurityTest Bug: 159105124 Change-Id: I5c5fa2fd90292483bf20d8ae58adad41c48aa4e6
2020-07-20Update fix for issue 147928666.Narayan Kamath
The compile time flag was added to the wrong place in change 88147c4. Bug: 147928666 Test: atest SQLiteSecurityTest Change-Id: I221f4e56b21a2573fd33d92389601af18752e905
2020-07-17Fix for sqlite3_open_v2 returning errors.Alex Buynytskyy
Happened after default compilation flags changed in ag/11474704. The fix is to revert the flags for just this library. Fixes: 160728363 Test: manually install the apk in the bug and verify it's not crashing/throwing the exception. Change-Id: I9e02a810bee088b35d25921086810f695956d6d3 Merged-In: I9e02a810bee088b35d25921086810f695956d6d3
2020-05-11Fix 'ALTER RENAME TABLE' compat issueZim
This CL disables SQLite's new behavior in "ALTER RENAME TABLE" introduced in version 3.25.0 (https://www.sqlite.org/changes.html). In this new behavior, when renaming a table, SQLite would automatically update all the views and triggers referencing to it, which is nice if an app is always using 3.25 or later. However, in practice, almost all android apps have to support older android versions where this behavior is not supported, apps just can't rely on this feature. Other downsides of the new behavior (in the context of android ecosystem) includes: - Because the new behavior would crash an app when a rename would cause a dangling view or trigger *even when the app does have a fix-up step after ALTER RENAME TABLE* in which case it'd just work fine at the end, it is very risky to enable the new behavior on all apps. - This new behavior also means existing upgrade steps (which may have been introduced years ago) could suddenly fail, if the step is executed in R. This means, if an app used an "ALTER TABLE RENAME" in the upgrade step from ver 1 to ver 2 five years ago and never after, and almost all users are already running ver 2 or newer, *if* there's still a user who are on ver 1, upgrading the app to the latest version could suddenly fail on R. Applications wishing to enable the new behavior can enable it at runtime with the following call: SQLiteDatabase db = ....; // open a DB db.execPerConnectionSQL("PRAGMA legacy_alter_table = 0;", null); Test: atest SQLiteSecurityTest Bug: 147928666 Change-Id: I64546deebd3782ed685fcb46498bc487e0f8d5b6
2020-04-29Fix CVE-2019-13734,CVE-2019-13751,CVE-2019-13752, CVE-2019-13753Zim
Test: atest SQLiteSecurityTest Bug: b/147323008 Bug: b/147322738 Bug: b/147320136 Bug: b/147320314 Change-Id: If441c59e4b6d0965def51e3717c06a4e5739ebd3
2020-02-10Revert "Revert "Turn off the new pass manager due to miscompile""Chih-hung Hsieh
This reverts commit 10ed3ddd93df3472816560c7c15c92e540cce7f1. Reason for revert: problem found in clang-r377782 Bug: 149157191 Change-Id: I20cde351f44d241c5c65f9cfbfbb37d45c15f724
2019-10-05Revert "Turn off the new pass manager due to miscompile"Yi Kong
This reverts commit 2c322e71fe66db569c4d651f2abf8a1c0c57d3e2. The miscompile is fixed by the latest compiler update. Test: manual Bug: 131854833 Exempt-From-Owner-Approval: Revert
2019-07-15Merge "libsqlite: remove unused deps"Treehugger Robot
2019-07-11libsqlite: remove unused depsSteven Moreland
Bug: 137311188 Test: library still builds Change-Id: I9702db5f804fc241d1ae88dfae0e270fe45ca4c1
2019-06-21Remove all ICU integration for sqlite on hostNeil Fuller
Maintaining external/icu for non-device usecases is becoming an increasing burden and there are no tests around sqlite / libsqlite on host that indicate what support is needed. There doesn't appear to be any ICU initialization code in place on host suggesting ICU usage is limited to functions that don't require data. This change removes ICU integration with sqlite on host entirely to try to flush out affected users. If there are no complaints that will be one less dependency to worry about. Bug: 130787951 Test: build / treehugger Test: Ran sqlite3 on host Change-Id: Icd1eb97281d941a3f55c4289b6d65fe5921ed542
2019-06-11sqlite: Upgrade to SQLite 3.28.0Haibo Huang
Downloaded from https://sqlite.org/2019/sqlite-autoconf-3280000.tar.gz $ sha1sum sqlite-autoconf-3280000.tar.gz 01b9d8fc77085e144dddc87456c9783e53d09a53 sqlite-autoconf-3280000.tar.gz dist/orig contains the stock sqlite3 code, as packaged in the tar.gz file above. dist contains a copy of dist/orig, but with the Android.patch file applied. The Android specific patch didn't apply cleanly due to merge conflict in shell.c. The conflict was resolved and the patch was regenerated. More details about the release are available here: https://www.sqlite.org/releaselog/3_28_0.html Test: code compiles and device boots with no problems. Test: select sqlite_version() - returns 3.28.0 Test: atest cts/SQLiteDatabaseTest all passed. Test: atest cts/SQLiteSecurityTest Bug: 135048770 Change-Id: Idf38a3adace9f4bd4feab4012c9cc4de3a1c501c
2019-05-23Turn off the new pass manager due to miscompileYi Kong
Some apps crash if libsqlite is built with the new pass manager. Test: manual testing Bug: 131855431 Bug: 131854833 Change-Id: Ibd2da184fa614ce501c0994446dcb22e93dc4d1b
2019-05-14Enable native_bridge_support for libsqlitedimitry
Android build system added support for building translated binaries used on natively bridge targets (arm on x86 for example). However in order to avoid building unnecessary binaries and libraries for such architectures most modules do not support native bridge by default. All needed modules have to explicitly indicate if they may be used as part of translated binary build. This change enabled native bridge support for libsqlite because is a greylisted library and needs to be available to apps targeting Andorid version < 24 Bug: http://b/77159578 Test: make Change-Id: Idc03773014ef2ddd20e4c6b164cb5f4cd3f2d142
2019-03-25Revert "[fuchsia] Add Fuchsia support to SQLite."Victor Chang
This reverts commit 5148bb2b921ee84709d3924aecbad69d77300aff. Reason for revert: Using deprecated libraries. Merged-In: I6b84f88c9b726e28dc0188ceb0585ec8a732d091 Change-Id: I1b42d09203da163d5abebc7b45bea7b71ac1fd18
2019-03-20[fuchsia] Add Fuchsia support to SQLite.Victor Chang
This enables basic database locking, but there are known weaknesses to this approach. ie. If the process is killed before the *.lock file can be deleted, then the database is perpetually locked. Bug: 120103808 Test: Database locking works. Merged-In: Iac54c5f76e167fef15b490522840d33808d4bc6c Change-Id: Iac54c5f76e167fef15b490522840d33808d4bc6c
2019-03-15Switch to use aicu/AIcu.hNeil Fuller
Switch to using a dynamically-linked library function to initialize ICU, not a statically-linked function. This means the knowledge of file paths stays in the runtime module. Bug: 120493361 Test: build/boot Merged-In: I28fc0007f7f0c6fff3aaca599a399f7aae2a86b0 Change-Id: I28fc0007f7f0c6fff3aaca599a399f7aae2a86b0
2019-03-11DO NOT MERGE - Merge PPRL.190305.001 into masterXin Li
Bug: 127812889 Change-Id: I33d269cfcbc281555c3ebbbb6c30574e41cc673c
2019-01-16RESTRICT AUTOMERGE: Apply security patch to sqlite 3.22.Hui Yu
This patch fixes Magellan SQLite Security Vulnerability as in b/121156452 Download from https://www.sqlite.org/src/info/c255889bd95bd543 Get the Tarball or ZIP Archive, unzip it on linux machine then run: mkdir bld; cd bld; ../configure; make sqlite3.c Copy sqlite3.c, sqlite3.h, sqlite3ext.h, shell.c from bld directory to dist/orig. dist contains a copy of dist/orig, but with the Android.patch file applied. Bug: 121156452 Test: select sqlite_version() - returns 3.22.0 Test: atest cts/SQLiteDatabaseTest all passed. Test: atest cts/SQLSecurityTest Change-Id: Iea1cefe2577ac52da84b24b6d51e1769042e449a Merged-In: Iad8c3d1d74d8591a75a4c033c8bf9d3956d2fe4f (cherry picked from commit 7fbf27c91af1621264154cc09f0fdafb3ba69ed3)
2019-01-07Use ICU in libandroidicuVictor Chang
libicuuc and libicui18n are moved into APEX, but they have no stable ABI due to the version suffix. Use libandroidicu which provides stable symbol. See http://go/apex-stable-icu4c-interface for the design. Bug: 117094880 Test: m checkbuild Merged-In: Iab88307452d9467ddebc0d4dfc5a4799ff54324f Change-Id: Iab88307452d9467ddebc0d4dfc5a4799ff54324f (cherry picked from commit 57caede3b8ab913890639390dbc3ee9af6c1726f)
2018-08-22Perfunctory fdsan support for sqlite fds.Josh Gao
Add some basic fdsan support to sqlite, where ownership enforcement is only at a sqlite level (i.e. other code is prevented from accidentally closing sqlite's file descriptors, but sqlite can accidentally close its own file descriptors). Test: debuggerd `pidof system_server` | grep " fd " Change-Id: I8ba23fa174dabb408f92be76b5476e0fe9e6c5dc
2018-08-21Improve command for generating Android.patch.Josh Gao
Test: ran it Change-Id: I16492cab5d075d20045d202986dcd85c9ac31879
2018-05-08Remove unused `tags` property from Android.bp filesDan Willemsen
The tags property is (and has always been) unused by Soong. The property has been defined as a list of strings, and the `androidmk` converted any LOCAL_MODULE_TAGS entries over to it, but we've never done anything with it. In preparation for removing the definition from Soong, I'm removing it from all Android.bp files in the tree. Since this has never done anything, this is a no-op, but if you really did want the Android.mk behavior, the proper way to define a module to be installed in userdebug / eng builds is to use PRODUCT_PACKAGES_DEBUG or PRODUCT_PACKAGES_ENG in the appropriate product makefile. Change-Id: I57fe8ba27f4e757236144b5f4649ba63aa6b82f5 Exempt-From-Owner-Approval: global no-op build change Test: remove `tags` from Soong, see errors go away.
2018-03-20Apply a workaround for Bionic's ioctl signedness hackGeorge Burgess IV
Sqlite takes ioctl's address, and immediately casts it to a type incompatible with either `int(*)(int, int, ...)` or `int(*)(int, unsigned, ...)`. So, clang doesn't know what overload to pick, even though they both ultimately point to the same function. Bug: https://github.com/android-ndk/ndk/issues/402 Test: m on internal master Change-Id: I67aa885c835a3703d3ed23b5c3f24d3387c51be2
2018-02-14sqlite: Upgrade to SQLite 3.22.0Fyodor Kupolov
Downloaded from https://www.sqlite.org/2018/sqlite-autoconf-3220000.tar.gz $ sha1sum sqlite-autoconf-3220000.tar.gz 2fb24ec12001926d5209d2da90d252b9825366ac sqlite-autoconf-3220000.tar.gz dist/orig contains the stock sqlite3 code, as packaged in the tar.gz file above. dist contains a copy of dist/orig, but with the Android.patch file applied. The Android specific patch didn't apply cleanly due to merge conflict in shell.c. The conflict was resolved and the patch was regenerated. More details about the release are available here: https://www.sqlite.org/releaselog/3_22_0.html Test: code compiles and device boots with no problems. Test: select sqlite_version() - returns 3.22.0 Test: cts/SQLiteDatabaseTest Bug: 73005878 Change-Id: Iba62f75ae9b16fe55f6bb6a1c37a718a27d16a73
2017-10-03Merge "Rename target.linux[_x86[_64]] to target.linux_glibc[_x86[_64]]" am: ↵Dan Willemsen
7ecbb7ccdd am: ebd1125140 am: d3bffc7904 Change-Id: Ia91d00ba00761a0390e13b0178edb1d64ae82aa7
2017-10-03Merge "Rename target.linux[_x86[_64]] to target.linux_glibc[_x86[_64]]"Dan Willemsen
am: 7ecbb7ccdd Change-Id: Ia5db89688558a291ab4487210d4ea4c39a1638a4
2017-10-02Rename target.linux[_x86[_64]] to target.linux_glibc[_x86[_64]]Dan Willemsen
In the future, target.linux will apply to all targets running a linux kernel (android, linux_glibc, linux_bionic). So move all current users to the specific linux_glibc. There will be another cleanup pass later that will move some instances back to target.linux if the properties should be shared with target.android and target.linux_bionic, but target.linux needs to be removed first. Test: out/soong/build.ninja identical before/after Change-Id: I9471cb8770792d37d78b4995ff10044a9b1478ae Exempt-From-Owner-Approval: build system cleanup
2017-09-29Merge "Remove default libraries" am: c3d8c7e311 am: d691ebd5feDan Willemsen
am: 0b842f79fb Change-Id: I784f5312900d0296a75a8b8daac356e2b13b8901
2017-09-29Merge "Remove default libraries"Dan Willemsen
am: c3d8c7e311 Change-Id: I73778c9400ae6ac36a688f91e2e4ac1c6cce50a6
2017-09-28Remove default librariesDan Willemsen
libdl is part of system_shared_libs now. -ldl -lpthread -lm are now defaults for host_ldlibs on Linux and Darwin. -lrt is a default for host_ldlibs on Linux. Test: m host Change-Id: I35ac5cc20f6f67ee93dc49767527d0f6f8476681 Exempt-From-Owner-Approval: build system cleanup
2017-09-08Merge "ICU is disabled by Android.bp"Jiyong Park
am: 5ed153d271 Change-Id: Idea3fd58e296f27ceb57336acf5d3d1f4fb685c4
2017-09-07ICU is disabled by Android.bpJiyong Park
By using vendor.cflags, SQLITE_ENABLE_ICU is on/off from Android.bp. No need to def/undef it inside the source code. Bug: 64514237 Test: BOARD_VNDK_VERSION=current m -j libsqlite libsqlite.vendor Merged-In: If9771fa020e528445275281017e424a5bbc2ae99 Change-Id: If9771fa020e528445275281017e424a5bbc2ae99 (cherry picked from commit 633397eeef296584d3242d8a72790dcf11bb36fd)
2017-08-18sqlite: Upgrade to SQLite 3.19.4 releaseFyodor Kupolov
Downloaded from https://sqlite.org/src/tarball/SQLite-605907e7.tar.gz $ shasum SQLite-605907e7.tar.gz 4ac33e2ce69553fdb929e394823267a604b19211 SQLite-605907e7.tar.gz Unpack and run "./configure; make sqlite3.c" to generate the "sqlite3.c", "sqlite3.h", "shell.c", and "sqlite3ext.h" source files dist/orig contains the stock sqlite3 code, as generated from the tar.gz file above. This update simply switches from batch-atomic-write-3.19 branch to an official release. No code changes. Test: manual Bug: 64849849 Change-Id: Ibbf0bca7ec498a670487adf8f0ffbfa19a44bbbf
2017-08-18Merge "Don't use ICU when built for vendors" am: fc6bb57693 am: ed6a0cb1f1Jiyong Park
am: 52697317fc Change-Id: I1f2004db571421051bd781f254cf5cfed3bd305d
2017-08-11ICU is disabled by Android.bpJiyong Park
By using vendor.cflags, SQLITE_ENABLE_ICU is on/off from Android.bp. No need to def/undef it inside the source code. Bug: 64514237 Test: BOARD_VNDK_VERSION=current m -j libsqlite libsqlite.vendor Change-Id: If9771fa020e528445275281017e424a5bbc2ae99
2017-08-10Don't use ICU when built for vendorsJiyong Park
libicuuc.so isn't available for vendors, thus ICU is turned off when libsqlite is built for vendors. Bug: 64104535 Test: BOARD_VNDK_VERSION=current m -j libsqlite.vendor Merged-In: I682502ba5bdc5f76a0363a95d01b1081c1bc01a4 Change-Id: I682502ba5bdc5f76a0363a95d01b1081c1bc01a4 (cherry picked from commit b4076dfd66f114263a1f70cf3ba73c2d55ccb3b0)
2017-08-10Don't use ICU when built for vendorsJiyong Park
libicuuc.so isn't available for vendors, thus ICU is turned off when libsqlite is built for vendors. Bug: 64104535 Test: BOARD_VNDK_VERSION=current m -j libsqlite.vendor Change-Id: I682502ba5bdc5f76a0363a95d01b1081c1bc01a4
2017-08-02sqlite: Upgrade to SQLite 3.19.4Fyodor Kupolov
Downloaded from https://sqlite.org/src/tarball/SQLite-2dd0c77d.tar.gz $ shasum SQLite-2dd0c77d.tar.gz 354575e725f1301ed52984bd06d7b803b2134f5a SQLite-2dd0c77d.tar.gz Unpack and run "./configure; make sqlite3.c" to generate the "sqlite3.c", "sqlite3.h", "shell.c", and "sqlite3ext.h" source files dist/orig contains the stock sqlite3 code, as generated from the tar.gz file above. This release provides a fix for https://sqlite.org/src/info/de3403bf5ae5f72ed The proposed solution makes column names more consistent and easier to understand. It also makes the implementation smaller and simpler and helps it to run a little faster. However, there may be legacy programs that depended on the old behavior (shifting the column naming rule from (2) to (3) when using the query flattener) and those legacy programs could potentially break due to this change. Test: manual + SQLiteDatabaseTest CTS test Bug: 62431773 Change-Id: I44f9bafe888b22b040fa1827962c421b4eab0c3a
2017-08-01sqlite: Upgrade to SQLite 3.19.3 [batch-atomic-write] [NO PARTIAL RERUN]Fyodor Kupolov
Downloaded from https://sqlite.org/src/tarball/SQLite-def55027.tar.gz $ shasum SQLite-def55027.tar.gz 5872660422a1ef8211f57f96f7c8507279a376f7 SQLite-def55027.tar.gz Unpack and run "./configure; make sqlite3.c" to generate the "sqlite3.c", "sqlite3.h", "shell.c", and "sqlite3ext.h" source files dist/orig contains the stock sqlite3 code, as generated from the tar.gz file above. dist contains a copy of dist/orig, but with the Android.patch file applied. Please see Android.patch for a list of differences between stock and Android. Experimental changes from batch-atomic-write-3.19 branch https://sqlite.org/src/info/def55027b1f1db9c With this enhancement, SQLite automatically omits the rollback journal and uses the atomic write capabilities of F2FS when it can. When F2FS atomic write is used, we find that transactions are about 3x faster compared with an ext4 filesystem on the same SSD device. Test: manual + SQLiteDatabaseTest CTS test Bug: 64149514 Change-Id: I920f435748fa1d773be161f3264626d33b11edfd
2017-07-25resolve merge conflicts of 0f98d87 to oc-dr1-devJP Sugarbroad
am: b77e9e9f32 Change-Id: I697659df74806cfbf746f787dd03fd243c67987c
2017-07-25resolve merge conflicts of 0f98d87 to oc-dr1-devJP Sugarbroad
Test: I solemnly swear I tested this conflict resolution. Change-Id: Id9018fe05fb7d1f15813c46557b552e3bbbb132b
2017-07-24[DO NOT MERGE] sqlite: Upgrade to SQLite 3.18.2Fyodor Kupolov
Downloaded from https://sqlite.org/2017/sqlite-autoconf-3180200.tar.gz $ sha256sum sqlite-autoconf-3180200.tar.gz 0d40222ea818a559590c51994ac85570eff5c5f754cbe08c2d34a3791942c1ba sqlite-autoconf-3180200.tar.gz dist/orig contains the stock sqlite3 code, as packaged in the tar.gz file above. dist contains a copy of dist/orig, but with the Android.patch file applied. Please see Android.patch for a list of differences between stock and Android. This release contains critical bug fixes for 3.18.0: - https://sqlite.org/src/info/fda22108 - https://www.sqlite.org/src/info/61fe9745 More details about the release are available here: https://sqlite.org/src/info/version-3.18.2 Test: code compiles and device boots with no problems. Test: Repro steps from https://sqlite.org/src/info/fda22108 and https://www.sqlite.org/src/info/61fe9745 Bug: 62447923 Merged-In: I13cede802129bef64a183915827d422e1d609464 Change-Id: I6ae907fa6f13258d8d421037c7c94c21a2188eda (cherry picked from commit e6695ba9e149b5d63c16d22e377e259a6df92284)
2017-07-21DO NOT MERGE - fix FTS3 column pointer handlingJP Sugarbroad
Add new interfaces sqlite3_result_pointer(), and sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column pointer to the snippet() and offsets() routines. Bug: 63852675 Test: presubmit Change-Id: I0f0be2bfc21aef8917da63d76d1007fbf8c8ad4d
2017-07-21Revert "Tag FTS3 cursor pointers in fts3ColumnMethod()" am: 04b7193064 am: ↵JP Sugarbroad
8864d13b9c am: b8758ffc7f am: 23756c7fb0 am: 5a5ec9c6d9 Change-Id: I5df4d348e9eb33a71b2a4ed4d663e9abe6afaad5
2017-07-21Revert "Tag FTS3 cursor pointers in fts3ColumnMethod()"JP Sugarbroad
This reverts commit 499a4036e8932e30331816e0f50fcfc78b2dec10. Bug: 63852675 Change-Id: I154de318a66261290c848d2a8c32a82e20a46dbb Merged-In: Ifb8b0fd23e6306b576c2c947dcab45d811e4becb
2017-07-20Tag FTS3 cursor pointers in fts3ColumnMethod() am: 499a4036e8 am: e8d111f46b ↵JP Sugarbroad
am: ab30887541 am: 9b318a0a7e am: 53d319ec85 Change-Id: I209167955d426e5b2e3eebb94d9c7c0563a42156
2017-07-20Tag FTS3 cursor pointers in fts3ColumnMethod()JP Sugarbroad
FTS3 tables have a magic column, whose name matches the table name, which is used to obtain a pointer to the cursor for the current operation. fts3ColumnMethod() now tags its result when used with the magic column, and fts3FunctionArg() checks the tag and returns an error when asked to access the magic column on behalf of the user. Bug: 63852675 Change-Id: Ie0ab625c708d8fcad80db66a373f2684672642b1 Merged-In: Ifb8b0fd23e6306b576c2c947dcab45d811e4becb
2017-06-26Mark libsqlite as vendor_availableJiyong Park
There are some vendor libs that are using libsqlite. So marking it as vendor_available. Bug: 37560614 Test: BOARD_VNDK_VERSION=current m -j libsqlite.vendor Change-Id: I45823c4d42071f505583a955564cdd78742e8029