[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix.spec
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -2,6 +2,6 @@
<service name="tar_git">
<param name="url">https://gitlab.com/HengYeDev/harbour-sailtrix</param>
<param name="branch">master</param>
- <param name="revision">1.3.4</param>
+ <param name="revision">1.3.6</param>
</service>
</services>
|
[-]
[+]
|
Deleted |
_service:tar_git:harbour-sailtrix-1.3.4.tar.bz2/README
^
|
@@ -1,21 +0,0 @@
-Sailtrix is a matrix client for SailfishOS supporting end-to-end encryption among many other features. Currently in beta state and is intended to become more feature-rich over time.
-
-# Features
-
- Logging in with username and password
- Reading the past messages in a room (currently limited to loading 30 at a time)
- Sending messages
- Sending messages in reply
- Editing messages
- Deleting messages
- Starting direct messages
- Ignoring and unignoring users
- Basic end-to-end encryption support (ALPHA STATE - please do not use when security is important, it is more than a proof of concept but not in a beta state yet)
-
-Sailtrix features a message cache to load only the newest messages when you open a room, improving its performace significantly. However, it can corrupt at times, and may cause strange behavior, such as the wrong avatars being displayed. It is easy to clear this cache in the settings.
-
-There are currently many features that are not implemented. Please see the <a href="https://gitlab.com/HengYeDev/harbour-sailtrix/-/issues">GitLab issue tracker</a> for an incomplete list. Feel free to add to it if you want a feature to be implemented.
-
-# Legal notice
-
-The software may be subject to the U.S. export control laws and regulations and by downloading the software the user certifies that he/she/it is authorized to do so in accordance with those export control laws and regulations.
|
[-]
[+]
|
Added |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/README.md
^
|
@@ -0,0 +1,13 @@
+# Welcome to the Sailtrix GitLab
+
+Sailtrix is a matrix client for SailfishOS supporting end-to-end encryption among many other features. Currently in beta state and is intended to become more feature-rich over time. This GitLab is used for code storage, issue management, and contributions.
+
+There are currently many features that are not implemented. Please see the <a href="https://gitlab.com/HengYeDev/harbour-sailtrix/-/issues">GitLab issue tracker</a> for an incomplete list. Feel free to add to it if you want a feature to be implemented.
+
+## Donate
+
+[PayPal](https://www.paypal.com/donate?business=YXF5TAF4A3H96&no_recurring=0&item_name=Assist+with+the+development+of+Sailtrix¤cy_code=USD) or [Liberapay](https://liberapay.com/HengYe/donate)
+
+# Legal notice
+
+The software may be subject to the U.S. export control laws and regulations and by downloading the software the user certifies that he/she/it is authorized to do so in accordance with those export control laws and regulations.
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/harbour-sailtrix.desktop
^
|
@@ -9,7 +9,7 @@
MimeType=x-scheme-handler/matrix;x-url-handler/matrix.to
-[X-Sailjail]
-Permissions=Internet;Audio;Documents;Downloads;UserDirs;Pictures;Videos;Music;RemovableMedia
-OrganizationName=org.yeheng
-ApplicationName=sailtrix
+#[X-Sailjail]
+#Permissions=Internet;Audio;Documents;Downloads;UserDirs;Pictures;Videos;Music;RemovableMedia
+#OrganizationName=org.yeheng
+#ApplicationName=sailtrix
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/harbour-sailtrix.pro
^
|
@@ -220,6 +220,4 @@
# QMAKE_CXXFLAGS += -fsanitize=address
# QMAKE_LFLAGS += -fsanitize=address
-unix:!macx: LIBS += -lssl -lcrypto
PKGCONFIG += sailfishsecrets sailfishcrypto keepalive nemonotifications-qt5
-
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/harbour-sailtrix.pro.user
^
|
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
-<!-- Written by QtCreator 4.15.2, 2021-10-31T09:03:41. -->
+<!-- Written by QtCreator 4.15.2, 2021-11-14T09:06:09. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
@@ -1087,6 +1087,341 @@
<value type="int" key="MerRunConfiguration.QmlLiveIpcPort">-1</value>
<value type="int" key="MerRunConfiguration.QmlLiveOptions">3</value>
<value type="QString" key="MerRunConfiguration.QmlLiveTargetWorkspace"></value>
+ <value type="int" key="PE.EnvironmentAspect.Base">1</value>
+ <valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">harbour-sailtrix</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRunConfiguration:/home/heng/ssd-data/SailfishApps/Sailtrix/harbour-sailtrix.pro</value>
+ <value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">/home/heng/ssd-data/SailfishApps/Sailtrix/harbour-sailtrix.pro</value>
+ <value type="int" key="RemoteLinux.EnvironmentAspect.Version">1</value>
+ <value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
+ <value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
+ <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
+ <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
+ <value type="QString" key="RunConfiguration.X11Forwarding">:1</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
+ </valuemap>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.Target.3</variable>
+ <valuemap type="QVariantMap">
+ <value type="QString" key="DeviceType">Mer.Device.Type</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">SailfishOS-4.3.0.12EA-i486 (in Sailfish SDK Build Engine)</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">SailfishOS-4.3.0.12EA-i486 (in Sailfish SDK Build Engine)</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">SailfishOS-4.3.0.12EA-i486.default</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
+ <value type="int" key="EnableQmlDebugging">0</value>
+ <value type="bool" key="MerBuildConfiguration.SignPackages">false</value>
+ <value type="QString" key="MerBuildConfiguration.SigningPassphraseFile"></value>
+ <value type="QString" key="MerBuildConfiguration.SigningUser"></value>
+ <value type="QString" key="MerSfdkConfigurationAspect.Options"></value>
+ <value type="QString" key="MerSpecFileAspect.Path"></value>
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/heng/ssd-data/SailfishApps/build-harbour-sailtrix-SailfishOS_4_3_0_12EA_i486_in_Sailfish_SDK_Build_Engine-Debug</value>
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory.shadowDir">/home/heng/ssd-data/SailfishApps/build-harbour-sailtrix-SailfishOS_4_3_0_12EA_i486_in_Sailfish_SDK_Build_Engine-Debug</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerSdkStartStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
+ <valuelist type="QVariantList" key="QtProjectManager.QMakeBuildStep.SelectedAbis"/>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.2">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">3</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerSdkStartStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="QString" key="MerClearBuildEnvironmentStep.Arguments">reset</value>
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerClearBuildEnvironmentStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.2">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">3</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
+ <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
+ <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
+ <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Debug</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
+ <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
+ <value type="int" key="RunSystemFunction">1</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
+ <value type="bool" key="MerBuildConfiguration.SignPackages">false</value>
+ <value type="QString" key="MerBuildConfiguration.SigningPassphraseFile"></value>
+ <value type="QString" key="MerBuildConfiguration.SigningUser"></value>
+ <value type="QString" key="MerSfdkConfigurationAspect.Options"></value>
+ <value type="QString" key="MerSpecFileAspect.Path"></value>
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/heng/ssd-data/SailfishApps/build-harbour-sailtrix-SailfishOS_4_3_0_12EA_i486_in_Sailfish_SDK_Build_Engine-Release</value>
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory.shadowDir">/home/heng/ssd-data/SailfishApps/build-harbour-sailtrix-SailfishOS_4_3_0_12EA_i486_in_Sailfish_SDK_Build_Engine-Release</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerSdkStartStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
+ <valuelist type="QVariantList" key="QtProjectManager.QMakeBuildStep.SelectedAbis"/>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.2">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">3</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerSdkStartStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="QString" key="MerClearBuildEnvironmentStep.Arguments">reset</value>
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerClearBuildEnvironmentStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.2">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">3</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
+ <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
+ <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
+ <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Release</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
+ <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
+ <value type="int" key="RunSystemFunction">1</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
+ <value type="int" key="EnableQmlDebugging">0</value>
+ <value type="bool" key="MerBuildConfiguration.SignPackages">false</value>
+ <value type="QString" key="MerBuildConfiguration.SigningPassphraseFile"></value>
+ <value type="QString" key="MerBuildConfiguration.SigningUser"></value>
+ <value type="QString" key="MerSfdkConfigurationAspect.Options"></value>
+ <value type="QString" key="MerSpecFileAspect.Path"></value>
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/heng/ssd-data/SailfishApps/build-harbour-sailtrix-SailfishOS_4_3_0_12EA_i486_in_Sailfish_SDK_Build_Engine-Profile</value>
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory.shadowDir">/home/heng/ssd-data/SailfishApps/build-harbour-sailtrix-SailfishOS_4_3_0_12EA_i486_in_Sailfish_SDK_Build_Engine-Profile</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerSdkStartStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
+ <valuelist type="QVariantList" key="QtProjectManager.QMakeBuildStep.SelectedAbis"/>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.2">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">3</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerSdkStartStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="QString" key="MerClearBuildEnvironmentStep.Arguments">reset</value>
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Mer.MerClearBuildEnvironmentStep</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.2">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">3</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/qml/pages/Credits.qml
^
|
@@ -18,7 +18,7 @@
spacing: Theme.paddingLarge
Label {
- text: "Sailtrix 1.3.4"
+ text: "Sailtrix 1.3.6"
color: Theme.highlightColor
font.family: Theme.fontFamilyHeading
font.pixelSize: Theme.fontSizeLarge
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/qml/pages/Messages.qml
^
|
@@ -397,10 +397,10 @@
anchors.right: parent.right
onClicked: {
replyRect.visible = false;
- list.anchors.bottom = messageArea.bottom
+ list.anchors.bottom = messageArea.top
messageArea.text = "";
backend.reply_mid = "";
- backend.edit_event_id = "";
+ backend.edit_event_id = "";
}
}
}
@@ -412,20 +412,7 @@
anchors.bottom: parent.bottom
anchors.right: sendButton.left
anchors.left: parent.left
- placeholderColor: Theme.secondaryHighlightColor
font.pixelSize: Theme.fontSizeSmall
- color: Theme.highlightColor
-
- background: Rectangle {
- width: messageArea.width
- height: messageArea.height
- color: Theme.rgba(Theme.primaryColor, 0)
-
- // color: Theme.colorScheme === Theme.DarkOnLight
- // ? Qt.darker(Theme.highlightBackgroundColor, Theme.highlightBackgroundOpacity)
- //: Qt.lighter(Theme.highlightBackgroundColor, Theme.highlightBackgroundOpacity)
- }
-
}
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/src/enc-util.cpp
^
|
@@ -8,8 +8,6 @@
#include <QDebug>
#include <olm/olm.hh>
#include <QUuid>
-#include <openssl/evp.h>
-#include <openssl/rand.h>
#include <Sailfish/Secrets/secret.h>
#include <Sailfish/Secrets/secretmanager.h>
#include <Sailfish/Secrets/createcollectionrequest.h>
@@ -27,6 +25,7 @@
#include <Sailfish/Crypto/encryptrequest.h>
#include <Sailfish/Crypto/decryptrequest.h>
#include <Sailfish/Crypto/generatekeyrequest.h>
+#include <Sailfish/Crypto/generaterandomdatarequest.h>
#include "enc-util.h"
using namespace Sailfish;
@@ -565,47 +564,6 @@
return req.plaintext();
}
-QByteArray file_dec(QByteArray ciphertext, QByteArray key, QByteArray iv) {
- EVP_CIPHER_CTX *ctx;
- if (!(ctx = EVP_CIPHER_CTX_new())) {
- qWarning() << "Could not initialize cipher";
- return nullptr;
- }
-
- size_t result = EVP_DecryptInit_ex(ctx, EVP_aes_256_ctr(), NULL, (unsigned char*) key.data(), (unsigned char*) iv.data());
- if (result != 1) {
- qWarning() << "Could not initialize decryptor";
- return nullptr;
- }
-
- unsigned char* plaintext = (unsigned char*) malloc(ciphertext.length());
- int outl = ciphertext.length();
-
- int plaintext_len = outl;
-
- size_t decrypt_result = EVP_DecryptUpdate(ctx, plaintext, &outl, (unsigned char*) ciphertext.data(), ciphertext.length());
-
- if (decrypt_result != 1) {
- qWarning() << "Could not decrypt";
- free(plaintext);
- return nullptr;
- }
-
- plaintext_len = outl;
-
- size_t decrypt_final = EVP_DecryptFinal_ex(ctx, plaintext + outl, &outl);
-
- if (decrypt_final != 1) {
- qWarning() << "Could not finalize";
- free(plaintext);
- return nullptr;
- }
-
- plaintext_len += outl;
- EVP_CIPHER_CTX_free(ctx);
-
- return QByteArray((char*) plaintext, plaintext_len);
-}
Secrets::Secret::Identifier config_secret_id() {
return Secrets::Secret::Identifier(QStringLiteral("Config"), QStringLiteral("SailtrixWallet2"), Sailfish::Secrets::SecretManager::DefaultEncryptedStoragePluginName);
@@ -843,7 +801,7 @@
params.setSalt(QByteArray("org.yeheng.sailtrix"));
uchar* random = new uchar[64];
- RAND_bytes(random, 64);
+ SailfishCryptoRAND_bytes(random, 64, manager);
params.setInputData(QByteArray((char*) random));
Crypto::GenerateKeyRequest gen_key_req;
@@ -898,3 +856,16 @@
return req.ciphertext();
}
+
+int SailfishCryptoRAND_bytes(unsigned char* buf, int num, Crypto::CryptoManager* manager) {
+ Crypto::GenerateRandomDataRequest request;
+ request.setManager(manager);
+ request.setCryptoPluginName(Crypto::CryptoManager::DefaultCryptoStoragePluginName);
+ request.setCsprngEngineName(QStringLiteral("/dev/urandom"));
+ request.setNumberBytes(num);
+ request.startRequest();
+ request.waitForFinished();
+ QByteArray randomBytes = request.generatedData();
+ memcpy(buf, randomBytes.data(), num);
+ return 1;
+}
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/src/enc-util.h
^
|
@@ -36,8 +36,8 @@
Crypto::Key get_key(Crypto::CryptoManager* manager, Crypto::Key::Identifier id);
QByteArray encrypt_bytes(Crypto::CryptoManager* manager, Crypto::Key key, QByteArray data);
QByteArray decrypt_bytes(Crypto::CryptoManager* manager, Crypto::Key key, QByteArray data);
-QByteArray file_dec(QByteArray ciphertext, QByteArray key, QByteArray iv);
QByteArray file_dec2(Crypto::CryptoManager* manager, QByteArray ciphertext, QByteArray key, QByteArray iv);
QByteArray encrypt_bytes(Crypto::CryptoManager* manager, QByteArray data, QString& key_str, QString& iv_str);
+int SailfishCryptoRAND_bytes(unsigned char* buf, int num, Crypto::CryptoManager* manager);
#endif // ENCUTIL_H
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/src/loginbridge.cpp
^
|
@@ -9,7 +9,6 @@
#include <QStandardPaths>
#include <QFile>
#include <QDir>
-#include <openssl/rand.h>
#include <Sailfish/Secrets/secretmanager.h>
#include <Sailfish/Secrets/secret.h>
#include <Sailfish/Secrets/interactionparameters.h>
@@ -28,11 +27,13 @@
void LoginBridge::login() {
setError(nullptr);
+ qDebug() << "Clicked";
manager = new QNetworkAccessManager(this);
connect(manager, &QNetworkAccessManager::finished, this, &LoginBridge::doServerDiscovery);
keys_upload = new QNetworkAccessManager(this);
connect(keys_upload, &QNetworkAccessManager::finished, this, &LoginBridge::finishUploadKeys);
manager->get(QNetworkRequest(QUrl(QString("https://") + m_homeserverUrl + "/.well-known/matrix/client")));
+ qDebug() << "After get";
}
QString LoginBridge::homeserverUrl() {
@@ -219,7 +220,7 @@
qFatal("Cannot allocate memory for random buffer");
}
- RAND_bytes(random, olm_create_account_random_length(account));
+ SailfishCryptoRAND_bytes(random, olm_create_account_random_length(account), &m_cryptoManager);
size_t err = olm_create_account(account, random, olm_create_account_random_length(account));
@@ -259,7 +260,7 @@
qFatal("Cannot allocate memory for random buffer");
}
- RAND_bytes(random_for_otk, olm_account_generate_one_time_keys_random_length(account, amount_keys_needed));
+ SailfishCryptoRAND_bytes(random_for_otk, olm_account_generate_one_time_keys_random_length(account, amount_keys_needed), &m_cryptoManager);
size_t result = olm_account_generate_one_time_keys(account, amount_keys_needed, random_for_otk, olm_account_generate_one_time_keys_random_length(account, amount_keys_needed));
if (result == olm_error()) {
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/src/messages.cpp
^
|
@@ -18,7 +18,6 @@
#include <QCryptographicHash>
#include <QRegularExpression>
#include "messagesmodel.h"
-#include <openssl/rand.h>
#include <olm/olm.h>
#include "enc-util.h"
@@ -850,7 +849,7 @@
qFatal("Cannot allocate memory");
}
- RAND_bytes(random_for_encrypt, olm_encrypt_random_length(session));
+ SailfishCryptoRAND_bytes(random_for_encrypt, olm_encrypt_random_length(session), &m_cryptoManager);
QString to_encrypt_str = get_olm_plaintext(room_key_to_encrypt, m_user_id, user_id, device_ed25519_key, m_ed25519_key);
@@ -1460,7 +1459,7 @@
qFatal("Cannot allocate memory");
}
- RAND_bytes(random, olm_init_outbound_group_session_random_length(outbound_megolm_session));
+ SailfishCryptoRAND_bytes(random, olm_init_outbound_group_session_random_length(outbound_megolm_session), &m_cryptoManager);
size_t create_result = olm_init_outbound_group_session(outbound_megolm_session, random, olm_init_outbound_group_session_random_length(outbound_megolm_session));
free(random);
@@ -1671,7 +1670,7 @@
qFatal("Cannot allocate memory");
}
- RAND_bytes(random, olm_create_outbound_session_random_length(session));
+ SailfishCryptoRAND_bytes(random, olm_create_outbound_session_random_length(session), &m_cryptoManager);
size_t result = olm_create_outbound_session(session,
account,
@@ -1711,7 +1710,7 @@
qFatal("Cannot allocate memory");
}
- RAND_bytes(random_for_encrypt, olm_encrypt_random_length(session));
+ SailfishCryptoRAND_bytes(random_for_encrypt, olm_encrypt_random_length(session), &m_cryptoManager);
QString rk_str = get_olm_plaintext(room_key_to_encrypt, m_user_id, user_id, device_ed25519_key, m_ed25519_key);
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/src/rooms.cpp
^
|
@@ -12,7 +12,6 @@
#include <QMimeDatabase>
#include <QUrl>
#include <QSortFilterProxyModel>
-#include <openssl/rand.h>
#include "enc-util.h"
RoomsModel* Rooms::rooms() { return m_rooms; }
@@ -206,7 +205,7 @@
qFatal("Cannot allocate memory for one time keys");
}
- RAND_bytes(random_for_otk, olm_account_generate_one_time_keys_random_length(account, needed));
+ SailfishCryptoRAND_bytes(random_for_otk, olm_account_generate_one_time_keys_random_length(account, needed), &m_cryptoManager);
size_t error = olm_account_generate_one_time_keys(account, needed, random_for_otk, olm_account_generate_one_time_keys_random_length(account, needed));
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix-1.3.6.tar.bz2/translations/harbour-sailtrix.ts
^
|
@@ -218,27 +218,27 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/Messages.qml" line="453"/>
+ <location filename="../qml/pages/Messages.qml" line="440"/>
<source>New Messages</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/Messages.qml" line="474"/>
+ <location filename="../qml/pages/Messages.qml" line="461"/>
<source>Send file</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../src/messages.cpp" line="1289"/>
+ <location filename="../src/messages.cpp" line="1288"/>
<source> invited </source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../src/messages.cpp" line="1293"/>
+ <location filename="../src/messages.cpp" line="1292"/>
<source> changed their profile</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../src/messages.cpp" line="1295"/>
+ <location filename="../src/messages.cpp" line="1294"/>
<source> joined</source>
<translation type="unfinished"></translation>
</message>
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-sailtrix.yaml
^
|
@@ -1,7 +1,7 @@
Name: harbour-sailtrix
Summary: Matrix client for SailfishOS
-Version: 1.3.4
-Release: 0
+Version: 1.3.6
+Release: 1
# The contents of the Group field should be one of the groups listed here:
# https://github.com/mer-tools/spectacle/blob/master/data/GROUPS
Group: Qt/Qt
@@ -24,14 +24,9 @@
- Qt5Quick
- sailfishsecrets
- sailfishcrypto
- - libcrypto
- nemonotifications-qt5
- keepalive
-# Build dependencies without a pkgconfig setup can be listed here
-# PkgBR:
-# - package-needed-to-build
-
# Runtime dependencies which are not automatically detected
Requires:
- sailfishsilica-qt5 >= 0.10.9
|