<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/c74bed9b59a072b5ef3958aee0ccc81d7f154e82">https://github.com/macports/macports-ports/commit/c74bed9b59a072b5ef3958aee0ccc81d7f154e82</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new c74bed9b59a KeePassXC: upgrade to 2.7.1
</span>c74bed9b59a is described below
<span style='display:block; white-space:pre;color:#808000;'>commit c74bed9b59a072b5ef3958aee0ccc81d7f154e82
</span>Author: tenzap <fabstz-it@yahoo.fr>
AuthorDate: Thu Apr 7 09:21:32 2022 +0200
<span style='display:block; white-space:pre;color:#404040;'> KeePassXC: upgrade to 2.7.1
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> - upgrade to 2.7.1
</span><span style='display:block; white-space:pre;color:#404040;'> - remove patches that were merged upstream
</span><span style='display:block; white-space:pre;color:#404040;'> - update patch-touch-id.diff patch
</span><span style='display:block; white-space:pre;color:#404040;'> - upgrade also KeePassXC-devel
</span><span style='display:block; white-space:pre;color:#404040;'> - add versioned openssl to license_noconflict
</span>---
security/KeePassXC/Portfile | 28 +++++------
.../KeePassXC/files/patch-minizip-include.diff | 56 ----------------------
security/KeePassXC/files/patch-qt56-qoverload.diff | 26 ----------
security/KeePassXC/files/patch-touch-id.diff | 54 ++++++++++-----------
4 files changed, 37 insertions(+), 127 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/KeePassXC/Portfile b/security/KeePassXC/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index d89bc66729b..80765b479fb 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/KeePassXC/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/security/KeePassXC/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,12 +28,12 @@ long_description KeePassXC is a community fork of KeePassX with the \
</span> cross-platform and modern open-source password manager.
platforms darwin
license GPL-2+
<span style='display:block; white-space:pre;background:#ffe0e0;'>-license_noconflict openssl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license_noconflict openssl openssl10 openssl11 openssl3
</span>
if {${subport} eq ${name}} {
# stable
<span style='display:block; white-space:pre;background:#ffe0e0;'>- github.setup keepassxreboot keepassxc 2.7.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ github.setup keepassxreboot keepassxc 2.7.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 0
</span> github.tarball_from releases
distname keepassxc-${version}-src
use_xz yes
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -43,12 +43,12 @@ if {${subport} eq ${name}} {
</span>
# See keepassxc-${version}-src.tar.xz.DIGEST on upstream GitHub releases page for SHA256 sums
checksums ${distname}${extract.suffix} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- rmd160 fcf7ffbe37c127f24d4e16f6534fa0c3ef4dd1fd \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 83be76890904cd6703343fa097d68bcfdd99bb525cf518fa62a7df9293026aa7 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 8846780 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rmd160 e5adf2843c99391f5fdd150caee4cdc4254ab155 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 6001ba626c35c316dbda6de35736f012a2264f95139fcb4a094b8eb49b15d3e7 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 8804436 \
</span> ${distname}${extract.suffix}.sig \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- rmd160 b6e7541eb6556f0dd2b8c826a704570a185aeca1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 031c60741148076a9ec0d6b67d31a608c0e7639215a4291a2a107bd961b38e73 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rmd160 8faa589c6d808630d38a0da0ad0fe2c69aab070b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 197a206c10a0c51e9e50aef7a245cc6a99955d928ac3dfb549998953a614bf04 \
</span> size 488
gpg_verify.use_gpg_verification \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -56,16 +56,16 @@ if {${subport} eq ${name}} {
</span>
} else {
# devel subport
<span style='display:block; white-space:pre;background:#ffe0e0;'>- github.setup keepassxreboot keepassxc 4178e72fe04eb97d0787c006b03993c87baa26c3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ github.setup keepassxreboot keepassxc 5916a8f8dd93eb6a5de544caedd7a9d8e9a3b1ee
</span> set githash [string range ${github.version} 0 6]
<span style='display:block; white-space:pre;background:#ffe0e0;'>- version 20220323+git${githash}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ version 20220406+git${githash}
</span> revision 0
conflicts KeePassXC
<span style='display:block; white-space:pre;background:#ffe0e0;'>- checksums rmd160 f330d85018a430b54e3e5aca93baba8722ab18e5 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 04011a97e0f25ccc5cfe12608a61e01174f8102017661add361636a01b619c44 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 11205362
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 a2c24f7f12b19baaf47a4f25399f33bee6cefe13 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 5193db2c656bdbb29605df573057e23316e4572327d616b6ac052e857cf4af73 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 11171009
</span>
gpg_verify.use_gpg_verification \
no
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -103,8 +103,6 @@ depends_lib-append port:argon2 \
</span>
patchfiles patch-no-deployqt.diff \
patch-no-findpackage-path.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-qt56-qoverload.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-minizip-include.diff \
</span> patch-touch-id.diff
# KeePassXC uses -fstack-protector-strong on Clang [1]. That flag is not
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/KeePassXC/files/patch-minizip-include.diff b/security/KeePassXC/files/patch-minizip-include.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 34dfce57264..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/KeePassXC/files/patch-minizip-include.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,56 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 31db3c325d2ffc9dedc240d8ac5036fe6f1cf5c3 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: Jonathan White <support@dmapps.us>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Thu, 24 Mar 2022 22:53:02 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] Fix compiling with minizip-ng
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-* minizip-ng has slightly different defines and function names than the original minizip. These changes adapt the existing code to use the minizip-ng versions if necessary.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/keeshare/CMakeLists.txt | 1 -
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/keeshare/ShareExport.cpp | 9 ++++++++-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/keeshare/ShareImport.cpp | 2 +-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3 files changed, 9 insertions(+), 3 deletions(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/keeshare/CMakeLists.txt b/src/keeshare/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 9fcc55dc28..a108b784b8 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/keeshare/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/keeshare/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -17,6 +17,5 @@ if(WITH_XC_KEESHARE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- add_library(keeshare STATIC ${keeshare_SOURCES})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- target_link_libraries(keeshare PUBLIC Qt5::Core Qt5::Widgets ${BOTAN2_LIBRARIES} ${ZLIB_LIBRARIES} PRIVATE ${MINIZIP_LIBRARIES})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- target_include_directories(keeshare SYSTEM PRIVATE ${MINIZIP_INCLUDE_DIR})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- endif(WITH_XC_KEESHARE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/keeshare/ShareExport.cpp b/src/keeshare/ShareExport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index a457033af7..d43ef73cb3 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/keeshare/ShareExport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/keeshare/ShareExport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -27,7 +27,14 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <QBuffer>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <botan/pubkey.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#include <zip.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <minizip/zip.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+// Compatibility with minizip-ng
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifdef MZ_VERSION_BUILD
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#undef Z_BEST_COMPRESSION
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define Z_BEST_COMPRESSION MZ_COMPRESS_LEVEL_BEST
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define zipOpenNewFileInZip64 zipOpenNewFileInZip_64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- namespace
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/keeshare/ShareImport.cpp b/src/keeshare/ShareImport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 123486456e..eb93912e76 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/keeshare/ShareImport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/keeshare/ShareImport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -21,7 +21,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "keys/PasswordKey.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <QBuffer>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#include <unzip.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <minizip/unzip.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- namespace
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/KeePassXC/files/patch-qt56-qoverload.diff b/security/KeePassXC/files/patch-qt56-qoverload.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0212d22540c..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/KeePassXC/files/patch-qt56-qoverload.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,26 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-commit f7391d904999138158d9bca9e7c34ef18550e2fe
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Author: tenzap <fabstz-it@yahoo.fr>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Sat Mar 26 11:23:32 2022 +0100
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- fix compilation of TagsEdit.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- qOverload appeared with qt5.7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Reported error:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- keepassxc-2.7.0-src/src/gui/tag/TagsEdit.cpp:414:34: error: use of undeclared identifier 'qOverload'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- connect(completer.get(), qOverload<QString const&>(&QCompleter::activated), [this](QString const& text) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ^
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/gui/tag/TagsEdit.cpp b/src/gui/tag/TagsEdit.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index b4bfb7f..a347940 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/gui/tag/TagsEdit.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/gui/tag/TagsEdit.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -411,7 +411,7 @@ struct TagsEdit::Impl
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void setupCompleter()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- completer->setWidget(ifce);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- connect(completer.get(), qOverload<QString const&>(&QCompleter::activated), [this](QString const& text) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ connect(completer.get(), static_cast<void (QCompleter::*)(QString const&)>(&QCompleter::activated), [this](QString const& text) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- currentText(text);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- });
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/KeePassXC/files/patch-touch-id.diff b/security/KeePassXC/files/patch-touch-id.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 86b3c1ae1dd..c4df5f8173d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/KeePassXC/files/patch-touch-id.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/security/KeePassXC/files/patch-touch-id.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,16 +1,14 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-commit 1e927a3ae50211f9bcff54858d04fc4474bfe13d
</span> Author: tenzap <fabstz-it@yahoo.fr>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Sat Mar 26 10:44:33 2022 +0100
</span>
restore WITH_XC_TOUCHID configure option
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> To be able to compile on macOS versions that don't support TouchID and related APIs
diff --git a/CMakeLists.txt b/CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index baa399d..a685ff0 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index db732d67..40a1c95e 100644
</span> --- CMakeLists.txt
+++ CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -59,6 +59,9 @@ option(WITH_XC_UPDATECHECK "Include automatic update checks; disable for control
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -60,6 +60,9 @@ option(WITH_XC_UPDATECHECK "Include automatic update checks; disable for control
</span> if(UNIX AND NOT APPLE)
option(WITH_XC_FDOSECRETS "Implement freedesktop.org Secret Storage Spec server side API." OFF)
endif()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -20,7 +18,7 @@ index baa399d..a685ff0 100644
</span> option(WITH_XC_DOCS "Enable building of documentation" ON)
if(WITH_CCACHE)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -82,6 +85,9 @@ if(WITH_XC_ALL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -83,6 +86,9 @@ if(WITH_XC_ALL)
</span> if(UNIX AND NOT APPLE)
set(WITH_XC_FDOSECRETS ON)
endif()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -31,10 +29,10 @@ index baa399d..a685ff0 100644
</span>
# Prefer WITH_XC_NETWORKING setting over WITH_XC_UPDATECHECK
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 38d162e..d46a163 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c4f66e71..b35bfc18 100644
</span> --- src/CMakeLists.txt
+++ src/CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -240,6 +240,9 @@ add_feature_info(UpdateCheck WITH_XC_UPDATECHECK "Automatic update checking")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -239,6 +239,9 @@ add_feature_info(UpdateCheck WITH_XC_UPDATECHECK "Automatic update checking")
</span> if(UNIX AND NOT APPLE)
add_feature_info(FdoSecrets WITH_XC_FDOSECRETS "Implement freedesktop.org Secret Storage Spec server side API.")
endif()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -44,7 +42,7 @@ index 38d162e..d46a163 100644
</span>
add_subdirectory(browser)
add_subdirectory(proxy)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -351,10 +354,13 @@ if(WITH_XC_KEESHARE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -350,10 +353,13 @@ if(WITH_XC_KEESHARE)
</span> endif()
if(APPLE)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -60,7 +58,7 @@ index 38d162e..d46a163 100644
</span> if(HAIKU)
target_link_libraries(keepassx_core network)
diff --git a/src/config-keepassx.h.cmake b/src/config-keepassx.h.cmake
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 6b855c6..da94bba 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6caa89d8..5ba60860 100644
</span> --- src/config-keepassx.h.cmake
+++ src/config-keepassx.h.cmake
@@ -19,6 +19,7 @@
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -72,7 +70,7 @@ index 6b855c6..da94bba 100644
</span> #cmakedefine WITH_XC_DOCS
diff --git a/src/gui/DatabaseOpenWidget.cpp b/src/gui/DatabaseOpenWidget.cpp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index bfa4af1..2e7ebf4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d5c9707f..3de214a2 100644
</span> --- src/gui/DatabaseOpenWidget.cpp
+++ src/gui/DatabaseOpenWidget.cpp
@@ -59,7 +59,7 @@ namespace
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -84,7 +82,7 @@ index bfa4af1..2e7ebf4 100644
</span> return TouchID::getInstance().containsKey(filename);
#endif
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -279,7 +279,7 @@ void DatabaseOpenWidget::openDatabase()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -280,7 +280,7 @@ void DatabaseOpenWidget::openDatabase()
</span> #if defined(Q_CC_MSVC)
// Store the password using Windows Hello
getWindowsHello()->storeKey(m_filename, keyData);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -93,7 +91,7 @@ index bfa4af1..2e7ebf4 100644
</span> // Store the password using TouchID
TouchID::getInstance().storeKey(m_filename, keyData);
#endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -336,7 +336,7 @@ QSharedPointer<CompositeKey> DatabaseOpenWidget::buildDatabaseKey()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -337,7 +337,7 @@ QSharedPointer<CompositeKey> DatabaseOpenWidget::buildDatabaseKey()
</span> m_ui->messageWidget->showMessage(tr("Failed to authenticate with Windows Hello"), MessageWidget::Error);
return {};
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -102,8 +100,8 @@ index bfa4af1..2e7ebf4 100644
</span> if (!TouchID::getInstance().getKey(m_filename, keyData)) {
// Failed to retrieve Quick Unlock data
m_ui->messageWidget->showMessage(tr("Failed to authenticate with Touch ID"), MessageWidget::Error);
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -532,7 +532,7 @@ void DatabaseOpenWidget::resetQuickUnlock()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -541,7 +541,7 @@ void DatabaseOpenWidget::resetQuickUnlock()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> #if defined(Q_CC_MSVC)
getWindowsHello()->reset(m_filename);
-#elif defined(Q_OS_MACOS)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -112,7 +110,7 @@ index bfa4af1..2e7ebf4 100644
</span> #endif
load(m_filename);
diff --git a/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp b/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 2dae5cb..e5c5cff 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2dae5cbb..e5c5cff9 100644
</span> --- src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp
+++ src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp
@@ -200,7 +200,7 @@ bool DatabaseSettingsWidgetDatabaseKey::save()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -125,7 +123,7 @@ index 2dae5cb..e5c5cff 100644
</span> #elif defined(Q_CC_MSVC)
getWindowsHello()->reset(m_db->filePath());
diff --git a/src/touchid/TouchID.mm b/src/touchid/TouchID.mm
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 236711e..668a41b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e7539262..c6d127ce 100644
</span> --- src/touchid/TouchID.mm
+++ src/touchid/TouchID.mm
@@ -1,7 +1,9 @@
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -146,7 +144,7 @@ index 236711e..668a41b 100644
</span>
/**
* Singleton
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -35,6 +38,7 @@ inline QString hash(const QString& value)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -35,6 +38,7 @@ TouchID& TouchID::getInstance()
</span> return instance;
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -154,7 +152,7 @@ index 236711e..668a41b 100644
</span> /**
* Generates a random AES 256bit key and uses it to encrypt the PasswordKey that
* protects the database. The encrypted PasswordKey is kept in memory while the
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -230,12 +234,16 @@ inline QString hash(const QString& value)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -232,13 +236,14 @@ bool TouchID::containsKey(const QString& dbPath) const
</span> {
return m_encryptedMasterKeys.contains(dbPath);
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -165,24 +163,20 @@ index 236711e..668a41b 100644
</span> */
bool TouchID::isAvailable()
{
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifndef WITH_XC_TOUCHID
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return false;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if MAC_OS_X_VERSION_MIN_REQUIRED < 101201
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED < 101201 || !defined(WITH_XC_TOUCHID)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span> // cache result
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if (this->m_available != TOUCHID_UNDEFINED) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return (this->m_available == TOUCHID_AVAILABLE);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -264,8 +272,10 @@ inline QString hash(const QString& value)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- this->m_available = TOUCHID_NOT_AVAILABLE;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return false;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif //defined(WITH_XC_TOUCHID)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -272,6 +277,7 @@ bool TouchID::isAvailable()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span> }
+#ifdef WITH_XC_TOUCHID
typedef enum
{
kTouchIDResultNone,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -329,3 +339,4 @@ inline QString hash(const QString& value)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -337,3 +343,4 @@ void TouchID::reset(const QString& databasePath)
</span>
this->m_encryptedMasterKeys.remove(databasePath);
}
</pre><pre style='margin:0'>
</pre>