Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Corrections to the previous check-in. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
07200719dcd1f9d5e883b62d24cae3b0 |
User & Date: | mistachkin 2015-02-12 18:53:27 |
Context
2015-02-12
| ||
18:56 | Reset build patch-levels. check-in: a223e3baf3 user: mistachkin tags: trunk | |
18:53 | Corrections to the previous check-in. check-in: 07200719dc user: mistachkin tags: trunk | |
18:18 | Enable easier integration with CEROD. check-in: d3eb5c0fcc user: mistachkin tags: trunk | |
Changes
Changes to System.Data.SQLite/SQLite3.cs.
2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 |
/// Add a log message via the SQLite sqlite3_log interface.
internal static void StaticLogMessage(SQLiteErrorCode iErrCode, string zMessage)
{
UnsafeNativeMethods.sqlite3_log(iErrCode, ToUTF8(zMessage));
}
#if INTEROP_CODEC || INTEROP_INCLUDE_SEE || INTEROP_INCLUDE_CEROD
internal override void SetPassword(byte[] passwordBytes)
{
SQLiteErrorCode n = UnsafeNativeMethods.sqlite3_key(_sql, passwordBytes, passwordBytes.Length);
if (n != SQLiteErrorCode.Ok) throw new SQLiteException(n, GetLastError());
}
internal override void ChangePassword(byte[] newPasswordBytes)
|
| |
2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 |
/// Add a log message via the SQLite sqlite3_log interface. internal static void StaticLogMessage(SQLiteErrorCode iErrCode, string zMessage) { UnsafeNativeMethods.sqlite3_log(iErrCode, ToUTF8(zMessage)); } #if INTEROP_CODEC || INTEROP_INCLUDE_SEE internal override void SetPassword(byte[] passwordBytes) { SQLiteErrorCode n = UnsafeNativeMethods.sqlite3_key(_sql, passwordBytes, passwordBytes.Length); if (n != SQLiteErrorCode.Ok) throw new SQLiteException(n, GetLastError()); } internal override void ChangePassword(byte[] newPasswordBytes) |
Changes to System.Data.SQLite/SQLiteBase.cs.
371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 |
/// <param name="iErrCode">Error code to be logged with the message.</param>
/// <param name="zMessage">String to be logged. Unlike the SQLite sqlite3_log()
/// interface, this should be pre-formatted. Consider using the
/// String.Format() function.</param>
/// <returns></returns>
internal abstract void LogMessage(SQLiteErrorCode iErrCode, string zMessage);
#if INTEROP_CODEC || INTEROP_INCLUDE_SEE || INTEROP_INCLUDE_CEROD
internal abstract void SetPassword(byte[] passwordBytes);
internal abstract void ChangePassword(byte[] newPasswordBytes);
#endif
internal abstract void SetAuthorizerHook(SQLiteAuthorizerCallback func);
internal abstract void SetUpdateHook(SQLiteUpdateCallback func);
internal abstract void SetCommitHook(SQLiteCommitCallback func);
|
| |
371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 |
/// <param name="iErrCode">Error code to be logged with the message.</param> /// <param name="zMessage">String to be logged. Unlike the SQLite sqlite3_log() /// interface, this should be pre-formatted. Consider using the /// String.Format() function.</param> /// <returns></returns> internal abstract void LogMessage(SQLiteErrorCode iErrCode, string zMessage); #if INTEROP_CODEC || INTEROP_INCLUDE_SEE internal abstract void SetPassword(byte[] passwordBytes); internal abstract void ChangePassword(byte[] newPasswordBytes); #endif internal abstract void SetAuthorizerHook(SQLiteAuthorizerCallback func); internal abstract void SetUpdateHook(SQLiteUpdateCallback func); internal abstract void SetCommitHook(SQLiteCommitCallback func); |
Changes to System.Data.SQLite/SQLiteConnection.cs.
469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 .... 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 .... 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 |
/// </summary> internal SQLiteBase _sql; /// <summary> /// The database filename minus path and extension /// </summary> private string _dataSource; #if INTEROP_CODEC || INTEROP_INCLUDE_SEE || INTEROP_INCLUDE_CEROD /// <summary> /// Temporary password storage, emptied after the database has been opened /// </summary> private byte[] _password; #endif /// <summary> ................................................................................ if (fullUri) flags |= SQLiteOpenFlagsEnum.Uri; _sql.Open(fileName, _flags, flags, maxPoolSize, usePooling); _binaryGuid = SQLiteConvert.ToBoolean(FindKey(opts, "BinaryGUID", DefaultBinaryGUID.ToString())); #if INTEROP_CODEC || INTEROP_INCLUDE_SEE || INTEROP_INCLUDE_CEROD string hexPassword = FindKey(opts, "HexPassword", DefaultHexPassword); if (!String.IsNullOrEmpty(hexPassword)) { string error = null; byte[] hexPasswordBytes = FromHexString(hexPassword, ref error); ................................................................................ if (_sql == null) throw new InvalidOperationException("Database connection not valid for logging message."); _sql.LogMessage((SQLiteErrorCode)iErrCode, zMessage); } #if INTEROP_CODEC || INTEROP_INCLUDE_SEE || INTEROP_INCLUDE_CEROD /// <summary> /// Change the password (or assign a password) to an open database. /// </summary> /// <remarks> /// No readers or writers may be active for this process. The database must already be open /// and if it already was password protected, the existing password must already have been supplied. /// </remarks> |
| | | |
469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 .... 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 .... 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 |
/// </summary> internal SQLiteBase _sql; /// <summary> /// The database filename minus path and extension /// </summary> private string _dataSource; #if INTEROP_CODEC || INTEROP_INCLUDE_SEE /// <summary> /// Temporary password storage, emptied after the database has been opened /// </summary> private byte[] _password; #endif /// <summary> ................................................................................ if (fullUri) flags |= SQLiteOpenFlagsEnum.Uri; _sql.Open(fileName, _flags, flags, maxPoolSize, usePooling); _binaryGuid = SQLiteConvert.ToBoolean(FindKey(opts, "BinaryGUID", DefaultBinaryGUID.ToString())); #if INTEROP_CODEC || INTEROP_INCLUDE_SEE string hexPassword = FindKey(opts, "HexPassword", DefaultHexPassword); if (!String.IsNullOrEmpty(hexPassword)) { string error = null; byte[] hexPasswordBytes = FromHexString(hexPassword, ref error); ................................................................................ if (_sql == null) throw new InvalidOperationException("Database connection not valid for logging message."); _sql.LogMessage((SQLiteErrorCode)iErrCode, zMessage); } #if INTEROP_CODEC || INTEROP_INCLUDE_SEE /// <summary> /// Change the password (or assign a password) to an open database. /// </summary> /// <remarks> /// No readers or writers may be active for this process. The database must already be open /// and if it already was password protected, the existing password must already have been supplied. /// </remarks> |
Changes to System.Data.SQLite/SQLitePatchLevel.cs.
5 6 7 8 9 10 11 12 13 14 15 16 |
* Released to the public domain, use at your own risk! ********************************************************/ using System.Data.SQLite; /////////////////////////////////////////////////////////////////////////////// [assembly: AssemblySourceId("c0f67d5d98a67b7f411873193fb9fe934d5be125")] /////////////////////////////////////////////////////////////////////////////// [assembly: AssemblySourceTimeStamp("2015-01-30 17:59:12 UTC")] |
| | |
5 6 7 8 9 10 11 12 13 14 15 16 |
* Released to the public domain, use at your own risk! ********************************************************/ using System.Data.SQLite; /////////////////////////////////////////////////////////////////////////////// [assembly: AssemblySourceId("d3eb5c0fcc552934ae7c0f15e5bb6be2313428ed")] /////////////////////////////////////////////////////////////////////////////// [assembly: AssemblySourceTimeStamp("2015-02-12 18:18:43 UTC")] |
Changes to System.Data.SQLite/UnsafeNativeMethods.cs.
2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 |
#if !PLATFORM_COMPACTFRAMEWORK
[DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Unicode)]
#else
[DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)]
#endif
internal static extern void sqlite3_result_text16(IntPtr context, string strName, int nLen, IntPtr pvReserved);
#if INTEROP_CODEC || INTEROP_INCLUDE_SEE || INTEROP_INCLUDE_CEROD
#if !PLATFORM_COMPACTFRAMEWORK
[DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)]
#else
[DllImport(SQLITE_DLL)]
#endif
internal static extern SQLiteErrorCode sqlite3_key(IntPtr db, byte[] key, int keylen);
|
| |
2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 |
#if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Unicode)] #else [DllImport(SQLITE_DLL, CharSet = CharSet.Unicode)] #endif internal static extern void sqlite3_result_text16(IntPtr context, string strName, int nLen, IntPtr pvReserved); #if INTEROP_CODEC || INTEROP_INCLUDE_SEE #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern SQLiteErrorCode sqlite3_key(IntPtr db, byte[] key, int keylen); |
Changes to test/TestCases.cs.
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
internal void CheckSQLite() { if (_fact.GetType().Name.IndexOf("SQLite", StringComparison.OrdinalIgnoreCase) == -1) throw new InconclusiveException("Not a SQLite database"); } /* * NOTE: Using SEE or CEROD for this particular test case is currently * unsupported because we have no easy way of executing the SQL * beforehand that is needed to set it up. */ #if INTEROP_CODEC // || INTEROP_INCLUDE_SEE || INTEROP_INCLUDE_CEROD /// <summary> /// Tests changing password on an encrypted database. /// </summary> [Test] internal void ChangePasswordTest() { if (_fact.GetType().Name.IndexOf("SQLite", StringComparison.OrdinalIgnoreCase) > -1) |
| | | | |
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
internal void CheckSQLite() { if (_fact.GetType().Name.IndexOf("SQLite", StringComparison.OrdinalIgnoreCase) == -1) throw new InconclusiveException("Not a SQLite database"); } /* * NOTE: Using SEE for this particular test case is currently unsupported * because we have no easy way of executing the SQL beforehand that * is needed to set it up. */ #if INTEROP_CODEC // || INTEROP_INCLUDE_SEE /// <summary> /// Tests changing password on an encrypted database. /// </summary> [Test] internal void ChangePasswordTest() { if (_fact.GetType().Name.IndexOf("SQLite", StringComparison.OrdinalIgnoreCase) > -1) |