From: drh Date: Thu, 11 Sep 2014 15:25:02 +0000 (+0000) Subject: All interfaces working and tested. X-Git-Tag: version-3.8.7~120^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a000ca681aa71c7efb4b9ab91f8ae6ca2bf289d3;p=thirdparty%2Fsqlite.git All interfaces working and tested. FossilOrigin-Name: 96ea5c0b3cd1dec81d490f2f958ebd2e47a24921 --- diff --git a/manifest b/manifest index f5797939b4..f6d0875475 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Get\sthe\ssqlite3_user_delete()\sinterface\sworking. -D 2014-09-11T14:56:45.837 +C All\sinterfaces\sworking\sand\stested. +D 2014-09-11T15:25:02.114 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in cf57f673d77606ab0f2d9627ca52a9ba1464146a F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -166,7 +166,7 @@ F sqlite3.1 3d8b83c91651f53472ca17599dae3457b8b89494 F sqlite3.pc.in 48fed132e7cb71ab676105d2a4dc77127d8c1f3a F src/alter.c ba266a779bc7ce10e52e59e7d3dc79fa342e8fdb F src/analyze.c 79383a54fee3b7f1fb03dd4c8c8115583f506de5 -F src/attach.c cc9b30041dfcd24be0a47986c87c384515c54449 +F src/attach.c f4e94df2d1826feda65eb0939f7f6f5f923a0ad9 F src/auth.c d8abcde53426275dab6243b441256fcd8ccbebb2 F src/backup.c a31809c65623cc41849b94d368917f8bb66e6a7e F src/bitvec.c 19a4ba637bd85f8f63fc8c9bae5ade9fb05ec1cb @@ -1057,7 +1057,7 @@ F test/unixexcl.test cd6c765f75e50e8e2c2ba763149e5d340ea19825 F test/unordered.test ca7adce0419e4ca0c50f039885e76ed2c531eda8 F test/update.test 1b6c488a8f993d090b7ee9ad0e234faa161b3aeb F test/uri.test 23662b7b61958b0f0e47082de7d06341ccf85d5b -F test/userauth01.test 77f6762fd30e09a70c08ae1734fc63cc1e2f214a +F test/userauth01.test de260ba56ca288e36f10fc86cdd6e30be0c96edb F test/utf16align.test 54cd35a27c005a9b6e7815d887718780b6a462ae F test/vacuum.test ce91c39f7f91a4273bf620efad21086b5aa6ef1d F test/vacuum2.test af432e6e3bfc0ea20a80cb86a03c7d9876d38324 @@ -1197,7 +1197,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 52d440c7e1b07fc03f14ed5fa4cc4c89a75cd430 -R f24750ae4706249df9137bdaab459848 +P 974a9c65583f7ab438d5673dc00c347ab8322855 +R 1b82e61677dc0f31739c2e6eefc2d964 U drh -Z 7444bd078e3d35d0ed86c3e87803a00a +Z fb0835cb3153cdbefaf30b784736228d diff --git a/manifest.uuid b/manifest.uuid index d912814cf2..adf124ebaf 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -974a9c65583f7ab438d5673dc00c347ab8322855 \ No newline at end of file +96ea5c0b3cd1dec81d490f2f958ebd2e47a24921 \ No newline at end of file diff --git a/src/attach.c b/src/attach.c index 5763e631ad..cf52bb24b1 100644 --- a/src/attach.c +++ b/src/attach.c @@ -212,7 +212,7 @@ static void attachFunc( u8 newAuth = 0; rc = sqlite3UserAuthCheckLogin(db, zName, &newAuth); if( newAuthauth.authLevel ){ - rc = SQLITE_AUTH; + rc = SQLITE_AUTH_USER; } } #endif diff --git a/test/userauth01.test b/test/userauth01.test index a914ea07ca..a4621dc72f 100644 --- a/test/userauth01.test +++ b/test/userauth01.test @@ -201,5 +201,41 @@ do_test userauth01-1.51 { db eval {SELECT uname, isadmin FROM sqlite_user ORDER BY uname} } {alice 1 cindy 0 david 0} +# When ATTACH-ing new database files to a connection, each newly attached +# database that is an authentication-required database is checked using +# the same username and password as supplied to the main database. If that +# check fails, then the ATTACH command fails with an SQLITE_AUTH error. +# +do_test userauth01-1.60 { + forcedelete test3.db + sqlite3 db3 test3.db + db3 eval { + CREATE TABLE t3(a,b,c); INSERT INTO t3 VALUES(1,2,3); + SELECT * FROM t3; + } +} {1 2 3} +do_test userauth01-1.61 { + sqlite3_user_add db3 alice xyzzy-alice 1 +} {SQLITE_OK} +do_test userauth01-1.62 { + db eval { + ATTACH 'test3.db' AS aux; + SELECT * FROM t1, t3 ORDER BY x LIMIT 1; + DETACH aux; + } +} {{} 1 2 3} +do_test userauth01-1.63 { + sqlite3_user_change db alice pw-4-alice 1 + sqlite3_user_authenticate db alice pw-4-alice + catchsql { + ATTACH 'test3.db' AS aux; + } +} {1 {unable to open database: test3.db}} +do_test userauth01-1.64 { + sqlite3_extended_errcode db +} {SQLITE_AUTH} +do_test userauth01-1.65 { + db eval {PRAGMA database_list} +} {~/test3.db/} finish_test