[network/ruqola] src/core/localdatabase: Use e2erooms
Laurent Montel <[email protected]> Wed, 5 Aug 2026 05:29:20 +0000 (UTC)
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git commit 1c3d26df1f8421851e14ddc63c6623e12e4badf2 by Laurent Montel.
Committed on 05/08/2026 at 05:04.
Pushed by mlaurent into branch 'master'.
Use e2erooms
M +4 -0 src/core/localdatabase/autotests/localdatabasebasetest.cpp
M +9 -9 src/core/localdatabase/e2eroomsdatabase.cpp
M +3 -0 src/core/localdatabase/localdatabasebase.cpp
M +1 -0 src/core/localdatabase/localdatabasebase.h
https://invent.kde.org/network/ruqola/-/commit/1c3d26df1f8421851e14ddc63c6623e12e4badf2
diff --git a/src/core/localdatabase/autotests/localdatabasebasetest.cpp b/src/core/localdatabase/autotests/localdatabasebasetest.cpp
index c8798c299b..7e98be867e 100644
--- a/src/core/localdatabase/autotests/localdatabasebasetest.cpp
+++ b/src/core/localdatabase/autotests/localdatabasebasetest.cpp
@@ -64,5 +64,9 @@ void LocalDatabaseBaseTest::shouldHaveDefaultValues()
TestLocalDatabaseBase w(u"foo/bla/"_s, LocalDatabaseBase::DatabaseType::RoomSubscriptions);
QCOMPARE(w.currentDatabaseName(u"kde"_s), u"roomsubscriptions-kde"_s);
}
+ {
+ TestLocalDatabaseBase w(u"foo/bla/"_s, LocalDatabaseBase::DatabaseType::E2ERooms);
+ QCOMPARE(w.currentDatabaseName(u"kde"_s), u"e2e-rooms-kde"_s);
+ }
}
#include "moc_localdatabasebasetest.cpp"
diff --git a/src/core/localdatabase/e2eroomsdatabase.cpp b/src/core/localdatabase/e2eroomsdatabase.cpp
index 2eeaae365a..0cadc5e606 100644
--- a/src/core/localdatabase/e2eroomsdatabase.cpp
+++ b/src/core/localdatabase/e2eroomsdatabase.cpp
@@ -13,7 +13,7 @@
#include <QSqlQuery>
#include <QSqlTableModel>
using namespace Qt::Literals::StringLiterals;
-static const char s_schemaE2EKeyStore[] = "CREATE TABLE E2EKEYS (userId TEXT PRIMARY KEY NOT NULL, encryptedPrivateKey BLOB, publicKey BLOB)";
+static const char s_schemaE2ERoomsKeysStore[] = "CREATE TABLE E2EROOMSKEYS (userId TEXT PRIMARY KEY NOT NULL, encryptedPrivateKey BLOB, publicKey BLOB)";
enum class E2EFields {
UserId,
EncryptedPrivateKey,
@@ -21,7 +21,7 @@ enum class E2EFields {
}; // in the same order as the table
E2ERoomsDataBase::E2ERoomsDataBase()
- : LocalDatabaseBase(LocalDatabaseUtils::localE2EDatabasePath(), LocalDatabaseBase::DatabaseType::E2E)
+ : LocalDatabaseBase(LocalDatabaseUtils::localE2EDatabasePath(), LocalDatabaseBase::DatabaseType::E2ERooms)
{
}
@@ -29,7 +29,7 @@ E2ERoomsDataBase::~E2ERoomsDataBase() = default;
QString E2ERoomsDataBase::schemaDataBase() const
{
- return QString::fromLatin1(s_schemaE2EKeyStore);
+ return QString::fromLatin1(s_schemaE2ERoomsKeysStore);
}
bool E2ERoomsDataBase::saveKey(const QString &accountName, const QString &userId, const QByteArray &encryptedPrivateKey, const QByteArray &publicKey)
@@ -39,12 +39,12 @@ bool E2ERoomsDataBase::saveKey(const QString &accountName, const QString &userId
return false;
}
QSqlQuery query(db);
- query.prepare(QStringLiteral("INSERT OR REPLACE INTO E2EKEYS (userId, encryptedPrivateKey, publicKey) VALUES (?, ?, ?)"));
+ query.prepare(QStringLiteral("INSERT OR REPLACE INTO E2EROOMSKEYS (userId, encryptedPrivateKey, publicKey) VALUES (?, ?, ?)"));
query.addBindValue(userId);
query.addBindValue(encryptedPrivateKey);
query.addBindValue(publicKey);
if (!query.exec()) {
- qCWarning(RUQOLA_DATABASE_LOG) << "Couldn't insert-or-replace in E2EKEYS table" << db.databaseName() << query.lastError();
+ qCWarning(RUQOLA_DATABASE_LOG) << "Couldn't insert-or-replace in E2EROOMSKEYS table" << db.databaseName() << query.lastError();
return false;
}
return true;
@@ -57,7 +57,7 @@ bool E2ERoomsDataBase::loadKey(const QString &accountName, const QString &userId
return false;
}
QSqlQuery query(db);
- query.prepare(QStringLiteral("SELECT encryptedPrivateKey, publicKey FROM E2EKEYS WHERE userId = ?"));
+ query.prepare(QStringLiteral("SELECT encryptedPrivateKey, publicKey FROM E2EROOMSKEYS WHERE userId = ?"));
query.addBindValue(userId);
if (query.exec() && query.first()) {
encryptedPrivateKey = query.value(0).toByteArray();
@@ -74,7 +74,7 @@ bool E2ERoomsDataBase::deleteKey(const QString &accountName, const QString &user
return false;
}
QSqlQuery query(db);
- query.prepare(QStringLiteral("DELETE FROM E2EKEYS WHERE userId = ?"));
+ query.prepare(QStringLiteral("DELETE FROM E2EROOMSKEYS WHERE userId = ?"));
query.addBindValue(userId);
if (!query.exec()) {
qCWarning(RUQOLA_DATABASE_LOG) << "Couldn't delete from E2EKEYS table" << db.databaseName() << query.lastError();
@@ -90,7 +90,7 @@ bool E2ERoomsDataBase::hasKey(const QString &accountName, const QString &userId)
return false;
}
QSqlQuery query(db);
- query.prepare(QStringLiteral("SELECT 1 FROM E2EKEYS WHERE userId = ?"));
+ query.prepare(QStringLiteral("SELECT 1 FROM E2EROOMSKEYS WHERE userId = ?"));
query.addBindValue(userId);
return query.exec() && query.first();
}
@@ -117,7 +117,7 @@ std::unique_ptr<QSqlTableModel> E2ERoomsDataBase::createE2eModel(const QString &
Q_ASSERT(db.isValid());
Q_ASSERT(db.isOpen());
auto model = std::make_unique<QSqlTableModel>(nullptr, db);
- model->setTable(u"E2EKEYS"_s);
+ model->setTable(u"E2EROOMSKEYS"_s);
model->setSort(int(E2EFields::UserId), Qt::AscendingOrder);
model->select();
return model;
diff --git a/src/core/localdatabase/localdatabasebase.cpp b/src/core/localdatabase/localdatabasebase.cpp
index 32fa389b2a..45c072f0e6 100644
--- a/src/core/localdatabase/localdatabasebase.cpp
+++ b/src/core/localdatabase/localdatabasebase.cpp
@@ -79,6 +79,9 @@ QString LocalDatabaseBase::databaseName(const QString &name) const
case DatabaseType::RoomSubscriptions:
prefix = u"roomsubscriptions-"_s;
break;
+ case DatabaseType::E2ERooms:
+ prefix = u"e2e-rooms-"_s;
+ break;
case DatabaseType::Logger:
break;
}
diff --git a/src/core/localdatabase/localdatabasebase.h b/src/core/localdatabase/localdatabasebase.h
index ff293498a4..8ac6743539 100644
--- a/src/core/localdatabase/localdatabasebase.h
+++ b/src/core/localdatabase/localdatabasebase.h
@@ -21,6 +21,7 @@ public:
Logger,
Global,
E2E,
+ E2ERooms,
PendingTypedInfo,
RoomSubscriptions,
};