Skip to content

Commit 53b7359

Browse files
Log result of sqlite3_key
1 parent 2a2b47b commit 53b7359

File tree

2 files changed

+7
-5
lines changed

2 files changed

+7
-5
lines changed

sqlcipher/src/main/java/net/zetetic/database/sqlcipher/SQLiteConnection.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen
117117
// we can ensure that we detach the signal at the right time.
118118
private int mCancellationSignalAttachCount;
119119

120-
private static native void nativeKey(long connectionPtr, byte[] password);
120+
private static native int nativeKey(long connectionPtr, byte[] password);
121121
private static native long nativeOpen(String path, int openFlags, String label,
122122
boolean enableTrace, boolean enableProfile);
123123
private static native void nativeClose(long connectionPtr);
@@ -217,7 +217,8 @@ private void open() {
217217
mConfiguration.databaseHook.preKey(this);
218218
}
219219
if(mConfiguration.password != null && mConfiguration.password.length > 0){
220-
nativeKey(mConnectionPtr, mConfiguration.password);
220+
int rc = nativeKey(mConnectionPtr, mConfiguration.password);
221+
Log.i(TAG, String.format("Database keying operation returned:%s", rc));
221222
}
222223
if(mConfiguration.databaseHook != null){
223224
mConfiguration.databaseHook.postKey(this);

sqlcipher/src/main/jni/sqlcipher/android_database_SQLiteConnection.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,8 @@ static int coll_localized(
138138
return rc;
139139
}
140140

141-
static void nativeKey(JNIEnv* env, jclass clazz, jlong connectionPtr, jbyteArray keyArray) {
142-
int rc = 0;
141+
static jint nativeKey(JNIEnv* env, jclass clazz, jlong connectionPtr, jbyteArray keyArray) {
142+
int rc = SQLITE_ERROR;
143143
jsize size = 0;
144144
jbyte *key = nullptr;
145145
auto* connection = reinterpret_cast<SQLiteConnection*>(connectionPtr);
@@ -156,6 +156,7 @@ static void nativeKey(JNIEnv* env, jclass clazz, jlong connectionPtr, jbyteArray
156156
ALOGE("sqlite3_key(%p) failed: %d", connection->db, rc);
157157
throw_sqlite3_exception(env, connection->db, "Could not key db.");
158158
}
159+
return rc;
159160
}
160161

161162
static jlong nativeOpen(JNIEnv* env, jclass clazz, jstring pathStr, jint openFlags,
@@ -832,7 +833,7 @@ static jboolean nativeHasCodec(JNIEnv* env, jobject clazz){
832833
static JNINativeMethod sMethods[] =
833834
{
834835
/* name, signature, funcPtr */
835-
{"nativeKey", "(J[B)V",
836+
{"nativeKey", "(J[B)I",
836837
(void*)nativeKey },
837838
{"nativeOpen", "(Ljava/lang/String;ILjava/lang/String;ZZ)J",
838839
(void*)nativeOpen },

0 commit comments

Comments
 (0)