Page MenuHome GnuPG

No OneTemporary

diff --git a/Makefile.am b/Makefile.am
index d6e77eea..ab2ea83a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,99 +1,97 @@
# Makefile.am - Installer for GnuPG 4 Windows Makefile.
# Copyright (C) 2005, 2008, 2012 g10 Code GmbH
#
# This file is part of GPG4Win.
#
# GPG4Win is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# GPG4Win is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, see <http://www.gnu.org/licenses/>.
ACLOCAL_AMFLAGS = -I m4
AUTOMAKE_OPTIONS = dist-bzip2 no-dist-gzip
DISTCHECK_CONFIGURE_FLAGS = --host=i686-w64-mingw32
SUBDIRS = po packages doc src
# find patches -type f | sort | sed 's/$/ \\/' | sed 's/^/ /'
EXTRA_DIST = autogen.sh README.GIT ONEWS \
doc/license-page doc/GPLv3 \
build-aux/git-log-footer build-aux/git-log-fix \
patches/boost/boost-1-fixes.patch \
patches/extra-cmake-modules/0001-Use-BIN_INSTALL_DIR-data-for-DATAROOTDIR-on-Windows.patch \
patches/glib-2.41.5/01-socket.patch \
patches/glib-2.41.5/02-formatsec.patch \
patches/kconfigwidgets/0001-Make-QDbus-optional.patch \
patches/kiconthemes/0001-Make-DBus-optional.patch \
patches/kleopatra/0005-Hack-generated-conf-files-for-Crosscompiling.patch \
patches/kleopatra/fix-qt5.6-build.patch \
patches/kleopatra/0001-Allow-build-with-older-KWindowsystem-versions.patch \
patches/kleopatra/allow-older-kde-frameworks.patch \
patches/kxmlgui/0001-make-qdbus-optional.patch \
patches/kxmlgui/0003-Make-KTextWidgets-optional.patch \
patches/kxmlgui/0004-Cruedly-disable-KSendbugmail.patch \
patches/libgpg-error-1.29/0001-doc-Fix-yat2m-build-for-cross-compilation.patch \
patches/qtbase/0001-Fix-build-without-std-thread.patch \
patches/qtbase/0002-Gpg4win-theme-names-and-relpaths.patch \
- patches/qtbase/0001-Gpg4win-qstandardpaths-patch.patch
+ patches/qtbase/0001-Gpg4win-qstandardpaths-patch.patch \
patches/qtbase/qtbase-mingw-fixes.patch \
patches/qtbase/relative-paths.patch \
patches/qttools/disable-most-tools.patch \
patches/qtwinextras/support-xp.patch \
patches/w32pth-2.0.5/workaround-broken-libtool.patch \
- patches/breeze-icons/0001-Make-binary-icons-cross-compilable.patch \
- patches/libkleo/revert-some-string-changes.patch \
- patches/gpgol/0001-Fix-check-for-plain-text-attachments.patch
+ patches/breeze-icons/0001-Make-binary-icons-cross-compilable.patch
copy-news:
cp NEWS doc/website/NEWS.last
copy-release: gpg4win-$(VERSION).tar.bz2 installers/gpg4win-$(VERSION).exe \
installers/gpg4win-light-$(VERSION).exe \
installers/gpg4win-vanilla-$(VERSION).exe
@echo Copying $(VERSION) to $(RELEASEHOST) >&2
@set -e;\
if ssh "$$(echo $(RELEASEHOST)|cut -d: -f -1)" \
test -f "$$(echo $(RELEASEHOST)/gpg4win-$(VERSION).exe|cut -d: -f2-)";\
then echo "This release has already been copied to the server" >&2 ;\
else scp gpg4win-$(VERSION).tar.bz2 \
installers/gpg4win-$(VERSION).exe \
installers/gpg4win-light-$(VERSION).exe \
installers/gpg4win-vanilla-$(VERSION).exe \
installers/gpg4win-src-$(VERSION).exe $(RELEASEHOST)/ ;\
for f in en de ; do \
scp src/README.$$f.txt \
$(RELEASEHOST)/README-$(VERSION).$$f.txt; \
done;\
fi
dist-hook: gen-ChangeLog
gen_start_date = 2012-03-26T00:00:00
.PHONY: gen-ChangeLog
gen-ChangeLog:
set -e; \
if test -d $(top_srcdir)/.git; then \
(cd $(top_srcdir) && \
$(GITLOG_TO_CHANGELOG) --append-dot --tear-off \
--amend=build-aux/git-log-fix \
--since=$(gen_start_date) ) > $(distdir)/cl-t; \
cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\
rm -f $(distdir)/ChangeLog; \
mv $(distdir)/cl-t $(distdir)/ChangeLog; \
fi
download: packages/packages.current
(cd packages; ./download.sh)
msi:
$(MAKE) $(AM_MAKEFLAGS) -C src msi
diff --git a/patches/gpgol/0001-Fix-check-for-plain-text-attachments.patch b/patches/gpgol/0001-Fix-check-for-plain-text-attachments.patch
deleted file mode 100755
index 392dcc7d..00000000
--- a/patches/gpgol/0001-Fix-check-for-plain-text-attachments.patch
+++ /dev/null
@@ -1,202 +0,0 @@
-#! /bin/sh
-patch -p1 -l -f $* < $0
-exit $?
-
-From bbd6f516545deead2de72adc79ddf2c5706a7836 Mon Sep 17 00:00:00 2001
-From: Andre Heinecke <aheinecke@gnupg.org>
-Date: Mon, 16 Dec 2019 16:31:05 +0100
-Subject: [PATCH] Fix check for plain text attachments
-
-* src/mail.cpp (Mail::checkAttachments_o): Use
-count_visible_attachments.
-(Mail::close): Fix safeguard check.
-* src/oomhelp.cpp (count_visible_attachments): New.
-* src/oomhelp.h: Add prototype.
-
---
-The change in 0d2db8b81ab24e2ab02d7ba6832cabd07b72f852
-introduced a big problem in the check for Mail::close
-which then allowed writes to pass that should have
-been prevented. This resulted in plaintext being written.
----
- src/mail.cpp | 72 +++++--------------------------------------------
- src/oomhelp.cpp | 38 ++++++++++++++++++++++++++
- src/oomhelp.h | 3 +++
- 3 files changed, 48 insertions(+), 65 deletions(-)
-
-diff --git a/src/mail.cpp b/src/mail.cpp
-index e1d8b06..b2006dd 100644
---- a/src/mail.cpp
-+++ b/src/mail.cpp
-@@ -405,39 +405,13 @@ Mail::checkAttachments_o (bool silent)
- SRCNAME, __func__);
- TRETURN 1;
- }
-- int count = get_oom_int (attachments, "Count");
-+ int count = count_visible_attachments (attachments);
- if (!count)
- {
- gpgol_release (attachments);
- TRETURN 0;
- }
-
-- /* Saveguard not to warn about our own attachment */
-- if (count == 1)
-- {
-- LPDISPATCH oom_attach = get_oom_object (attachments, "Item(1)");
-- if (oom_attach)
-- {
-- char *dispName = get_oom_string (oom_attach, "DisplayName");
-- gpgol_release (oom_attach);
--
-- if (dispName && !strcmp (dispName, MIMEATTACHFILENAME))
-- {
-- xfree (dispName);
-- gpgol_release (attachments);
-- log_debug ("%s:%s: Found only our hidden mime structure.",
-- SRCNAME, __func__);
-- TRETURN 0;
-- }
-- else if (dispName)
-- {
-- log_debug ("%s:%s: Found %s as attachment.",
-- SRCNAME, __func__, anonstr (dispName));
-- xfree (dispName);
-- }
-- }
-- }
--
- std::string message;
-
- if (isEncrypted () && isSigned ())
-@@ -2288,6 +2262,7 @@ Mail::closeInspector_o (Mail *mail)
- TRETURN 0;
- }
-
-+
- int
- Mail::close (bool restoreSMIMEClass)
- {
-@@ -2451,57 +2426,24 @@ Mail::close (bool restoreSMIMEClass)
- * */
- char *body = get_oom_string (m_mailitem, "Body");
- LPDISPATCH attachments = get_oom_object (m_mailitem, "Attachments");
-- int att_count = 0;
-- if (attachments)
-- {
-- att_count = get_oom_int (attachments, "Count");
-- }
-
-- bool foundOne = false;
- if (body && strlen (body))
- {
- log_debug ("%s:%s: Close successful. But body found. "
- "Mail still open.",
- SRCNAME, __func__);
- }
-- else if (att_count)
-+ else if (count_visible_attachments (attachments))
- {
-- for (int i = 1; i <= att_count && !foundOne; i++)
-- {
-- std::string item_str;
-- item_str = std::string("Item(") + std::to_string (i) + ")";
-- LPDISPATCH oom_attach = get_oom_object (attachments, item_str.c_str ());
-- if (!oom_attach)
-- {
-- log_error ("%s:%s: Failed to get attachment.",
-- SRCNAME, __func__);
-- continue;
-- }
-- VARIANT var;
-- VariantInit (&var);
-- if (get_pa_variant (oom_attach, PR_ATTACHMENT_HIDDEN_DASL, &var) ||
-- (var.vt == VT_BOOL && var.boolVal == VARIANT_FALSE))
-- {
-- foundOne = true;
-- }
-- else
-- {
-- gpgol_release (oom_attach);
-- }
-- VariantClear (&var);
-- }
-- if (foundOne)
-- {
- log_debug ("%s:%s: Close successful. But attachments found. "
- "Mail still open.",
- SRCNAME, __func__);
-- }
- }
-- if (!foundOne)
-+ else
- {
-- setPassWrite (true);
-- log_debug ("%s:%s: Close successful. Next write may pass.",
-- SRCNAME, __func__);
-+ setPassWrite (true);
-+ log_debug ("%s:%s: Close successful. Next write may pass.",
-+ SRCNAME, __func__);
- }
- gpgol_release (attachments);
- xfree (body);
-diff --git a/src/oomhelp.cpp b/src/oomhelp.cpp
-index 415c256..d47d26d 100644
---- a/src/oomhelp.cpp
-+++ b/src/oomhelp.cpp
-@@ -3095,3 +3095,41 @@ format_dispparams (DISPPARAMS *p)
- }
- return stream.str ();
- }
-+
-+int
-+count_visible_attachments (LPDISPATCH attachments)
-+{
-+ int ret = 0;
-+
-+ if (!attachments)
-+ {
-+ return 0;
-+ }
-+
-+ int att_count = get_oom_int (attachments, "Count");
-+ for (int i = 1; i <= att_count; i++)
-+ {
-+ std::string item_str;
-+ item_str = std::string("Item(") + std::to_string (i) + ")";
-+ LPDISPATCH oom_attach = get_oom_object (attachments, item_str.c_str ());
-+ if (!oom_attach)
-+ {
-+ log_error ("%s:%s: Failed to get attachment.",
-+ SRCNAME, __func__);
-+ continue;
-+ }
-+ VARIANT var;
-+ VariantInit (&var);
-+ if (get_pa_variant (oom_attach, PR_ATTACHMENT_HIDDEN_DASL, &var) ||
-+ (var.vt == VT_BOOL && var.boolVal == VARIANT_FALSE))
-+ {
-+ ret++;
-+ }
-+ else
-+ {
-+ gpgol_release (oom_attach);
-+ }
-+ VariantClear (&var);
-+ }
-+ return ret;
-+}
-diff --git a/src/oomhelp.h b/src/oomhelp.h
-index 9af0fe6..77264f1 100644
---- a/src/oomhelp.h
-+++ b/src/oomhelp.h
-@@ -440,4 +440,7 @@ bool is_draft_mail (LPDISPATCH mailitem);
- /* Returns info about a dispparms variable for debugging. */
- void format_variant (std::istringstream &stream, VARIANT *var);
- std::string format_dispparams (DISPPARAMS *p);
-+
-+/* Returns the count of attachments that are not hidden. */
-+int count_visible_attachments (LPDISPATCH attachments);
- #endif /*OOMHELP_H*/
---
-2.20.1
diff --git a/patches/libkleo/revert-some-string-changes.patch b/patches/libkleo/revert-some-string-changes.patch
deleted file mode 100755
index b6bf3e92..00000000
--- a/patches/libkleo/revert-some-string-changes.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-#! /bin/sh
-patch -p1 -l -f -R $* < $0
-exit $?
-
-diff --git a/src/ui/auditlogviewer.cpp b/src/ui/auditlogviewer.cpp
-index b32322a..db03c37 100644
---- a/src/ui/auditlogviewer.cpp
-+++ b/src/ui/auditlogviewer.cpp
-@@ -46,7 +46,7 @@ AuditLogViewer::AuditLogViewer(const QString &log, QWidget *parent)
- m_textEdit(new QTextEdit(this))
- #endif
- {
-- setWindowTitle(i18n("View GnuPG Audit Log"));
-+ setWindowTitle(i18nc("@title:window", "View GnuPG Audit Log"));
- QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Close);
-
- QPushButton *copyClipBtn = new QPushButton;
-diff --git a/src/ui/cryptoconfigdialog.cpp b/src/ui/cryptoconfigdialog.cpp
-index 5ac4774..cfce3d5 100644
---- a/src/ui/cryptoconfigdialog.cpp
-+++ b/src/ui/cryptoconfigdialog.cpp
-@@ -42,7 +42,7 @@
- Kleo::CryptoConfigDialog::CryptoConfigDialog(QGpgME::CryptoConfig *config, QWidget *parent)
- : QDialog(parent)
- {
-- setWindowTitle(i18n("Configure GnuPG Backend"));
-+ setWindowTitle(i18nc("@title:window", "Configure GnuPG Backend"));
- QVBoxLayout *mainLayout = new QVBoxLayout(this);
- mButtonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::RestoreDefaults | QDialogButtonBox::Apply, this);
- QPushButton *okButton = mButtonBox->button(QDialogButtonBox::Ok);
-diff --git a/src/ui/cryptoconfigmodule.cpp b/src/ui/cryptoconfigmodule.cpp
-index 4d891c3..77a1b1e 100644
---- a/src/ui/cryptoconfigmodule.cpp
-+++ b/src/ui/cryptoconfigmodule.cpp
-@@ -831,7 +831,7 @@ void Kleo::CryptoConfigEntryLDAPURL::slotOpenDialog()
- // I'm a bad boy and I do it all on the stack. Enough classes already :)
- // This is just a simple dialog around the directory-services-widget
- QDialog dialog(mPushButton->parentWidget());
-- dialog.setWindowTitle(i18n("Configure LDAP Servers"));
-+ dialog.setWindowTitle(i18nc("@title:window", "Configure LDAP Servers"));
-
- DirectoryServicesWidget *dirserv = new DirectoryServicesWidget(&dialog);
-
-@@ -958,7 +958,7 @@ void Kleo::CryptoConfigEntryKeyserver::slotOpenDialog()
- // I'm a bad boy and I do it all on the stack. Enough classes already :)
- // This is just a simple dialog around the directory-services-widget
- QDialog dialog(mPushButton->parentWidget());
-- dialog.setWindowTitle(i18n("Configure Keyservers"));
-+ dialog.setWindowTitle(i18nc("@title:window", "Configure Keyservers"));
-
- DirectoryServicesWidget *dirserv = new DirectoryServicesWidget(&dialog);
-
-diff --git a/src/ui/keyapprovaldialog.cpp b/src/ui/keyapprovaldialog.cpp
-index 968daba..9849866 100644
---- a/src/ui/keyapprovaldialog.cpp
-+++ b/src/ui/keyapprovaldialog.cpp
-@@ -108,7 +108,7 @@ Kleo::KeyApprovalDialog::KeyApprovalDialog(const std::vector<Item> &recipients,
- : QDialog(parent),
- d(new Private())
- {
-- setWindowTitle(i18n("Encryption Key Approval"));
-+ setWindowTitle(i18nc("@title:window", "Encryption Key Approval"));
- QVBoxLayout *mainLayout = new QVBoxLayout(this);
- QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this);
- QPushButton *okButton = buttonBox->button(QDialogButtonBox::Ok);
-diff --git a/src/ui/newkeyapprovaldialog.cpp b/src/ui/newkeyapprovaldialog.cpp
-index 43ee1e8..22a56f7 100644
---- a/src/ui/newkeyapprovaldialog.cpp
-+++ b/src/ui/newkeyapprovaldialog.cpp
-@@ -264,7 +264,7 @@ public:
- mScrollArea->setFrameStyle(QFrame::NoFrame);
- mScrollLayout->setContentsMargins(0, 0, 0, 0);
-
-- q->setWindowTitle(i18n("Security approval"));
-+ q->setWindowTitle(i18nc("@title:window", "Security approval"));
-
- auto fmtLayout = new QHBoxLayout;
- mFormatBtns = new QButtonGroup;
-@@ -326,7 +326,7 @@ public:
- auto progress = new Kleo::ProgressDialog(job, i18n("Generating key for '%1'...", addr) + QStringLiteral("\n\n") +
- i18n("This can take several minutes."), q);
- progress->setWindowFlags(progress->windowFlags() & ~Qt::WindowContextHelpButtonHint);
-- progress->setWindowTitle(i18n("Key generation"));
-+ progress->setWindowTitle(i18nc("@title:window", "Key generation"));
- progress->setModal(true);
- progress->setAutoClose(true);
- progress->setMinimumDuration(0);

File Metadata

Mime Type
text/x-diff
Expires
Fri, Feb 6, 8:11 AM (12 h, 34 s)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
66/d4/4f06fa21f793c64fdade6298e07c

Event Timeline