From cvs at cvs.gnupg.org Mon Sep 4 11:25:37 2017 From: cvs at cvs.gnupg.org (by Jochen Saalfeld) Date: Mon, 04 Sep 2017 11:25:37 +0200 Subject: [git] GpgOL - branch, master, updated. gpgol-1.4.0-289-gbcdcb84 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG extension for MS Outlook". The branch, master has been updated via bcdcb844b9526f0d5483bb96ef58bc9fa5a5938f (commit) from 542352760827393803b12ad099d540f6c0b6fb5f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit bcdcb844b9526f0d5483bb96ef58bc9fa5a5938f Author: Jochen Saalfeld Date: Mon Sep 4 11:24:26 2017 +0200 Fixing typo and consistency in addin-options dialogue -- The typo and inconsistency was reported via https://wald.intevation.org/forum/message.php?msg_id=5100 diff --git a/po/de.po b/po/de.po index ccf8231..07cfc84 100644 --- a/po/de.po +++ b/po/de.po @@ -49,8 +49,8 @@ msgid "&Send OpenPGP mails without attachments as PGP/Inline" msgstr "&OpenPGP Nachrichten ohne Anh?nge als PGP/Inline verschl?sseln" #: src/addin-options.cpp:48 -msgid "S&elect crypto settings automatically for reply and foward." -msgstr "Krypto &Einstellungen beim Antworten und weiterleiten ?bernehmen." +msgid "S&elect crypto settings automatically for reply and forward" +msgstr "Krypto &Einstellungen beim Antworten und weiterleiten ?bernehmen" #: src/addin-options.cpp:50 msgid "&Search for OpenPGP keys automatically when encrypting" diff --git a/po/fr.po b/po/fr.po index 77a6e03..b3031d4 100644 --- a/po/fr.po +++ b/po/fr.po @@ -47,7 +47,7 @@ msgid "&Send OpenPGP mails without attachments as PGP/Inline" msgstr "" #: src/addin-options.cpp:48 -msgid "S&elect crypto settings automatically for reply and foward." +msgid "S&elect crypto settings automatically for reply and forward" msgstr "" #: src/addin-options.cpp:50 diff --git a/po/pt.po b/po/pt.po index 6bbffc6..151271d 100644 --- a/po/pt.po +++ b/po/pt.po @@ -48,7 +48,7 @@ msgid "&Send OpenPGP mails without attachments as PGP/Inline" msgstr "Enviar mails OpenPGP sem anexos como PGP/Inline" #: src/addin-options.cpp:48 -msgid "S&elect crypto settings automatically for reply and foward." +msgid "S&elect crypto settings automatically for reply and forward" msgstr "" "Seleciona as defini??es de criptografia automaticamente para responder e " "encaminhar." diff --git a/po/sv.po b/po/sv.po index 6e8ed4c..727b3f1 100644 --- a/po/sv.po +++ b/po/sv.po @@ -47,7 +47,7 @@ msgid "&Send OpenPGP mails without attachments as PGP/Inline" msgstr "" #: src/addin-options.cpp:48 -msgid "S&elect crypto settings automatically for reply and foward." +msgid "S&elect crypto settings automatically for reply and forward" msgstr "" #: src/addin-options.cpp:50 diff --git a/po/zh_CN.po b/po/zh_CN.po index b694f45..bd48cf2 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -48,7 +48,7 @@ msgid "&Send OpenPGP mails without attachments as PGP/Inline" msgstr "" #: src/addin-options.cpp:48 -msgid "S&elect crypto settings automatically for reply and foward." +msgid "S&elect crypto settings automatically for reply and forward" msgstr "" #: src/addin-options.cpp:50 diff --git a/po/zh_TW.po b/po/zh_TW.po index 189a19c..acaa1bc 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -48,7 +48,7 @@ msgid "&Send OpenPGP mails without attachments as PGP/Inline" msgstr "" #: src/addin-options.cpp:48 -msgid "S&elect crypto settings automatically for reply and foward." +msgid "S&elect crypto settings automatically for reply and forward" msgstr "" #: src/addin-options.cpp:50 diff --git a/src/addin-options.cpp b/src/addin-options.cpp index 0d8d673..fd43ed1 100644 --- a/src/addin-options.cpp +++ b/src/addin-options.cpp @@ -46,7 +46,7 @@ set_labels (HWND dlg) { IDC_INLINE_PGP, N_("&Send OpenPGP mails without " "attachments as PGP/Inline")}, { IDC_REPLYCRYPT, N_("S&elect crypto settings automatically " - "for reply and foward.")}, + "for reply and forward")}, { IDC_AUTORRESOLVE, N_("&Search for OpenPGP keys automatically when encrypting")}, ----------------------------------------------------------------------- Summary of changes: po/de.po | 4 ++-- po/fr.po | 2 +- po/pt.po | 2 +- po/sv.po | 2 +- po/zh_CN.po | 2 +- po/zh_TW.po | 2 +- src/addin-options.cpp | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) hooks/post-receive -- GnuPG extension for MS Outlook http://git.gnupg.org From cvs at cvs.gnupg.org Mon Sep 4 11:27:01 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Mon, 04 Sep 2017 11:27:01 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-75-gbd5d470 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, master has been updated via bd5d470cef513b2f459316869b81267cde7a9f13 (commit) via 58d7bcead3394fa80c2a05d0d1e0fb4d9a1048b0 (commit) from 47f61df0704485b8165c9cf2a27ad57bcd864239 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit bd5d470cef513b2f459316869b81267cde7a9f13 Author: Andre Heinecke Date: Mon Sep 4 11:25:34 2017 +0200 qt: Add test for version info * lang/qt/tests/t-various.cpp (TestVarious::testVersion): New. -- If it's not tested it does not work ;-) diff --git a/lang/qt/tests/t-various.cpp b/lang/qt/tests/t-various.cpp index fe121fd..7545628 100644 --- a/lang/qt/tests/t-various.cpp +++ b/lang/qt/tests/t-various.cpp @@ -151,6 +151,19 @@ private Q_SLOTS: QVERIFY(id_revoked); } + void testVersion() + { + QVERIFY(EngineInfo::Version("2.1.0") < EngineInfo::Version("2.1.1")); + QVERIFY(EngineInfo::Version("2.1.10") < EngineInfo::Version("2.1.11")); + QVERIFY(EngineInfo::Version("2.2.0") > EngineInfo::Version("2.1.19")); + QVERIFY(EngineInfo::Version("1.0.0") < EngineInfo::Version("2.0.0")); + QVERIFY(EngineInfo::Version("0.1.0") < EngineInfo::Version("1.0.0")); + QVERIFY(!(EngineInfo::Version("2.0.0") < EngineInfo::Version("2.0.0"))); + QVERIFY(EngineInfo::Version("3.0.0") > EngineInfo::Version("2.3.20")); + QVERIFY(EngineInfo::Version("3.0.1") > EngineInfo::Version("3.0.0")); + QVERIFY(EngineInfo::Version("3.1.0") > EngineInfo::Version("3.0.20")); + } + void initTestCase() { QGpgMETest::initTestCase(); commit 58d7bcead3394fa80c2a05d0d1e0fb4d9a1048b0 Author: Andre Heinecke Date: Mon Sep 4 11:23:56 2017 +0200 cpp: Fix version info comparison * lang/cpp/src/engineinfo.h (EngineInfo::Version::operator<): Fix logic. * lang/cpp/src/engineinfo.h (EngineInfo::Version::operator>): New. * NEWS: Mention added API -- This fixes a logic error that 2.2.0 < 2.1.19 would return true. diff --git a/NEWS b/NEWS index 71d9600..aee3f10 100644 --- a/NEWS +++ b/NEWS @@ -12,8 +12,9 @@ Noteworthy changes in version 1.10.0 (unreleased) GPGME_DELETE_FORCE NEW. gpgme_op_conf_dir NEW. gpgme_set_ctx_flag EXTENDED: New flag 'auto-key-retrieve'. - cpp: DecryptionResult::isDeVs NEW. - cpp: Signature::isDeVs NEW. + cpp: DecryptionResult::isDeVs NEW. + cpp: Signature::isDeVs NEW. + cpp: EngineInfo::Version::operator> NEW. py: DecryptResult EXTENDED: New boolean field 'is_de_vs'. py: Signature EXTENDED: New boolean field 'is_de_vs'. py: GpgError EXTENDED: Partial results in 'results'. diff --git a/lang/cpp/src/engineinfo.h b/lang/cpp/src/engineinfo.h index b216de8..cd1b7a7 100644 --- a/lang/cpp/src/engineinfo.h +++ b/lang/cpp/src/engineinfo.h @@ -71,13 +71,13 @@ public: bool operator < (const Version& other) { - if (major < other.major) - return true; - if (minor < other.minor) - return true; - if (patch < other.patch) - return true; - return false; + if (major > other.major || + (major == other.major && minor > other.minor) || + (major == other.major && minor == other.minor && patch > other.patch) || + (major >= other.major && minor >= other.minor && patch >= other.patch)) { + return false; + } + return true; } bool operator < (const char* other) @@ -85,6 +85,15 @@ public: return operator<(Version(other)); } + bool operator > (const char* other) + { + return !operator<(Version(other)); + } + + bool operator > (const Version & other) + { + return !operator<(other); + } bool operator == (const Version& other) { return major == other.major ----------------------------------------------------------------------- Summary of changes: NEWS | 5 +++-- lang/cpp/src/engineinfo.h | 23 ++++++++++++++++------- lang/qt/tests/t-various.cpp | 13 +++++++++++++ 3 files changed, 32 insertions(+), 9 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Mon Sep 4 12:18:15 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 04 Sep 2017 12:18:15 +0200 Subject: [git] gnupg-doc - branch, master, updated. fe58e766af2724fe96e9614a00d0bdde6d702acc Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via fe58e766af2724fe96e9614a00d0bdde6d702acc (commit) from d641749d033eebc2a61ee5e826313ade7f437291 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit fe58e766af2724fe96e9614a00d0bdde6d702acc Author: Werner Koch Date: Mon Sep 4 12:14:31 2017 +0200 blog: Publish financial results for 2016 diff --git a/misc/blog.gnupg.org/20170904-financial-results-2016.org b/misc/blog.gnupg.org/20170904-financial-results-2016.org new file mode 100644 index 0000000..358b031 --- /dev/null +++ b/misc/blog.gnupg.org/20170904-financial-results-2016.org @@ -0,0 +1,120 @@ +# Financial Results for 2015 +#+STARTUP: showall +#+AUTHOR: Werner +#+DATE: September 4, 2017 +#+Keywords: + +** Financial Results for 2016 + +Having prepared the annual accounts for g10^code GmbH, the legal +entity employing some of the GnuPG hackers, I can now share a +financial report. Please read on if you are interested in how we +earned and spent the money from donations and paid projects. + +*** Balance Sheet as of 2016-12-31 + + Let us start by looking at the balance sheet, which describes + our financial status. The following table shows the actual + [[file:data/g10code-bilanz-2016-pub.pdf][balance sheet]] with a few accounts pooled up. Note that for + display purposes all values have been rounded to a full Euro, and + thus there are minor mismatches in the Sums row. + + | | | | | | + | | Asset | (2015) | Liability | (2015) | + |---------------------------+--------+----------+-----------+----------| + | Tangible assets | 4722 | (3880) | | | + | Stock of goods | 0 | (0) | | | + | Cash balance | 154 | (360) | | | + | Bank balance KSD | 282163 | (207453) | | | + | PayPal and others balance | 7001 | (3842) | | | + | Accounts receivable | 10702 | (4774) | | | + | Accounts receivable other | 150 | (497) | | | + | Common capital stock | | | 25000 | (25000) | + | Loss carried forward | 0 | (0) | | | + | Profit carried forward | | | 126688 | (11338) | + | Net profit | | | 98958 | (115350) | + | Shareholder loans | | | 0 | (0) | + | Accounts payable | | | 323 | (0) | + | Accounts payable other | | | 53850 | (27974) | + | GnuPG development fund | | | 72 | (72) | + | Provision for taxes | | | 0 | (41070) | + |---------------------------+--------+----------+-----------+----------| + | Sums | 304891 | (220804) | 304891 | (220804) | + + + The /Bank balance KSD/ is the money that we had at the end of the year + in our accounts at the local savings bank. The /PayPal/ row gives + the amount of money in the PayPal account and as several prepaid + accounts. + + From the /Common capital stock/ of 25000 Euro 50% are held by + Walter Koch and 50% by Werner Koch, the owners of g10^code. The + /Net profit/ gained in 2015 is added to /Profit carried forward/. + + The /Accounts payable other/ is my profit sharing bonus of 24739 + and VAT payable for the last quarter. The /GnuPG development + fund/ is the rest of a campaign which collected prize money for + the GnuPG logo. + +*** Profit and Loss from 2016-01-01 to 2016-12-31 + + Now let us see how much money we earned and how we spent it. The + following table shows the actual [[file:data/g10code-bilanz-2016-pub.pdf][profit and loss sheet]] with a few + accounts pooled up. As above, the values have again been rounded + to the nearest Euro. + + | | | | | | + | | Debit | (2015) | Credit | (2015) | + |--------------------------+--------+----------+--------+----------| + | Revenues | | | 351689 | (57251) | + | Revenues from donations | | | 9342 | (283538) | + | Revenues other | | | 3607 | (218) | + | Salaries | 133776 | (108719) | | | + | Social insurance | 29756 | (18060) | | | + | Contractors | 44700 | (33165) | | | + | Write-offs | 1571 | (1532) | | | + | Connectivity and hosting | 2259 | (2012) | | | + | Rents | 2769 | (2681) | | | + | Interest expenses | 1 | (550) | | | + | Travel expenses | 2359 | (3499) | | | + | Other expenses | 6064 | (5169) | | | + | Donations | 1873 | (5100) | | | + | Taxes | 40551 | (45171) | | | + | Net profit | 98958 | (115350) | | | + |--------------------------+--------+----------+--------+----------| + | Sums | 364639 | (341007) | 364639 | (341007) | + +# Other expenses are: +# | Fachliteratur | 637 | 634 | +# | Stromkosten | 477 | 452 | +# | B?rokosten | | 432 | +# | Porto | 12 | 29 | +# | Bankkosten | 809 | 577 | +# | Werbekosten | 386 | 1111 | +# | Beitr?ge | 128 | 128 | +# | Instandsetzungskosten | 366 | | +# | Konferenzkosten |2599 | 919 | +# | Rechtskosten | 312 | 433 | +# | Sonstige Kosten | 209 | 320 | +# | Forderungsverluste | 129 | 134 | + + The major /Revenues/ items are grants from the Linux Foundation + (54,219 ?), Facebook (44,715 ?), Stripe (47,824 ?), and from these + paid projects: Gpg4VS-NfD (79,800 ?), Gpg4All (48,000 ?), and + EasyGPG (65,000 ?). + + The /Rents/ are for the room used as an office in my house. + /Other expenses/ sums up money spent for magazines, power, office + supplies, advertising, conference fees, legal costs, etc. + Donations have been given to [[https://netzpolitik.org][Netzpolitik.org]], [[http://www.freundeskreis-fluechtlinge-erkrath.de/][Freundeskreis f?r + Fl?chtlinge in Erkrath]], [[https://wikimedia.de][Wikimedia]], and the [[https://freie-software.de][Freie Software Freunde]]. + + As with almost all software development companies, the majority of + expenses are staff costs. Not counting taxes, which depend on the + the annual profit, we had total costs of 225,000 ? with 207,000 ? + spent on /Salaries/, /Social insurance/, and /Contractors/. My + share of this were 47,400 ? regular salary (of which I need to pay + social insurances fully myself) plus a profit sharing bonus of + 24700 ?. We made quite some profit last years due to the good + revenue situation and because one of our employees substantially + reduced his working hours to finish his PhD. diff --git a/misc/blog.gnupg.org/data/g10code-bilanz-2016-pub.pdf b/misc/blog.gnupg.org/data/g10code-bilanz-2016-pub.pdf new file mode 100644 index 0000000..7be9652 Binary files /dev/null and b/misc/blog.gnupg.org/data/g10code-bilanz-2016-pub.pdf differ ----------------------------------------------------------------------- Summary of changes: .../20170904-financial-results-2016.org | 120 +++++++++++++++++++++ .../data/g10code-bilanz-2016-pub.pdf | Bin 0 -> 58067 bytes 2 files changed, 120 insertions(+) create mode 100644 misc/blog.gnupg.org/20170904-financial-results-2016.org create mode 100644 misc/blog.gnupg.org/data/g10code-bilanz-2016-pub.pdf hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Mon Sep 4 12:36:13 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 04 Sep 2017 12:36:13 +0200 Subject: [git] gnupg-doc - branch, master, updated. be360e160fc74b84965c00ee273a156958811324 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via be360e160fc74b84965c00ee273a156958811324 (commit) from fe58e766af2724fe96e9614a00d0bdde6d702acc (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit be360e160fc74b84965c00ee273a156958811324 Author: Werner Koch Date: Mon Sep 4 12:32:34 2017 +0200 blog: Minor correction diff --git a/misc/blog.gnupg.org/20170904-financial-results-2016.org b/misc/blog.gnupg.org/20170904-financial-results-2016.org index 358b031..d44ca9b 100644 --- a/misc/blog.gnupg.org/20170904-financial-results-2016.org +++ b/misc/blog.gnupg.org/20170904-financial-results-2016.org @@ -111,10 +111,10 @@ earned and spent the money from donations and paid projects. As with almost all software development companies, the majority of expenses are staff costs. Not counting taxes, which depend on the - the annual profit, we had total costs of 225,000 ? with 207,000 ? + annual profit, we had total costs of 225,000 ? with 207,000 ? spent on /Salaries/, /Social insurance/, and /Contractors/. My share of this were 47,400 ? regular salary (of which I need to pay social insurances fully myself) plus a profit sharing bonus of - 24700 ?. We made quite some profit last years due to the good + 24,700 ?. We made quite some profit last years due to the good revenue situation and because one of our employees substantially reduced his working hours to finish his PhD. ----------------------------------------------------------------------- Summary of changes: misc/blog.gnupg.org/20170904-financial-results-2016.org | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 5 16:03:06 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 05 Sep 2017 16:03:06 +0200 Subject: [git] gnupg-doc - branch, master, updated. 306bf36fb3de3c77d07b05f70e253b4e7df04733 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 306bf36fb3de3c77d07b05f70e253b4e7df04733 (commit) from be360e160fc74b84965c00ee273a156958811324 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 306bf36fb3de3c77d07b05f70e253b4e7df04733 Author: Werner Koch Date: Tue Sep 5 15:59:20 2017 +0200 campaign: Create a copy of the campaign page to file away diff --git a/web/donate/camp2017.org b/web/donate/camp2017.org new file mode 100644 index 0000000..3cbe23b --- /dev/null +++ b/web/donate/camp2017.org @@ -0,0 +1,1742 @@ +# -*- html -*- +#+TITLE: GnuPG - Donation Campaign 2017 (archived) +#+STARTUP: showall +#+SETUPFILE: "../share/setup.inc" +# +# Note: Do not use relative links because this page is also used as a +# template from cgi-bin/. Using https://www.gnupg.org/... is +# fine as it is stripped before publishing. + +#+BEGIN_HTML + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+

GnuPG Fundraising Rally

+
+
+
+ +
+
Click to start the video + +
+
+
+ + + + [This is a snaphot of the page at the end of the + campaign on 2017-09-05.] + +
+
+
+
+
+ 5428 ? + a month +
+
+
+
+

5428 ? + a month of + 15000 ? + needed +

+

+ + 35853 ? + in one-time donations +

+

646 + Supporters +

+
+ +
+
+
+
+ +
+
+
+
+

GnuPG needs your support to help + protect online privacy.

+

Activists, journalists, lawyers, and many others rely on + GnuPG to protect + their communication. And, + nearly all free software-based operating systems (which + are used by more than two-thirds of the servers running + the Internet) rely on GnuPG to verify the integrity of + system updates.

+

To continue supporting and improving GnuPG, we, the + main GnuPG developers, are soliciting donations from the + general public. Our primary goal is to + raise 15 000 euros per month to + fully fund 3 developers; our stretch + goal is twice that, 30 000 euros + per month.

+

Please consider donating to ensure that this critical + piece of software continues to work for everyone.

+
+
+
+
+ + +
+
+
+

GnuPG Needs Your Help!

+

+ For the past 20 years, GnuPG has helped protect online + communication. + Cindy + CohnPicture of Cindy Cohn, Executive Director + of the Electronic Frontier + Foundation (EFF), describes GnuPG as "the way that + I most often communicate with people who are in need + around the + world." Picture of Sheera FrenkelSheera + Frenkel, Foreign Correspondent for BuzzFeed News, + relates: "As a news organization, we're trained + on using GPG. "It's about your sources and what + happens to them when you leave the country and you publish + that explosive story and the government is looking for the + whistleblower that handed you that key piece of + information." And famously, GnuPG was Edward + Snowden's tool of choice to securely communicate with + journalists about the NSA mass surveillance leaks. +

+ But, GnuPG is not only used to encrypt + email. GnuPG protects software updates + for nearly all free software operating systems, which + power two-thirds + of all servers on the Internet. And, GnuPG is widely + used by organizations and companies. For instance, Arthur + JordanPicture of Arthur Jordan, Vice-President of + Information Technology at 2U, told us: + "when we reached out to universities about how they + wanted to do secure file transfer, they were already using + GPG encryption." +

+ Yet, despite the critical role that GnuPG plays for + journalists, activists, and lawyers in particular as well + as anyone who uses the Internet in general, in 2012 GnuPG + had a funding crisis. Due to a lack of + contracts, Werner Koch, GnuPG's lead developer, was forced + to lay off the only other person working on GnuPG + full-time. And, by 2014, Werner had to take side jobs + unrelated to GnuPG to supplement his income. +

+ The situation looked so bad that Werner was ready + to give up. But, friends convinced him to give a donation + campaign one last shot. The response was + amazing. Not only did he receive enough money to fund + himself, but he pulled in + 250 000 euros in small donations, and + Stripe, Facebook and the Linux Foundation each committed + to donating about 50 000 euros per year. +

+
+ +

+ The GnuPG Team at OpenPGP.conf 2016 +

+
+

+ Given this amazing response, Werner decided to + grow the team again. To date, he has hired 5 + developers, and the past two years have seen a number of + improvements to GnuPG and the surrounding ecosystem. For + instance, we've worked + on simplifying + key discovery, adopted a set + of Python + bindings for GPG, contributed some improvements + to Enigmail, + and + supported the + Gnuk project—a free source and free hardware + security token. +

+ We want to continue this work in the long + term. But, we want to do so in such a way that + our first loyalty is unambiguously to the general public. + This means making sure that a majority of our funding + comes from individual donors, and not corporations. + Further, to ensure long-term stability, our focus is on + recurring donations and not one-time donations. +

+ Our primary goal is to get donation commitments + for 15 000 euros per month—enough to + fund 3 developers. We can reach this goal if + just 2000 people donate 5 or 10 euros each month, + the equivalent of just 2 or 3 cups of coffee. +

+

+ +

The Gnuk Token

+
+ This money will firstly allow us to continue our + maintenance of GnuPG. We also intend to use it to fund our + work on the Gnuk security token. And, one new project + that it will support is a book called "An Advanced + Introduction to GnuPG." A book for developers who want to + integrate GnuPG into their programs, and need to + understand the various concepts, the important security + tradeoffs, and common pitfalls; for digital security + trainers who need to understand GnuPG to be able to make + sound recommendations to users; and, of course, + for enthusiasts. +

+ Our stretch goal is to double this number of + donations. If 4000 people donate just 5 or + 10 euros each month, then we intend to grow the + team, and dedicate them to helping other projects in the + GnuPG ecosystem. One project that we really want to + contribute to + is GPGTools, which + many activists and journalists rely on to secure their + online communication. We want to make sure that GPG + integration in Apple's mailer is supported as soon as a + new version of macOS is released. +

+ Now, maybe you don't use GnuPG to encrypt your email. + Nevertheless, some journalists whose work you value rely + on GnuPG to protect their sources, some activists fighting + for a cause that you sympathize with rely on GnuPG to + protect their communication, and some lawyers speaking + with their clients rely on GnuPG to help protect + attorney-client conversations. And, free software-based + operating systems use GnuPG to verify software updates. +

+

So, if you are convinced as we + are that this work is essential to protecting democracy + and privacy, then please help us to continue our + work and stay independent.

+
+
+
+ +
+
+
+
+

What we intend to do

+
+
+
+
+
+
+
+

Maintenance

+

Our first priority is to ensure continued maintenance + of GnuPG. This entails reacting to bug reports, dealing + with security issues, and staying current with best + cryptography practices.

+
+
+
+
+

Gnuk

+

The Gnuk + is a fully free software and open schematic + security token developed by Niibe. We want to + invest more in its production and + distribution.

+
+
+
+
+
+
+

Book

+

We want to improve documentation. One major + project in this area is a book that we have + started to write called An Advanced + Introduction to GnuPG, which will explain how + GnuPG works as well as best practices. It is + targetted towards digital security trainers, + programmers integrating GnuPG to their + applications, and enthusiasts.

+
+
+
+
+

Greater Ecosystem

+

Few people use GnuPG directly. Instead they + interact with it via some tool. We hope to better + help these tool developers improve GnuPG + integration. In particular, we want to make sure + that GPGTools, + the GnuPG plug-in for Apple's mailer, works as + soon as a new version of macOS is released.

+
+
+
+
+
+
+
+ +
+
+
+

What others say about GnuPG

+
+
+
+ + + + + + + + + + + + + + +
+
+ +
+ + + + +
+
+
+

Who we are

+
+
+ +
+ +
+
+
+ Picture of Werner +
+
+ Werner started GnuPG in 1997. Werner + is a long time free software supporter and co-founder of + the FSFE. +
+
+
+ + +
+
+
+ Picture of Neal +
+
+ Neal started to work on GnuPG in 2015 + to support maintenance and development in all areas. +
+
+
+
+ +
+ +
+
+
+ Picture of Justus +
+
+ Justus started to work on GnuPG in 2015 + to support maintenance and development in all areas. +
+
+
+ + +
+
+
+ Picture of Marcus +
+
+ Marcus worked on GnuPG from 2001 to + 2012 and rejoined the project in 2017 to work in all + areas. +
+
+
+
+ +
+ +
+
+
+ Picture of Kai +
+
+ Kai is working on the Enigmail project since 2015. +
+
+
+ + +
+
+
+ Picture of Niibe +
+
+ Niibe is a long time free software + hacker who joined the GnuPG project in 2011 to work on + smart cards and the Gnuk Token. +
+
+
+ +
+ +
+
+ + + + + +#+END_HTML + +# eof # ----------------------------------------------------------------------- Summary of changes: web/donate/{index.org => camp2017.org} | 148 ++++++++++++++++++++++++++++----- 1 file changed, 129 insertions(+), 19 deletions(-) copy web/donate/{index.org => camp2017.org} (93%) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 5 17:39:52 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 05 Sep 2017 17:39:52 +0200 Subject: [git] gnupg-doc - branch, master, updated. fa2207d6fa76e051bcb3d2145ad66cdc07433d23 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via fa2207d6fa76e051bcb3d2145ad66cdc07433d23 (commit) from 306bf36fb3de3c77d07b05f70e253b4e7df04733 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit fa2207d6fa76e051bcb3d2145ad66cdc07433d23 Author: Werner Koch Date: Tue Sep 5 17:36:10 2017 +0200 campaign: Remove campaign page. We revert to a simple info page so that URLs are kept valid and we do not need to change the CGIs. Things need to be tweaked of course but first of all we need to declare the campaign finished. In particular the buttons are not yet correct. diff --git a/web/donate/index.org b/web/donate/index.org index 8d32f37..e126638 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -1,4 +1,3 @@ -# -*- html -*- #+TITLE: GnuPG - Donate #+STARTUP: showall #+SETUPFILE: "../share/setup.inc" @@ -7,1626 +6,68 @@ # template from cgi-bin/. Using https://www.gnupg.org/... is # fine as it is stripped before publishing. -#+BEGIN_HTML - - - - - - - - - - - - - - - - - - - - - - - - +* GnuPG needs your support to help protect online privacy. -
-
-
-

GnuPG Fundraising Rally

-
+ Activists, journalists, lawyers, and many others rely on GnuPG to + protect their communication. And, nearly all free software-based + operating systems (which are used by more than two-thirds of the + servers running the Internet) rely on GnuPG to verify the integrity + of system updates. - + GnuPG development is mainly financed by donations. Aside of the + large donors Linux Foundation, Stripe, Facebook, and First Look + Media, we received a lot of individual donations. Our fundraising + [[file:camp2017.org][campaign]] in 2017 also raised about 5000 Euro in monthly recurring + donations. -
-
-
-
-
- - a month -
-
-
-
-

- a month of - - needed -

-

+ - - in one-time donations -

-

- Supporters -

-
- -
-
-
-
+ *Many thanks to all supporters* -
-
-
-
-

GnuPG needs your support to help - protect online privacy.

-

Activists, journalists, lawyers, and many others rely on - GnuPG to protect - their communication. And, - nearly all free software-based operating systems (which - are used by more than two-thirds of the servers running - the Internet) rely on GnuPG to verify the integrity of - system updates.

-

To continue supporting and improving GnuPG, we, the - main GnuPG developers, are soliciting donations from the - general public. Our primary goal is to - raise 15 000 euros per month to - fully fund 3 developers; our stretch - goal is twice that, 30 000 euros - per month.

-

Please consider donating to ensure that this critical - piece of software continues to work for everyone.

-
-
-
-
+ If you are using [[../software/index.org][GnuPG]], [[../software/libgcrypt/index.org][Libgcrypt]], [[../software/gpgme/index.org][GPGME]], or [[https://www.gpg4win.org][Gpg4win]] and would like + to help with development and maintenance please consider to make a + donation. -
-
-
-

GnuPG Needs Your Help!

-

- For the past 20 years, GnuPG has helped protect online - communication. - Cindy - CohnPicture of Cindy Cohn, Executive Director - of the Electronic Frontier - Foundation (EFF), describes GnuPG as "the way that - I most often communicate with people who are in need - around the - world." Picture of Sheera FrenkelSheera - Frenkel, Foreign Correspondent for BuzzFeed News, - relates: "As a news organization, we're trained - on using GPG. "It's about your sources and what - happens to them when you leave the country and you publish - that explosive story and the government is looking for the - whistleblower that handed you that key piece of - information." And famously, GnuPG was Edward - Snowden's tool of choice to securely communicate with - journalists about the NSA mass surveillance leaks. -

- But, GnuPG is not only used to encrypt - email. GnuPG protects software updates - for nearly all free software operating systems, which - power two-thirds - of all servers on the Internet. And, GnuPG is widely - used by organizations and companies. For instance, Arthur - JordanPicture of Arthur Jordan, Vice-President of - Information Technology at 2U, told us: - "when we reached out to universities about how they - wanted to do secure file transfer, they were already using - GPG encryption." -

- Yet, despite the critical role that GnuPG plays for - journalists, activists, and lawyers in particular as well - as anyone who uses the Internet in general, in 2012 GnuPG - had a funding crisis. Due to a lack of - contracts, Werner Koch, GnuPG's lead developer, was forced - to lay off the only other person working on GnuPG - full-time. And, by 2014, Werner had to take side jobs - unrelated to GnuPG to supplement his income. -

- The situation looked so bad that Werner was ready - to give up. But, friends convinced him to give a donation - campaign one last shot. The response was - amazing. Not only did he receive enough money to fund - himself, but he pulled in - 250 000 euros in small donations, and - Stripe, Facebook and the Linux Foundation each committed - to donating about 50 000 euros per year. -

-
- -

- The GnuPG Team at OpenPGP.conf 2016 -

-
-

- Given this amazing response, Werner decided to - grow the team again. To date, he has hired 5 - developers, and the past two years have seen a number of - improvements to GnuPG and the surrounding ecosystem. For - instance, we've worked - on simplifying - key discovery, adopted a set - of Python - bindings for GPG, contributed some improvements - to Enigmail, - and - supported the - Gnuk project—a free source and free hardware - security token. -

- We want to continue this work in the long - term. But, we want to do so in such a way that - our first loyalty is unambiguously to the general public. - This means making sure that a majority of our funding - comes from individual donors, and not corporations. - Further, to ensure long-term stability, our focus is on - recurring donations and not one-time donations. -

- Our primary goal is to get donation commitments - for 15 000 euros per month—enough to - fund 3 developers. We can reach this goal if - just 2000 people donate 5 or 10 euros each month, - the equivalent of just 2 or 3 cups of coffee. -

-

- -

The Gnuk Token

-
- This money will firstly allow us to continue our - maintenance of GnuPG. We also intend to use it to fund our - work on the Gnuk security token. And, one new project - that it will support is a book called "An Advanced - Introduction to GnuPG." A book for developers who want to - integrate GnuPG into their programs, and need to - understand the various concepts, the important security - tradeoffs, and common pitfalls; for digital security - trainers who need to understand GnuPG to be able to make - sound recommendations to users; and, of course, - for enthusiasts. -

- Our stretch goal is to double this number of - donations. If 4000 people donate just 5 or - 10 euros each month, then we intend to grow the - team, and dedicate them to helping other projects in the - GnuPG ecosystem. One project that we really want to - contribute to - is GPGTools, which - many activists and journalists rely on to secure their - online communication. We want to make sure that GPG - integration in Apple's mailer is supported as soon as a - new version of macOS is released. -

- Now, maybe you don't use GnuPG to encrypt your email. - Nevertheless, some journalists whose work you value rely - on GnuPG to protect their sources, some activists fighting - for a cause that you sympathize with rely on GnuPG to - protect their communication, and some lawyers speaking - with their clients rely on GnuPG to help protect - attorney-client conversations. And, free software-based - operating systems use GnuPG to verify software updates. -

-

So, if you are convinced as we - are that this work is essential to protecting democracy - and privacy, then please help us to continue our - work and stay independent.

-
-
+#+BEGIN_HTML +
+ Donate 10 ? a month +
+ - -
-
-
-
-

What we intend to do

-
-
-
-
-
-
-
-

Maintenance

-

Our first priority is to ensure continued maintenance - of GnuPG. This entails reacting to bug reports, dealing - with security issues, and staying current with best - cryptography practices.

-
-
-
-
-

Gnuk

-

The Gnuk - is a fully free software and open schematic - security token developed by Niibe. We want to - invest more in its production and - distribution.

-
-
-
-
-
-
-

Book

-

We want to improve documentation. One major - project in this area is a book that we have - started to write called An Advanced - Introduction to GnuPG, which will explain how - GnuPG works as well as best practices. It is - targetted towards digital security trainers, - programmers integrating GnuPG to their - applications, and enthusiasts.

-
-
-
-
-

Greater Ecosystem

-

Few people use GnuPG directly. Instead they - interact with it via some tool. We hope to better - help these tool developers improve GnuPG - integration. In particular, we want to make sure - that GPGTools, - the GnuPG plug-in for Apple's mailer, works as - soon as a new version of macOS is released.

-
-
-
-
-
-
+ +
+ +
+#+END_HTML -
-
-
-

What others say about GnuPG

-
-
-
- - - - - - - - - - - - - - -
-
- -
- - - -
-
- +** Recent donors - - +#+BEGIN_HTML +

+

Donations received in + +:  + +

#+END_HTML # eof # ----------------------------------------------------------------------- Summary of changes: web/donate/index.org | 1657 ++------------------------------------------------ 1 file changed, 49 insertions(+), 1608 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 5 17:49:55 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 05 Sep 2017 17:49:55 +0200 Subject: [git] gnupg-doc - branch, master, updated. fea357fc405280e4b280aa1fb5490c23605ef21f Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via fea357fc405280e4b280aa1fb5490c23605ef21f (commit) from fa2207d6fa76e051bcb3d2145ad66cdc07433d23 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit fea357fc405280e4b280aa1fb5490c23605ef21f Author: Werner Koch Date: Tue Sep 5 17:46:10 2017 +0200 web: Use a new bitcoin address. diff --git a/web/donate/checkout-bc.de.org b/web/donate/checkout-bc.de.org index de49a43..959428a 100644 --- a/web/donate/checkout-bc.de.org +++ b/web/donate/checkout-bc.de.org @@ -50,8 +50,8 @@

Senden Sie Ihre Bitcoins an - 1EAw3RnaALKiES8Ap93SwwDx4fsoY12wzF. + 1Q5ee4TcWRrphgT6UES9jZRJuwACJbEJ28.

diff --git a/web/donate/checkout-bc.fr.org b/web/donate/checkout-bc.fr.org index 7ad1ba8..baedd5e 100644 --- a/web/donate/checkout-bc.fr.org +++ b/web/donate/checkout-bc.fr.org @@ -49,8 +49,8 @@

Veuillez envoyer votre montant en Bitcoin ? - 1EAw3RnaALKiES8Ap93SwwDx4fsoY12wzF. + 1Q5ee4TcWRrphgT6UES9jZRJuwACJbEJ28.

diff --git a/web/donate/checkout-bc.ja.org b/web/donate/checkout-bc.ja.org index f18ada4..fc46698 100644 --- a/web/donate/checkout-bc.ja.org +++ b/web/donate/checkout-bc.ja.org @@ -49,8 +49,8 @@

Bitcoin????? - 1EAw3RnaALKiES8Ap93SwwDx4fsoY12wzF???????? + 1Q5ee4TcWRrphgT6UES9jZRJuwACJbEJ28????????

diff --git a/web/donate/checkout-bc.org b/web/donate/checkout-bc.org index 016bbc5..9ecc2bf 100644 --- a/web/donate/checkout-bc.org +++ b/web/donate/checkout-bc.org @@ -49,8 +49,8 @@

Send your Bitcoins to - 1EAw3RnaALKiES8Ap93SwwDx4fsoY12wzF. + 1Q5ee4TcWRrphgT6UES9jZRJuwACJbEJ28.

----------------------------------------------------------------------- Summary of changes: web/donate/checkout-bc.de.org | 4 ++-- web/donate/checkout-bc.fr.org | 4 ++-- web/donate/checkout-bc.ja.org | 4 ++-- web/donate/checkout-bc.org | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 5 17:58:47 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 05 Sep 2017 17:58:47 +0200 Subject: [git] gnupg-doc - branch, master, updated. 0df7691b59f6a3be2fc58945ce5442fb9ec62822 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 0df7691b59f6a3be2fc58945ce5442fb9ec62822 (commit) from fea357fc405280e4b280aa1fb5490c23605ef21f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 0df7691b59f6a3be2fc58945ce5442fb9ec62822 Author: Werner Koch Date: Tue Sep 5 17:55:05 2017 +0200 web: Improve the new donation main page. diff --git a/web/donate/index.org b/web/donate/index.org index e126638..1e84ab4 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -27,6 +27,14 @@ to help with development and maintenance please consider to make a donation. +** Ways to donate + + We accept donations via credit card, Paypal, and SEPA transactions. + Donating Bitcoins is also possible. Note that the donations are + collected and spent by g10 Code GmbH, which can't issue charitable + donation certificates. + + Please continue to the donation form: #+BEGIN_HTML

@@ -37,12 +45,12 @@
5 ? a month + >Donate 5 ? a month
20 ? a month + >Donate 20 ? a month
----------------------------------------------------------------------- Summary of changes: web/donate/index.org | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 5 18:52:40 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 05 Sep 2017 18:52:40 +0200 Subject: [git] gnupg-doc - branch, master, updated. cbd448822077402651094bbfd158a53d7b822349 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via cbd448822077402651094bbfd158a53d7b822349 (commit) from 0df7691b59f6a3be2fc58945ce5442fb9ec62822 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit cbd448822077402651094bbfd158a53d7b822349 Author: Werner Koch Date: Tue Sep 5 18:48:57 2017 +0200 campaign: Also rename the translations of the main page diff --git a/web/donate/index.de.org b/web/donate/camp2017.de.org similarity index 94% rename from web/donate/index.de.org rename to web/donate/camp2017.de.org index 5504753..3f2f41a 100644 --- a/web/donate/index.de.org +++ b/web/donate/camp2017.de.org @@ -40,17 +40,17 @@
- [This is a snaphot of the page at the end of the - campaign on 2017-09-05.] +

[This is a snaphot of the page at the end of the + campaign on 2017-09-05.]

+
diff --git a/web/donate/index.org b/web/donate/index.org index 1e84ab4..3570a6e 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -7,7 +7,7 @@ # fine as it is stripped before publishing. -* GnuPG needs your support to help protect online privacy. +* GnuPG needs your support to help protect online privacy Activists, journalists, lawyers, and many others rely on GnuPG to protect their communication. And, nearly all free software-based ----------------------------------------------------------------------- Summary of changes: web/donate/{index.de.org => camp2017.de.org} | 133 +++++++++++++++++++++++++-- web/donate/{index.fr.org => camp2017.fr.org} | 132 ++++++++++++++++++++++++-- web/donate/{index.ja.org => camp2017.ja.org} | 123 +++++++++++++++++++++++-- web/donate/camp2017.org | 5 +- web/donate/index.org | 2 +- 5 files changed, 362 insertions(+), 33 deletions(-) rename web/donate/{index.de.org => camp2017.de.org} (94%) rename web/donate/{index.fr.org => camp2017.fr.org} (94%) rename web/donate/{index.ja.org => camp2017.ja.org} (94%) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 6 08:33:34 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 06 Sep 2017 08:33:34 +0200 Subject: [git] Assuan - branch, master, updated. libassuan-2.4.3-6-g87473cd Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPC library used by GnuPG". The branch, master has been updated via 87473cd29ca9d5e3fb1c3172126c1122472d8b90 (commit) from 859f9a9754708572a6289853d7d95b9ee3eae589 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 87473cd29ca9d5e3fb1c3172126c1122472d8b90 Author: NIIBE Yutaka Date: Wed Sep 6 15:24:10 2017 +0900 Define INADDR_LOOPBACK if not defined. * src/assuan-socket.c (INADDR_LOOPBACK): Define. -- INADDR_LOOPBACK is not defined in some systems. When defined, its byte-order is not clearly defined in any specifications. So, best portable way is not to use the macro INADDR_LOOPBACK at all but use 0x7f000001 directly. Nevertheless, for systems which use libassuan, it's host byte-order. So, adding the definition works. GnuPG-bug-id: 2447 Suggested-by: Peter Dyballa Signed-off-by: NIIBE Yutaka diff --git a/src/assuan-socket.c b/src/assuan-socket.c index d7616ce..6131e5b 100644 --- a/src/assuan-socket.c +++ b/src/assuan-socket.c @@ -107,6 +107,11 @@ #endif +#ifndef INADDR_LOOPBACK +# define INADDR_LOOPBACK ((in_addr_t) 0x7f000001) /* 127.0.0.1. */ +#endif + + /* The standard SOCKS and TOR port. */ #define SOCKS_PORT 1080 #define TOR_PORT 9050 ----------------------------------------------------------------------- Summary of changes: src/assuan-socket.c | 5 +++++ 1 file changed, 5 insertions(+) hooks/post-receive -- IPC library used by GnuPG http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 6 11:28:18 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 06 Sep 2017 11:28:18 +0200 Subject: [git] Assuan - branch, master, updated. libassuan-2.4.3-7-g87c2bb5 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPC library used by GnuPG". The branch, master has been updated via 87c2bb5708ff202651fca81d91d5f1e0c898cb07 (commit) from 87473cd29ca9d5e3fb1c3172126c1122472d8b90 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 87c2bb5708ff202651fca81d91d5f1e0c898cb07 Author: NIIBE Yutaka Date: Wed Sep 6 18:25:56 2017 +0900 We can't support fd passing, if the system doesn't support it. * configure.ac (check_descriptor_passing): New. (use_descriptor_passing): Use check_descriptor_passing. -- GnuPG-bug-id: 3384 Signed-off-by: NIIBE Yutaka diff --git a/configure.ac b/configure.ac index cd36183..118e047 100644 --- a/configure.ac +++ b/configure.ac @@ -105,12 +105,16 @@ LT_LANG([Windows Resource]) # For now we hardcode the use of version scripts. It would be better # to write a test for this or even implement this within libtool. have_ld_version_script=no +check_descriptor_passing=yes case "${host}" in + *-*-cygwin*) + check_descriptor_passing=no + ;; *-*-linux*) - have_ld_version_script=yes + have_ld_version_script=yes ;; *-*-gnu*) - have_ld_version_script=yes + have_ld_version_script=yes ;; *-apple-darwin*) AC_DEFINE(_XOPEN_SOURCE, 500, Activate POSIX interface on MacOS X) @@ -217,10 +221,10 @@ case "${host}" in have_w32_system=yes ;; *-solaris*) - AC_DEFINE(_XOPEN_SOURCE, 500, Activate extensions on Solaris) - AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Activate extensions on Solaris) - AC_DEFINE(__EXTENSIONS__, 1, Activate extensions on Solaris) - ;; + AC_DEFINE(_XOPEN_SOURCE, 500, Activate extensions on Solaris) + AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Activate extensions on Solaris) + AC_DEFINE(__EXTENSIONS__, 1, Activate extensions on Solaris) + ;; esac if test "$have_dosish_system" = yes; then @@ -279,7 +283,7 @@ AC_DEFINE_UNQUOTED(BUILD_TIMESTAMP, "$BUILD_TIMESTAMP", # Check for network libraries. They are needed for tests. # AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB(socket, setsockopt, - [NETLIBS="-lsocket $NETLIBS"])) + [NETLIBS="-lsocket $NETLIBS"])) AC_SUBST(NETLIBS) if test "$have_w32_system" = yes; then @@ -329,10 +333,13 @@ AC_DECL_SYS_SIGLIST gl_HEADER_SYS_SOCKET gl_TYPE_SOCKLEN_T -AC_CHECK_MEMBER(struct cmsghdr.cmsg_len, - [use_descriptor_passing=yes], - [use_descriptor_passing=no - AC_MSG_WARN([ +if test $check_descriptor_passing != yes; then + use_descriptor_passing=no +else + AC_CHECK_MEMBER(struct cmsghdr.cmsg_len, + [use_descriptor_passing=yes], + [use_descriptor_passing=no + AC_MSG_WARN([ *** *** Data structure for sending ancillary data missing. *** Descriptor passing won't work. @@ -348,6 +355,7 @@ AC_CHECK_MEMBER(struct cmsghdr.cmsg_len, #endif #include ]) +fi if test "$use_descriptor_passing" = "yes"; then AC_DEFINE(USE_DESCRIPTOR_PASSING, 1, [Defined if descriptor passing is supported]) ----------------------------------------------------------------------- Summary of changes: configure.ac | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) hooks/post-receive -- IPC library used by GnuPG http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 6 22:29:43 2017 From: cvs at cvs.gnupg.org (by Frans Spiesschaert) Date: Wed, 06 Sep 2017 22:29:43 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-1-4, updated. gnupg-1.4.22-7-gaa26eda Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-1-4 has been updated via aa26eda8ab679a80a7be2c82478cb4440b45ec8c (commit) from eb15d5ed8e4a765998e9de7698bdc65328bcaaa3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit aa26eda8ab679a80a7be2c82478cb4440b45ec8c Author: Frans Spiesschaert Date: Wed Sep 6 16:28:29 2017 -0400 po: update Dutch translation. Signed-off-by: Daniel Kahn Gillmor diff --git a/po/nl.po b/po/nl.po index e47fd96..888f97a 100644 --- a/po/nl.po +++ b/po/nl.po @@ -24,13 +24,13 @@ # When output to an ASCII terminal, the single quotation marks are # transliterated to apostrophes, and the double quotation marks are # transliterated to 0x22. -# Frans Spiesschaert , 2014, 2016. +# Frans Spiesschaert , 2014, 2017. # msgid "" msgstr "" -"Project-Id-Version: gnupg 1.4.21\n" +"Project-Id-Version: gnupg 1.4.22\n" "Report-Msgid-Bugs-To: translations at gnupg.org\n" -"PO-Revision-Date: 2016-11-08 20:05+0100\n" +"PO-Revision-Date: 2017-08-16 22:32+0200\n" "Last-Translator: Frans Spiesschaert \n" "Language-Team: Debian Dutch l10n Team \n" "Language: nl\n" @@ -38,7 +38,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Gtranslator 2.91.6\n" +"X-Generator: Gtranslator 2.91.7\n" #, c-format msgid "can't gen prime with pbits=%u qbits=%u\n" @@ -2944,8 +2944,9 @@ msgstr "" " de veronderstelde primaire ID worden.\n" msgid "WARNING: Your encryption subkey expires soon.\n" -msgstr "WAARSCHUWING: Binnenkort vervalt uw encryptie-subsleutel.\n" +msgstr "WAARSCHUWING: uw encryptie-subsleutel vervalt weldra.\n" +#| msgid "You can't change the expiration date of a v3 key\n" msgid "You may want to change its expiration date too.\n" msgstr "Misschien wilt u ook zijn vervaldatum wijzigen.\n" @@ -4054,8 +4055,9 @@ msgid "unknown option `%s'\n" msgstr "onbekende optie `%s'\n" #, c-format +#| msgid "Unknown signature type `%s'\n" msgid "Unknown weak digest '%s'\n" -msgstr "Onbekende zwakke hash ?%s?\n" +msgstr "Onbekende zwakke hash '%s'\n" #, c-format msgid "File `%s' exists. " @@ -4679,9 +4681,10 @@ msgid "NOTE: signature key %s expired %s\n" msgstr "NOOT: ondertekeningssleutel %s verviel op %s\n" #, c-format +#| msgid "%s signature, digest algorithm %s\n" msgid "Note: signatures using the %s algorithm are rejected\n" msgstr "" -"Opmerking: handtekeningen die het algoritme %s gebruiken worden verworpen\n" +"Merk op: handtekeningen die het algoritme %s gebruiken, worden verworpen\n" #, c-format msgid "assuming bad signature from key %s due to an unknown critical bit\n" ----------------------------------------------------------------------- Summary of changes: po/nl.po | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Sep 8 07:36:09 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Fri, 08 Sep 2017 07:36:09 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-3-g17f764d Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 17f764dd4972a063fe09c4b9d2846e8efcb25c7a (commit) from ff7ccd284c327a5b1c89603f157089177dac9d13 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 17f764dd4972a063fe09c4b9d2846e8efcb25c7a Author: NIIBE Yutaka Date: Fri Sep 8 14:21:29 2017 +0900 tests: Fix a test which specifies expiration date. * tests/openpgp/quick-key-manipulation.scm: Fix expiration time comparison. -- This is a bug fix for Amelia Earhart who is probably in UTC-12. When expiration date is specified, GnuPG interprets it as noon of the date in local time. Before this fix, the test compared the value by 2145916800 which is 2038-01-01 00:00:00 in UTC with allowance of 1 day. When the test was ran in UTC-12 timezone, it failed because of noon in the timezone is midnight of the next day in UTC. GnuPG-bug-id: 3393 Reported-by: Daniel Kahn Gillmor Signed-off-by: NIIBE Yutaka diff --git a/tests/openpgp/quick-key-manipulation.scm b/tests/openpgp/quick-key-manipulation.scm index c21abfe..2023f17 100755 --- a/tests/openpgp/quick-key-manipulation.scm +++ b/tests/openpgp/quick-key-manipulation.scm @@ -178,11 +178,11 @@ (lambda (subkey) (assert (= 1 (:alg subkey))) (assert (string-contains? (:cap subkey) "s")) - (assert (time-matches? 2145916800 ;; 2038-01-01 - ;; 4260207600 ;; 2105-01-01 + (assert (time-matches? 2145960000 ;; UTC 2038-01-01 12:00:00 + ;; 4260254400 ;; UTC 2105-01-01 12:00:00 (string->number (:expire subkey)) - ;; This is off by 12h, but I guess it just - ;; choses the middle of the day. + ;; GnuPG choses the middle of the day (local time) + ;; when no hh:mm:ss is specified (days->seconds 1)))) (lambda (subkey) (assert (= 1 (:alg subkey))) ----------------------------------------------------------------------- Summary of changes: tests/openpgp/quick-key-manipulation.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Sep 8 17:38:22 2017 From: cvs at cvs.gnupg.org (by Daniel Kahn Gillmor) Date: Fri, 08 Sep 2017 17:38:22 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-5-g909fbca Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 909fbca19678e6e36968607e8a2348381da39d8c (commit) via 7955262151a5c755814dd23414e6804f79125355 (commit) from 17f764dd4972a063fe09c4b9d2846e8efcb25c7a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 909fbca19678e6e36968607e8a2348381da39d8c Author: Daniel Kahn Gillmor Date: Thu Sep 7 18:41:10 2017 -0400 gpg: default to 3072-bit RSA keys. * agent/command.c (hlp_genkey): update help text to suggest the use of 3072 bits. * doc/wks.texi: Make example match default generation. * g10/keygen.c (DEFAULT_STD_KEY_PARAM): update to rsa3072/cert,sign+rsa3072/encr, and fix neighboring comment, (gen_rsa, get_keysize_range): update default from 2048 to 3072). * g10/keyid.c (pubkey_string): update comment so that first example is the default 3072-bit RSA. -- 3072-bit RSA is widely considered to be 128-bit-equivalent security. This is a sensible default in 2017. Signed-off-by: Daniel Kahn Gillmor Gbp-Pq: Topic update-defaults Gbp-Pq: Name 0015-gpg-default-to-3072-bit-RSA-keys.patch diff --git a/agent/command.c b/agent/command.c index f2a6683..fd39c68 100644 --- a/agent/command.c +++ b/agent/command.c @@ -874,7 +874,7 @@ static const char hlp_genkey[] = "\n" " C: GENKEY\n" " S: INQUIRE KEYPARAM\n" - " C: D (genkey (rsa (nbits 2048)))\n" + " C: D (genkey (rsa (nbits 3072)))\n" " C: END\n" " S: D (public-key\n" " S: D (rsa (n 326487324683264) (e 10001)))\n" diff --git a/doc/wks.texi b/doc/wks.texi index f9b1a0c..f17497f 100644 --- a/doc/wks.texi +++ b/doc/wks.texi @@ -301,11 +301,11 @@ the submission address: The output of the last command looks similar to this: @example - sec rsa2048 2016-08-30 [SC] + sec rsa3072 2016-08-30 [SC] C0FCF8642D830C53246211400346653590B3795B uid [ultimate] key-submission@@example.net bxzcxpxk8h87z1k7bzk86xn5aj47intu@@example.net - ssb rsa2048 2016-08-30 [E] + ssb rsa3072 2016-08-30 [E] @end example Take the hash of the string "key-submission", which is diff --git a/g10/keygen.c b/g10/keygen.c index 6a3d323..048a391 100644 --- a/g10/keygen.c +++ b/g10/keygen.c @@ -46,11 +46,10 @@ #include "../common/mbox-util.h" -/* The default algorithms. If you change them remember to change them - also in gpg.c:gpgconf_list. You should also check that the value +/* The default algorithms. If you change them, you should ensure the value is inside the bounds enforced by ask_keysize and gen_xxx. See also get_keysize_range which encodes the allowed ranges. */ -#define DEFAULT_STD_KEY_PARAM "rsa2048/cert,sign+rsa2048/encr" +#define DEFAULT_STD_KEY_PARAM "rsa3072/cert,sign+rsa3072/encr" #define FUTURE_STD_KEY_PARAM "ed25519/cert,sign+cv25519/encr" /* When generating keys using the streamlined key generation dialog, @@ -1623,7 +1622,7 @@ gen_rsa (int algo, unsigned int nbits, KBNODE pub_root, if (nbits < 1024) { - nbits = 2048; + nbits = 3072; log_info (_("keysize invalid; using %u bits\n"), nbits ); } else if (nbits > maxsize) @@ -2092,7 +2091,7 @@ get_keysize_range (int algo, unsigned int *min, unsigned int *max) default: *min = opt.compliance == CO_DE_VS ? 2048: 1024; *max = 4096; - def = 2048; + def = 3072; break; } diff --git a/g10/keyid.c b/g10/keyid.c index d733156..c519bc5 100644 --- a/g10/keyid.c +++ b/g10/keyid.c @@ -73,7 +73,7 @@ pubkey_letter( int algo ) is copied to the supplied buffer up a length of BUFSIZE-1. Examples for the output are: - "rsa2048" - RSA with 2048 bit + "rsa3072" - RSA with 3072 bit "elg1024" - Elgamal with 1024 bit "ed25519" - ECC using the curve Ed25519. "E_1.2.3.4" - ECC using the unsupported curve with OID "1.2.3.4". @@ -83,7 +83,7 @@ pubkey_letter( int algo ) If the option --legacy-list-mode is active, the output use the legacy format: - "2048R" - RSA with 2048 bit + "3072R" - RSA with 3072 bit "1024g" - Elgamal with 1024 bit "256E" - ECDSA using a curve with 256 bit commit 7955262151a5c755814dd23414e6804f79125355 Author: Daniel Kahn Gillmor Date: Thu Sep 7 18:39:37 2017 -0400 gpgsm: default to 3072-bit keys. * doc/gpgsm.texi, doc/howto-create-a-server-cert.texi: : update default to 3072 bits. * sm/certreqgen-ui.c (gpgsm_gencertreq_tty): update default to 3072 bits. * sm/certreqgen.c (proc_parameters): update default to 3072 bits. * sm/gpgsm.c (main): print correct default_pubkey_algo. -- 3072-bit RSA is widely considered to be 128-bit-equivalent security. This is a sensible default in 2017. Signed-off-by: Daniel Kahn Gillmor Gbp-Pq: Topic update-defaults Gbp-Pq: Name 0014-gpgsm-default-to-3072-bit-keys.patch diff --git a/doc/gpgsm.texi b/doc/gpgsm.texi index 5d79ce5..bdc6b87 100644 --- a/doc/gpgsm.texi +++ b/doc/gpgsm.texi @@ -1073,7 +1073,7 @@ key. The algorithm must be capable of signing. This is a required parameter. The only supported value for @var{algo} is @samp{rsa}. @item Key-Length: @var{nbits} -The requested length of a generated key in bits. Defaults to 2048. +The requested length of a generated key in bits. Defaults to 3072. @item Key-Grip: @var{hexstring} This is optional and used to generate a CSR or certificate for an diff --git a/doc/howto-create-a-server-cert.texi b/doc/howto-create-a-server-cert.texi index 55f1a91..30e28bd 100644 --- a/doc/howto-create-a-server-cert.texi +++ b/doc/howto-create-a-server-cert.texi @@ -31,14 +31,14 @@ Let's continue: @cartouche @example - What keysize do you want? (2048) - Requested keysize is 2048 bits + What keysize do you want? (3072) + Requested keysize is 3072 bits @end example @end cartouche -Hitting enter chooses the default RSA key size of 2048 bits. Smaller -keys are too weak on the modern Internet. If you choose a larger -(stronger) key, your server will need to do more work. +Hitting enter chooses the default RSA key size of 3072 bits. Keys +smaller than 2048 bits are too weak on the modern Internet. If you +choose a larger (stronger) key, your server will need to do more work. @cartouche @example @@ -124,7 +124,7 @@ request: @example These parameters are used: Key-Type: RSA - Key-Length: 2048 + Key-Length: 3072 Key-Usage: sign, encrypt Name-DN: CN=example.com Name-DNS: example.com @@ -224,7 +224,7 @@ To see the content of your certificate, you may now enter: aka: (dns-name example.com) aka: (dns-name www.example.com) validity: 2015-07-01 16:20:51 through 2016-07-01 16:20:51 - key type: 2048 bit RSA + key type: 3072 bit RSA key usage: digitalSignature keyEncipherment ext key usage: clientAuth (suggested), serverAuth (suggested), [...] fingerprint: 0F:9C:27:B2:DA:05:5F:CB:33:D8:19:E9:65:B9:4F:BD:B1:98:CC:57 diff --git a/sm/certreqgen-ui.c b/sm/certreqgen-ui.c index 9772a3b..4f8a1ac 100644 --- a/sm/certreqgen-ui.c +++ b/sm/certreqgen-ui.c @@ -138,7 +138,7 @@ gpgsm_gencertreq_tty (ctrl_t ctrl, estream_t output_stream) unsigned int nbits; int minbits = 1024; int maxbits = 4096; - int defbits = 2048; + int defbits = 3072; const char *keyusage; char *subject_name; membuf_t mb_email, mb_dns, mb_uri, mb_result; diff --git a/sm/certreqgen.c b/sm/certreqgen.c index 4431870..1d610c1 100644 --- a/sm/certreqgen.c +++ b/sm/certreqgen.c @@ -26,7 +26,7 @@ $ cat >foo < 4096) && !cardkeyid) diff --git a/sm/gpgsm.c b/sm/gpgsm.c index 10eff0a..fa37f63 100644 --- a/sm/gpgsm.c +++ b/sm/gpgsm.c @@ -1785,7 +1785,7 @@ main ( int argc, char **argv) /* The next one is an info only item and should match what proc_parameters actually implements. */ es_printf ("default_pubkey_algo:%lu:\"%s:\n", GC_OPT_FLAG_DEFAULT, - "RSA-2048"); + "RSA-3072"); } break; ----------------------------------------------------------------------- Summary of changes: agent/command.c | 2 +- doc/gpgsm.texi | 2 +- doc/howto-create-a-server-cert.texi | 14 +++++++------- doc/wks.texi | 4 ++-- g10/keygen.c | 9 ++++----- g10/keyid.c | 4 ++-- sm/certreqgen-ui.c | 2 +- sm/certreqgen.c | 4 ++-- sm/gpgsm.c | 2 +- 9 files changed, 21 insertions(+), 22 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Fri Sep 8 20:33:48 2017 From: cvs at cvs.gnupg.org (by Daniel Kahn Gillmor) Date: Fri, 08 Sep 2017 20:33:48 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-6-g73ff075 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 73ff075204df09db5248170a049f06498cdbb7aa (commit) from 909fbca19678e6e36968607e8a2348381da39d8c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 73ff075204df09db5248170a049f06498cdbb7aa Author: Daniel Kahn Gillmor Date: Thu Sep 7 19:04:00 2017 -0400 gpg: default to AES-256. * g10/main.h (DEFAULT_CIPHER_ALGO): Prefer AES256 by default. -- It's 2017, and pretty much everyone has AES-256 available. Symmetric crypto is also rarely the bottleneck (asymmetric crypto is much more expensive). AES-256 provides some level of protection against large-scale decryption efforts, and longer key lengths provide a hedge against unforseen cryptanalysis. Signed-off-by: Daniel Kahn Gillmor diff --git a/g10/main.h b/g10/main.h index 87417ee..4850360 100644 --- a/g10/main.h +++ b/g10/main.h @@ -31,7 +31,9 @@ (i.e. uncompressed) rather than 1 (zip). However, the real world issues of speed and size come into play here. */ -#if GPG_USE_AES128 +#if GPG_USE_AES256 +# define DEFAULT_CIPHER_ALGO CIPHER_ALGO_AES256 +#elif GPG_USE_AES128 # define DEFAULT_CIPHER_ALGO CIPHER_ALGO_AES #elif GPG_USE_CAST5 # define DEFAULT_CIPHER_ALGO CIPHER_ALGO_CAST5 ----------------------------------------------------------------------- Summary of changes: g10/main.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Sat Sep 9 00:45:11 2017 From: cvs at cvs.gnupg.org (by Daniel Kahn Gillmor) Date: Sat, 09 Sep 2017 00:45:11 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-7-g926d07c Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 926d07c5fa05de05caef3a72b6fe156606ac0549 (commit) from 73ff075204df09db5248170a049f06498cdbb7aa (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 926d07c5fa05de05caef3a72b6fe156606ac0549 Author: Daniel Kahn Gillmor Date: Fri Sep 8 17:08:57 2017 -0400 agent: compile-time configuration of s2k calibration. * configure.ac: add --with-agent-s2k-calibration=MSEC, introduces AGENT_S2K_CALIBRATION (measured in milliseconds) * agent/protect.c (calibrate_s2k_count): Calibrate based on AGENT_S2K_CALIBRATION. Signed-off-by: Daniel Kahn Gillmor GnuPG-bug-id: 3399 diff --git a/agent/protect.c b/agent/protect.c index c257861..9b262a9 100644 --- a/agent/protect.c +++ b/agent/protect.c @@ -159,7 +159,7 @@ calibrate_s2k_count_one (unsigned long count) /* Measure the time we need to do the hash operations and deduce an - S2K count which requires about 100ms of time. */ + S2K count which requires roughly some targeted amount of time. */ static unsigned long calibrate_s2k_count (void) { @@ -171,11 +171,11 @@ calibrate_s2k_count (void) ms = calibrate_s2k_count_one (count); if (opt.verbose > 1) log_info ("S2K calibration: %lu -> %lums\n", count, ms); - if (ms > 100) + if (ms > AGENT_S2K_CALIBRATION) break; } - count = (unsigned long)(((double)count / ms) * 100); + count = (unsigned long)(((double)count / ms) * AGENT_S2K_CALIBRATION); count /= 1024; count *= 1024; if (count < 65536) diff --git a/configure.ac b/configure.ac index ee3aac6..b43cb60 100644 --- a/configure.ac +++ b/configure.ac @@ -122,7 +122,6 @@ use_tls_library=no large_secmem=no show_tor_support=no - GNUPG_BUILD_PROGRAM(gpg, yes) GNUPG_BUILD_PROGRAM(gpgsm, yes) # The agent is a required part and can't be disabled anymore. @@ -250,6 +249,15 @@ fi AC_DEFINE_UNQUOTED(SECMEM_BUFFER_SIZE,$SECMEM_BUFFER_SIZE, [Size of secure memory buffer]) +AC_MSG_CHECKING([calibrated passphrase-stretching (s2k) duration]) +AC_ARG_WITH(agent-s2k-calibration, + AC_HELP_STRING([--with-agent-s2k-calibration=MSEC], + [calibrate passphrase stretching (s2k) to MSEC milliseconds]), + agent_s2k_calibration=$withval, agent_s2k_calibration=100) +AC_MSG_RESULT($agent_s2k_calibration milliseconds) +AC_DEFINE_UNQUOTED(AGENT_S2K_CALIBRATION, $agent_s2k_calibration, + [Agent s2k calibration time (ms)]) + AC_MSG_CHECKING([whether to enable trust models]) AC_ARG_ENABLE(trust-models, AC_HELP_STRING([--disable-trust-models], ----------------------------------------------------------------------- Summary of changes: agent/protect.c | 6 +++--- configure.ac | 10 +++++++++- 2 files changed, 12 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Sep 11 11:33:07 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 11 Sep 2017 11:33:07 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.0-2-g7089dcc Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via 7089dcc54099a4909ce7d386c07ab87e1398e2eb (commit) from 9e3d41bf727fcf12f7cf05926890c687125c2902 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 7089dcc54099a4909ce7d386c07ab87e1398e2eb Author: Werner Koch Date: Mon Sep 11 11:29:13 2017 +0200 gpg: Fix key generation with only an email part. * g10/keygen.c (proc_parameter_file): Special case the email only case. -- Using a parameter file like %ask-passphrase key-type: RSA key-length: 2048 key-usage: sign subkey-type: RSA subkey-length: 2048 subkey-usage: encrypt name-email: foo at example.org with "gpg --gen-key --patch" the result was this key pub rsa2048 2017-09-11 [SC] 63A8C1BA12CC289A0E8072C971C7F8D4A18CE0BE uid [ultimate] sub rsa2048 2017-09-11 [E] At least the the extra leading space the left angle bracket is wrong. Further some mail providers reject keys which consist of more than just a plain mail address. Using just a mail address is anyway the new new suggested content for a user id. With this patch the key will be pub rsa2048 2017-09-11 [SC] B302343C20EA6DECDB6A155135352F2520397080 uid [ultimate] foo at example.org sub rsa2048 2017-09-11 [E] Signed-off-by: Werner Koch diff --git a/g10/keygen.c b/g10/keygen.c index 6a3d323..08bc621 100644 --- a/g10/keygen.c +++ b/g10/keygen.c @@ -3530,7 +3530,14 @@ proc_parameter_file (ctrl_t ctrl, struct para_data_s *para, const char *fname, if( s2 ) p = stpcpy(stpcpy(stpcpy(p," ("), s2 ),")"); if( s3 ) - p = stpcpy(stpcpy(stpcpy(p," <"), s3 ),">"); + { + /* If we have only the email part, do not add the space + * and the angle brackets. */ + if (*p) + p = stpcpy(stpcpy(stpcpy(p," <"), s3 ),">"); + else + p = stpcpy (p, s3); + } append_to_parameter (para, r); have_user_id=1; } ----------------------------------------------------------------------- Summary of changes: g10/keygen.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Sep 11 12:54:01 2017 From: cvs at cvs.gnupg.org (by Alon Bar-Lev) Date: Mon, 11 Sep 2017 12:54:01 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-8-g384a374 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 384a3748d9022b7ae3f629c13f92e204565fea3d (commit) from 926d07c5fa05de05caef3a72b6fe156606ac0549 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 384a3748d9022b7ae3f629c13f92e204565fea3d Author: Alon Bar-Lev Date: Fri Sep 1 22:19:26 2017 +0300 sm: Move qualified.txt from datadir into sysconfdir * doc/Makefile.am: Move qualified.txt into examples. * doc/qualified.txt: Move into examples, remove trailing spaces. * doc/examples/README: Document qualified.txt. * doc/gpgsm.texi: Move qualified.txt from datadir into sysconfdir. * sm/qualified.c (read_list): Move qualified.txt from datadir into sysconfdir. -- The qualified.txt is maintained by Administrator it is a configuration file. In the past it was a hybrid, provided by package and controlled by the Administrator, however, it is no longer maintained by package. Signed-off-by: Alon Bar-Lev diff --git a/doc/Makefile.am b/doc/Makefile.am index 89079b3..c0c7fd0 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -22,7 +22,7 @@ AM_CPPFLAGS = include $(top_srcdir)/am/cmacros.am examples = examples/README examples/scd-event examples/trustlist.txt \ - examples/vsnfd.prf examples/debug.prf \ + examples/vsnfd.prf examples/debug.prf examples/qualified.txt \ examples/systemd-user/README \ examples/systemd-user/dirmngr.service \ examples/systemd-user/dirmngr.socket \ @@ -43,7 +43,7 @@ helpfiles = help.txt help.be.txt help.ca.txt help.cs.txt \ profiles = -EXTRA_DIST = samplekeys.asc mksamplekeys com-certs.pem qualified.txt \ +EXTRA_DIST = samplekeys.asc mksamplekeys com-certs.pem \ gnupg-logo.eps gnupg-logo.pdf gnupg-logo.png gnupg-logo-tr.png \ gnupg-module-overview.png gnupg-module-overview.pdf \ gnupg-card-architecture.png gnupg-card-architecture.pdf \ diff --git a/doc/examples/README b/doc/examples/README index 77ee807..4d6a5be 100644 --- a/doc/examples/README +++ b/doc/examples/README @@ -9,3 +9,5 @@ trustlist.txt A list of trustworthy root certificates gpgconf.conf A sample configuration file for gpgconf. systemd-user Sample files for a Linux-only init system. + +qualified.txt Sample file for qualified.txt. diff --git a/doc/qualified.txt b/doc/examples/qualified.txt similarity index 98% rename from doc/qualified.txt rename to doc/examples/qualified.txt index c0e4da5..eba11f2 100644 --- a/doc/qualified.txt +++ b/doc/examples/qualified.txt @@ -29,7 +29,7 @@ # # Germany # -# The information for Germany is available +# The information for Germany is available # at http://www.bundesnetzagentur.de #******************************************* @@ -74,7 +74,7 @@ DB:45:3D:1B:B0:1A:F3:23:10:6B:DE:D0:09:61:57:AA:F4:25:E0:5B de #Serial number: 02 # Issuer: /CN=9R-CA 1:PN/O=Regulierungsbeh?rde f?r # Telekommunikation und Post/C=DE -# Subject: /CN=9R-CA 1:PN/O=Regulierungsbeh?rde f?r +# Subject: /CN=9R-CA 1:PN/O=Regulierungsbeh?rde f?r # Telekommunikation und Post/C=DE # validity: 2004-11-25 14:59:11 through 2007-12-31 14:56:59 # key type: 1024 bit RSA @@ -118,7 +118,7 @@ A0:8B:DF:3B:AA:EE:3F:9D:64:6C:47:81:23:21:D4:A6:18:81:67:1D de # key usage: certSign # policies: 1.3.36.8.1.1:N: # chain length: unlimited -# [checked: 2008-06-25] +# [checked: 2008-06-25] 44:7E:D4:E3:9A:D7:92:E2:07:FA:53:1A:2E:F5:B8:02:5B:47:57:B0 de # ID: 0x46A2CC8A @@ -130,7 +130,7 @@ A0:8B:DF:3B:AA:EE:3F:9D:64:6C:47:81:23:21:D4:A6:18:81:67:1D de # key usage: certSign # policies: 1.3.36.8.1.1:N: # chain length: unlimited -# [checked: 2008-06-25] +# [checked: 2008-06-25] AC:A7:BE:45:1F:A6:BF:09:F2:D1:3F:08:7B:BC:EB:7F:46:A2:CC:8A de @@ -215,7 +215,7 @@ E0:BF:1B:91:91:6B:88:E4:F1:15:92:22:CE:37:23:96:B1:4A:2E:5C de # key type: 2048 bit RSA # key usage: certSign crlSign # chain length: 1 -#[checked: 2007-12-13 via received ZIP file with qualified signature from +#[checked: 2007-12-13 via received ZIP file with qualified signature from # /CN=Dr. Matthias Stehle/O=Deutscher Sparkassenverlag # /C=DE/SerialNumber=DSV0000000008/SN=Stehle/GN=Matthias Georg] C9:2F:E6:50:DB:32:59:E0:CE:65:55:F3:8C:76:E0:B8:A8:FE:A3:CA de @@ -230,7 +230,7 @@ C9:2F:E6:50:DB:32:59:E0:CE:65:55:F3:8C:76:E0:B8:A8:FE:A3:CA de # key type: 2048 bit RSA # key usage: certSign crlSign # chain length: 1 -#[checked: 2007-12-13 via received ZIP file with qualified signature from +#[checked: 2007-12-13 via received ZIP file with qualified signature from # /CN=Dr. Matthias Stehle/O=Deutscher Sparkassenverlag # /C=DE/SerialNumber=DSV0000000008/SN=Stehle/GN=Matthias Georg"] D5:C7:50:F2:FE:4E:EE:D7:C7:B1:E4:13:7B:FB:54:84:3A:7D:97:9B de diff --git a/doc/gpgsm.texi b/doc/gpgsm.texi index bdc6b87..b187a54 100644 --- a/doc/gpgsm.texi +++ b/doc/gpgsm.texi @@ -843,15 +843,9 @@ purposes. Note that even if a certificate is listed in this file, this does not mean that the certificate is trusted; in general the certificates listed -in this file need to be listed also in @file{trustlist.txt}. - -This is a global file an installed in the data directory -(e.g. @file{@value{DATADIR}/qualified.txt}). GnuPG installs a suitable -file with root certificates as used in Germany. As new Root-CA -certificates may be issued over time, these entries may need to be -updated; new distributions of this software should come with an updated -list but it is still the responsibility of the Administrator to check -that this list is correct. +in this file need to be listed also in @file{trustlist.txt}. This is a global +file an installed in the sysconf directory (e.g. + at file{@value{SYSCONFDIR}/qualified.txt}). Every time @command{gpgsm} uses a certificate for signing or verification this file will be consulted to check whether the certificate under diff --git a/sm/qualified.c b/sm/qualified.c index 564e779..6a7b473 100644 --- a/sm/qualified.c +++ b/sm/qualified.c @@ -58,7 +58,7 @@ read_list (char *key, char *country, int *lnr) if (!listname) { - listname = make_filename (gnupg_datadir (), "qualified.txt", NULL); + listname = make_filename (gnupg_sysconfdir (), "qualified.txt", NULL); listfp = fopen (listname, "r"); if (!listfp && errno != ENOENT) { ----------------------------------------------------------------------- Summary of changes: doc/Makefile.am | 4 ++-- doc/examples/README | 2 ++ doc/{ => examples}/qualified.txt | 12 ++++++------ doc/gpgsm.texi | 12 +++--------- sm/qualified.c | 2 +- 5 files changed, 14 insertions(+), 18 deletions(-) rename doc/{ => examples}/qualified.txt (98%) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 12 13:39:42 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Tue, 12 Sep 2017 13:39:42 +0200 Subject: [git] GpgOL - branch, master, updated. gpgol-1.4.0-293-g4d3ab57 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG extension for MS Outlook". The branch, master has been updated via 4d3ab575495c2ee39b2bfcf4be89120e42af76b4 (commit) via 3234e47ec45f7a779593f44717c078f8efe5be01 (commit) via ad0ff8eca95c021df1a2d4b2a408c74460e07e1f (commit) via 600a2148f8ef49dc90acb6c72b5ee1ce55330841 (commit) from bcdcb844b9526f0d5483bb96ef58bc9fa5a5938f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 4d3ab575495c2ee39b2bfcf4be89120e42af76b4 Author: Andre Heinecke Date: Tue Sep 12 13:28:38 2017 +0200 Release GpgOL 2.2.0 -- diff --git a/NEWS b/NEWS index 6dcec59..8149d69 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,4 @@ -Noteworthy changes for version 2.0.0 (unreleased) +Noteworthy changes for version 2.0.0 (2017-09-12) ================================================= * Decryption / verification is done in a second thread so outlook commit 3234e47ec45f7a779593f44717c078f8efe5be01 Author: Andre Heinecke Date: Tue Sep 12 13:26:16 2017 +0200 Auto: Update translations * po: Auto update. diff --git a/po/de.po b/po/de.po index 0411235..26115b5 100644 --- a/po/de.po +++ b/po/de.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: GpgOL 1.0.0\n" "Report-Msgid-Bugs-To: bug-gpgol at g10code.com\n" -"POT-Creation-Date: 2017-09-12 11:38+0200\n" +"POT-Creation-Date: 2017-09-12 13:26+0200\n" "PO-Revision-Date: 2017-07-27 09:18+0100\n" "Last-Translator: Andre Heinecke \n" "Language-Team: English \n" @@ -174,11 +174,11 @@ msgstr "" msgid "Do you want to revert this folder?" msgstr "M?chten Sie diesen Ordner von GpgOL befreien?" -#: src/gpgoladdin.cpp:446 src/mail.cpp:1428 src/mail.cpp:1499 +#: src/gpgoladdin.cpp:446 src/mail.cpp:1444 src/mail.cpp:1515 msgid "GpgOL: Encrypted Message" msgstr "GpgOL: Verschl?sselte Nachricht" -#: src/gpgoladdin.cpp:447 src/mail.cpp:1429 src/mail.cpp:1500 +#: src/gpgoladdin.cpp:447 src/mail.cpp:1445 src/mail.cpp:1516 msgid "GpgOL: Trusted Sender Address" msgstr "GpgOL: Vertraute Absenderadresse" @@ -424,7 +424,7 @@ msgstr "" msgid "GpgOL Warning" msgstr "GpgOL Warnung" -#: src/mail.cpp:710 src/mail.cpp:1745 +#: src/mail.cpp:710 src/mail.cpp:1759 msgid "Encrypted message" msgstr "Verschl?sselte Nachricht" @@ -432,89 +432,89 @@ msgstr "Verschl?sselte Nachricht" msgid "Please wait while the message is being decrypted / verified..." msgstr "Bitte warten Sie w?hrend die Nachricht entschl?sselt / gepr?ft wird..." -#: src/mail.cpp:1690 +#: src/mail.cpp:1704 msgid "Security Level 4" msgstr "Sicherheit Stufe 4" -#: src/mail.cpp:1694 +#: src/mail.cpp:1708 msgid "Trust Level 4" msgstr "Vertrauen Stufe 4" -#: src/mail.cpp:1698 +#: src/mail.cpp:1712 msgid "Security Level 3" msgstr "Sicherheit Stufe 3" -#: src/mail.cpp:1702 +#: src/mail.cpp:1716 msgid "Trust Level 3" msgstr "Vertrauen Stufe 3" -#: src/mail.cpp:1706 +#: src/mail.cpp:1720 msgid "Security Level 2" msgstr "Sicherheit Stufe 2" -#: src/mail.cpp:1710 +#: src/mail.cpp:1724 msgid "Trust Level 2" msgstr "Vertrauen Stufe 2" -#: src/mail.cpp:1714 +#: src/mail.cpp:1728 msgid "Encrypted" msgstr "Verschl?sselt" -#: src/mail.cpp:1723 src/mail.cpp:1725 src/ribbon-callbacks.cpp:1569 +#: src/mail.cpp:1737 src/mail.cpp:1739 src/ribbon-callbacks.cpp:1569 msgid "Insecure" msgstr "Unsicher" -#: src/mail.cpp:1737 +#: src/mail.cpp:1751 msgid "Signed and encrypted message" msgstr "Signierte und verschl?sselte Nachricht" -#: src/mail.cpp:1741 +#: src/mail.cpp:1755 msgid "Signed message" msgstr "Signierte Nachricht" -#: src/mail.cpp:1748 src/ribbon-callbacks.cpp:1592 +#: src/mail.cpp:1762 src/ribbon-callbacks.cpp:1592 msgid "Insecure message" msgstr "Unsichere Nachricht" -#: src/mail.cpp:1758 +#: src/mail.cpp:1772 msgid "You cannot be sure who sent, modified and read the message in transit." msgstr "" "Sie k?nnen nicht sicher sein wer die Nachricht gesendet, modifiziert oder " "w?hrend der ?bertragung gelesen hat." -#: src/mail.cpp:1767 +#: src/mail.cpp:1781 msgid "The encryption was VS-NfD-compliant." msgstr "Diese Verschl?sselung war VS-NfD-konform." -#: src/mail.cpp:1771 +#: src/mail.cpp:1785 msgid "The encryption was not VS-NfD-compliant." msgstr "Diese Verschl?sselung war nicht VS-NfD-konform." -#: src/mail.cpp:1775 +#: src/mail.cpp:1789 msgid "You cannot be sure who sent the message because it is not signed." msgstr "" "Aber Sie k?nnen nicht sicher sein wer der Absender der Nachricht ist da " "diese nicht signiert wurde. " -#: src/mail.cpp:1797 +#: src/mail.cpp:1812 msgid "You signed this message." msgstr "Sie haben diese Nachricht signiert." -#: src/mail.cpp:1801 +#: src/mail.cpp:1816 msgid "The senders identity was certified by yourself." msgstr "Die Idenit?t des Absenders wurde von ihnen selbst beglaubigt." -#: src/mail.cpp:1805 +#: src/mail.cpp:1820 msgid "The sender is allowed to certify identities for you." msgstr "Der Absender ist berechtigt f?r Sie Identit?ten zu beglaubigen." -#: src/mail.cpp:1818 +#: src/mail.cpp:1833 msgid "The senders identity was certified by several trusted people." msgstr "" "The Identit?t des Absenders wurde von mehreren vertrauensw?rdigen Personen " "beglaubigt." -#: src/mail.cpp:1823 +#: src/mail.cpp:1838 #, c-format msgid "" "The senders identity is certified by the trusted issuer:\n" @@ -523,12 +523,12 @@ msgstr "" "Die Idenit?t des Absenders wurde best?tigt von:\n" "'%s'\n" -#: src/mail.cpp:1831 +#: src/mail.cpp:1846 msgid "Some trusted people have certified the senders identity." msgstr "" "Einige vertrauensw?rde Personen haben die Identit?t des Absenders beglaubigt." -#: src/mail.cpp:1841 +#: src/mail.cpp:1856 #, c-format msgid "" "The senders address is trusted, because you have established a communication " @@ -540,11 +540,11 @@ msgstr "" "Seit %s haben Sie %i Nachrichten an diesen Absender verschl?sselt und %i " "Signaturen gepr?ft." -#: src/mail.cpp:1857 +#: src/mail.cpp:1872 msgid "The senders signature was verified for the first time." msgstr "The Signatur des Absenders wurde das erste mal verifiziert." -#: src/mail.cpp:1864 +#: src/mail.cpp:1879 #, c-format msgid "" "The senders address is not trustworthy yet because you only verified %i " @@ -554,70 +554,70 @@ msgstr "" "Nachrichten von diesem absender verifziert und %i Nachrichten verschl?ssel " "haben. Seit dem %s." -#: src/mail.cpp:1878 +#: src/mail.cpp:1893 msgid "But the sender address is not trustworthy because:" msgstr "Aber die Absenderadresse ist nicht vertrauensw?rdig da:" -#: src/mail.cpp:1879 +#: src/mail.cpp:1894 msgid "The sender address is not trustworthy because:" msgstr "Die Absenderadresse ist nicht vertrauensw?rdig da:" -#: src/mail.cpp:1887 +#: src/mail.cpp:1902 msgid "The signature is invalid: \n" msgstr "Die Signatur ist ung?ltig: \n" -#: src/mail.cpp:1892 +#: src/mail.cpp:1907 msgid "There was an error verifying the signature.\n" msgstr "Beim ?berpr?fen der Signatur ist ein Fehler aufgetreten.\n" -#: src/mail.cpp:1896 +#: src/mail.cpp:1911 msgid "The signature is expired.\n" msgstr "Die Signatur ist abgelaufen.\n" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 msgid "The used key" msgstr "Der verwendete Schl?ssel" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 msgid "The used certificate" msgstr "Das verwendete Zertifikat" -#: src/mail.cpp:1908 +#: src/mail.cpp:1923 msgid "is not available." msgstr "ist nicht verf?gbar." -#: src/mail.cpp:1912 +#: src/mail.cpp:1927 msgid "is revoked." msgstr "wurde zur?ckgezogen." -#: src/mail.cpp:1916 +#: src/mail.cpp:1931 msgid "is expired." msgstr "ist veraltet. " -#: src/mail.cpp:1920 +#: src/mail.cpp:1935 msgid "is not meant for signing." msgstr "ist nicht zum signieren vorgesehen. " -#: src/mail.cpp:1924 src/mail.cpp:1928 +#: src/mail.cpp:1939 src/mail.cpp:1943 msgid "could not be checked for revocation." msgstr "wurde m?glicherweise zur?ckgezogen." -#: src/mail.cpp:1933 +#: src/mail.cpp:1948 msgid "is not the same as the key that was used for this address in the past." msgstr "" "ist nicht der gleiche Schl?ssel der in der vergangenheit f?r diese Adresse " "verwendet wurde." -#: src/mail.cpp:1939 +#: src/mail.cpp:1954 #, c-format msgid "does not claim the address: \"%s\"." msgstr "passt nicht zu der mailaddresse: \"%s\". " -#: src/mail.cpp:1952 +#: src/mail.cpp:1967 msgid "is not certified by any trustworthy key." msgstr "wurde von keinem vertrauensw?rdigen Schl?ssel beglaubigt." -#: src/mail.cpp:1956 +#: src/mail.cpp:1971 msgid "" "is not certified by a trustworthy Certificate Authority or the Certificate " "Authority is unknown." @@ -625,49 +625,49 @@ msgstr "" "wurde von keiner vertrauensw?rdigen Zertifizierungsstelle beglaubigt oder " "die Zertifizierungsstelle ist unbekannt." -#: src/mail.cpp:1961 +#: src/mail.cpp:1976 msgid "The sender marked this address as revoked." msgstr "Der Absender hat diese Adresse zur?ckgezogen." -#: src/mail.cpp:1965 +#: src/mail.cpp:1980 msgid "is marked as not trustworthy." msgstr "ist als nicht vertrauensw?rdig markiert." -#: src/mail.cpp:1975 +#: src/mail.cpp:1990 msgid "The signature is VS-NfD-compliant." msgstr "Die Signatur ist VS-NfD-konform." -#: src/mail.cpp:1979 +#: src/mail.cpp:1994 msgid "The signature is not VS-NfD-compliant." msgstr "Die Signatur ist nicht VS-NfD-konform." -#: src/mail.cpp:1987 +#: src/mail.cpp:2002 msgid "The encryption is VS-NfD-compliant." msgstr "Diese Verschl?sselung ist VS-NfD-konform." -#: src/mail.cpp:1991 +#: src/mail.cpp:2006 msgid "The encryption is not VS-NfD-compliant." msgstr "Diese Verschl?sselung ist nicht VS-NfD-konform." -#: src/mail.cpp:1998 +#: src/mail.cpp:2017 msgid "Click here to change the key used for this address." msgstr "Klicken Sie hier um den Schl?ssel f?r diese Adresse zu ?ndern." -#: src/mail.cpp:2002 +#: src/mail.cpp:2021 msgid "Click here for details about the key." msgstr "Klicken Sie hier f?r Details zu dem Schl?ssel" -#: src/mail.cpp:2003 +#: src/mail.cpp:2022 msgid "Click here for details about the certificate." msgstr "Klicken Sie hier f?r Details zu dem Zertifiakt." -#: src/mail.cpp:2007 +#: src/mail.cpp:2026 msgid "Click here to search the key on the configured keyserver." msgstr "" "Klicken Sie hier um den Schl?ssel auf dem konfigurierten Schl?sselserver zu " "suchen. " -#: src/mail.cpp:2008 +#: src/mail.cpp:2027 msgid "Click here to search the certificate on the configured X509 keyserver." msgstr "" "Klicken Sie hier um das Zertifikat auf dem konfigurierten X509 " @@ -715,11 +715,11 @@ msgstr "" msgid "Note: Using compatibility flags: %s" msgstr "Notiz: Diese Kompatibilit?tsflags werden verwendet: %s" -#: src/mapihelp.cpp:1707 src/mapihelp.cpp:1715 src/mapihelp.cpp:1723 +#: src/mapihelp.cpp:1714 src/mapihelp.cpp:1722 src/mapihelp.cpp:1730 msgid "[no subject]" msgstr "[Kein Betreff]" -#: src/mapihelp.cpp:2372 +#: src/mapihelp.cpp:2379 msgid "" "[The content of this message is not visible because it has been decrypted by " "another Outlook session. Use the \"decrypt/verify\" command to make it " @@ -729,7 +729,7 @@ msgstr "" "Outlook Sitzung entschl?sselt wurde. Verwenden Sie den Men?punkt " "\"entschl?sseln/?berpr?fen\" um den Inhalt wieder sichtbar zu machen.]" -#: src/mapihelp.cpp:3267 +#: src/mapihelp.cpp:3274 msgid "" "[The content of this message is not visible due to an processing error in " "GpgOL.]" @@ -1052,17 +1052,6 @@ msgstr "Ausw?hlen der zu verschl?sselnden Datei" msgid "No message selected" msgstr "Keine Nachricht ausgew?hlt" -#: src/ribbon-callbacks.cpp:1616 -msgid "" -"You cannot be sure who sent, modified and read the message in transit.\n" -"\n" -"Click here to learn more." -msgstr "" -"Sie k?nnen nicht sicher sein wer die Nachricht gesendet, modifiziert oder " -"w?hrend der ?bertragung gelesen hat.\n" -"\n" -"Klicken Sie hier um mehr zu erfahren." - #: src/ribbon-callbacks.cpp:1653 #, c-format msgid "" @@ -1082,6 +1071,16 @@ msgstr "" "Kleopatra konnte nicht gefunden werden. Bitte installieren Sie Gpg4win " "erneut mit der Komponente Kleopatra aktiviert." +#~ msgid "" +#~ "You cannot be sure who sent, modified and read the message in transit.\n" +#~ "\n" +#~ "Click here to learn more." +#~ msgstr "" +#~ "Sie k?nnen nicht sicher sein wer die Nachricht gesendet, modifiziert oder " +#~ "w?hrend der ?bertragung gelesen hat.\n" +#~ "\n" +#~ "Klicken Sie hier um mehr zu erfahren." + #~ msgid "&Select certificates automatically (OpenPGP only)" #~ msgstr "Zertifikate automatisch ausw?hlen (nur OpenPGP)" diff --git a/po/fr.po b/po/fr.po index b3031d4..a97dfe2 100644 --- a/po/fr.po +++ b/po/fr.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: bug-gpgol at g10code.com\n" -"POT-Creation-Date: 2017-07-27 09:17+0200\n" +"POT-Creation-Date: 2017-09-12 13:26+0200\n" "PO-Revision-Date: 2015-10-01 17:05+0200\n" "Last-Translator: Olivier Serve \n" "Language-Team: French \n" @@ -171,12 +171,12 @@ msgstr "" msgid "Do you want to revert this folder?" msgstr "Voulez-vous r?cup?rer ce dossier ?" -#: src/gpgoladdin.cpp:446 src/mail.cpp:1428 src/mail.cpp:1499 +#: src/gpgoladdin.cpp:446 src/mail.cpp:1444 src/mail.cpp:1515 #, fuzzy msgid "GpgOL: Encrypted Message" msgstr "D?chiffrer le message" -#: src/gpgoladdin.cpp:447 src/mail.cpp:1429 src/mail.cpp:1500 +#: src/gpgoladdin.cpp:447 src/mail.cpp:1445 src/mail.cpp:1516 msgid "GpgOL: Trusted Sender Address" msgstr "" @@ -408,7 +408,7 @@ msgstr "" msgid "GpgOL Warning" msgstr "" -#: src/mail.cpp:710 src/mail.cpp:1745 +#: src/mail.cpp:710 src/mail.cpp:1759 #, fuzzy msgid "Encrypted message" msgstr "D?chiffrer le message" @@ -417,101 +417,101 @@ msgstr "D?chiffrer le message" msgid "Please wait while the message is being decrypted / verified..." msgstr "" -#: src/mail.cpp:1690 +#: src/mail.cpp:1704 msgid "Security Level 4" msgstr "" -#: src/mail.cpp:1694 +#: src/mail.cpp:1708 msgid "Trust Level 4" msgstr "" -#: src/mail.cpp:1698 +#: src/mail.cpp:1712 msgid "Security Level 3" msgstr "" -#: src/mail.cpp:1702 +#: src/mail.cpp:1716 msgid "Trust Level 3" msgstr "" -#: src/mail.cpp:1706 +#: src/mail.cpp:1720 msgid "Security Level 2" msgstr "" -#: src/mail.cpp:1710 +#: src/mail.cpp:1724 msgid "Trust Level 2" msgstr "" -#: src/mail.cpp:1714 +#: src/mail.cpp:1728 #, fuzzy msgid "Encrypted" msgstr "Chiffrer" -#: src/mail.cpp:1723 src/mail.cpp:1725 src/ribbon-callbacks.cpp:1569 +#: src/mail.cpp:1737 src/mail.cpp:1739 src/ribbon-callbacks.cpp:1569 msgid "Insecure" msgstr "" -#: src/mail.cpp:1737 +#: src/mail.cpp:1751 #, fuzzy msgid "Signed and encrypted message" msgstr "D?chiffrer le message" -#: src/mail.cpp:1741 +#: src/mail.cpp:1755 #, fuzzy msgid "Signed message" msgstr "D?chiffrer le message" -#: src/mail.cpp:1748 src/ribbon-callbacks.cpp:1592 +#: src/mail.cpp:1762 src/ribbon-callbacks.cpp:1592 #, fuzzy msgid "Insecure message" msgstr "D?chiffrer le message" -#: src/mail.cpp:1758 +#: src/mail.cpp:1772 msgid "You cannot be sure who sent, modified and read the message in transit." msgstr "" -#: src/mail.cpp:1767 +#: src/mail.cpp:1781 #, fuzzy msgid "The encryption was VS-NfD-compliant." msgstr "Cette signature est valide\n" -#: src/mail.cpp:1771 +#: src/mail.cpp:1785 #, fuzzy msgid "The encryption was not VS-NfD-compliant." msgstr "Cette signature est valide\n" -#: src/mail.cpp:1775 +#: src/mail.cpp:1789 msgid "You cannot be sure who sent the message because it is not signed." msgstr "" -#: src/mail.cpp:1797 +#: src/mail.cpp:1812 #, fuzzy msgid "You signed this message." msgstr "D?chiffrer le message" -#: src/mail.cpp:1801 +#: src/mail.cpp:1816 msgid "The senders identity was certified by yourself." msgstr "" -#: src/mail.cpp:1805 +#: src/mail.cpp:1820 msgid "The sender is allowed to certify identities for you." msgstr "" -#: src/mail.cpp:1818 +#: src/mail.cpp:1833 msgid "The senders identity was certified by several trusted people." msgstr "" -#: src/mail.cpp:1823 +#: src/mail.cpp:1838 #, c-format msgid "" "The senders identity is certified by the trusted issuer:\n" "'%s'\n" msgstr "" -#: src/mail.cpp:1831 +#: src/mail.cpp:1846 msgid "Some trusted people have certified the senders identity." msgstr "" -#: src/mail.cpp:1841 +#: src/mail.cpp:1856 #, c-format msgid "" "The senders address is trusted, because you have established a communication " @@ -519,133 +519,133 @@ msgid "" "You encrypted %i and verified %i messages since." msgstr "" -#: src/mail.cpp:1857 +#: src/mail.cpp:1872 msgid "The senders signature was verified for the first time." msgstr "" -#: src/mail.cpp:1864 +#: src/mail.cpp:1879 #, c-format msgid "" "The senders address is not trustworthy yet because you only verified %i " "messages and encrypted %i messages to it since %s." msgstr "" -#: src/mail.cpp:1878 +#: src/mail.cpp:1893 msgid "But the sender address is not trustworthy because:" msgstr "" -#: src/mail.cpp:1879 +#: src/mail.cpp:1894 msgid "The sender address is not trustworthy because:" msgstr "" -#: src/mail.cpp:1887 +#: src/mail.cpp:1902 #, fuzzy msgid "The signature is invalid: \n" msgstr "Cette signature est valide\n" -#: src/mail.cpp:1892 +#: src/mail.cpp:1907 msgid "There was an error verifying the signature.\n" msgstr "" -#: src/mail.cpp:1896 +#: src/mail.cpp:1911 #, fuzzy msgid "The signature is expired.\n" msgstr "Cette signature est valide\n" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 msgid "The used key" msgstr "" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 #, fuzzy msgid "The used certificate" msgstr "Erreur de v?rification" -#: src/mail.cpp:1908 +#: src/mail.cpp:1923 #, fuzzy msgid "is not available." msgstr "La liste de r?vocation (CRL) n'est pas disponible\n" -#: src/mail.cpp:1912 +#: src/mail.cpp:1927 msgid "is revoked." msgstr "" -#: src/mail.cpp:1916 +#: src/mail.cpp:1931 msgid "is expired." msgstr "" -#: src/mail.cpp:1920 +#: src/mail.cpp:1935 msgid "is not meant for signing." msgstr "" -#: src/mail.cpp:1924 src/mail.cpp:1928 +#: src/mail.cpp:1939 src/mail.cpp:1943 msgid "could not be checked for revocation." msgstr "" -#: src/mail.cpp:1933 +#: src/mail.cpp:1948 msgid "is not the same as the key that was used for this address in the past." msgstr "" -#: src/mail.cpp:1939 +#: src/mail.cpp:1954 #, c-format msgid "does not claim the address: \"%s\"." msgstr "" -#: src/mail.cpp:1952 +#: src/mail.cpp:1967 msgid "is not certified by any trustworthy key." msgstr "" -#: src/mail.cpp:1956 +#: src/mail.cpp:1971 msgid "" "is not certified by a trustworthy Certificate Authority or the Certificate " "Authority is unknown." msgstr "" -#: src/mail.cpp:1961 +#: src/mail.cpp:1976 msgid "The sender marked this address as revoked." msgstr "" -#: src/mail.cpp:1965 +#: src/mail.cpp:1980 msgid "is marked as not trustworthy." msgstr "" -#: src/mail.cpp:1975 +#: src/mail.cpp:1990 #, fuzzy msgid "The signature is VS-NfD-compliant." msgstr "Cette signature est valide\n" -#: src/mail.cpp:1979 +#: src/mail.cpp:1994 #, fuzzy msgid "The signature is not VS-NfD-compliant." msgstr "Cette signature est valide\n" -#: src/mail.cpp:1987 +#: src/mail.cpp:2002 #, fuzzy msgid "The encryption is VS-NfD-compliant." msgstr "Cette signature est valide\n" -#: src/mail.cpp:1991 +#: src/mail.cpp:2006 #, fuzzy msgid "The encryption is not VS-NfD-compliant." msgstr "Cette signature est valide\n" -#: src/mail.cpp:1998 +#: src/mail.cpp:2017 msgid "Click here to change the key used for this address." msgstr "" -#: src/mail.cpp:2002 +#: src/mail.cpp:2021 msgid "Click here for details about the key." msgstr "" -#: src/mail.cpp:2003 +#: src/mail.cpp:2022 msgid "Click here for details about the certificate." msgstr "" -#: src/mail.cpp:2007 +#: src/mail.cpp:2026 msgid "Click here to search the key on the configured keyserver." msgstr "" -#: src/mail.cpp:2008 +#: src/mail.cpp:2027 msgid "Click here to search the certificate on the configured X509 keyserver." msgstr "" @@ -680,11 +680,11 @@ msgstr "" msgid "Note: Using compatibility flags: %s" msgstr "Note?: Utilisation de marqueurs de compatibilit??: %s" -#: src/mapihelp.cpp:1707 src/mapihelp.cpp:1715 src/mapihelp.cpp:1723 +#: src/mapihelp.cpp:1714 src/mapihelp.cpp:1722 src/mapihelp.cpp:1730 msgid "[no subject]" msgstr "[pas de sujet]" -#: src/mapihelp.cpp:2372 +#: src/mapihelp.cpp:2379 msgid "" "[The content of this message is not visible because it has been decrypted by " "another Outlook session. Use the \"decrypt/verify\" command to make it " @@ -694,7 +694,7 @@ msgstr "" "autre session Outlook. Utiliser la commande \"d?chiffrer/v?rifier\" afin de " "le rendre visible]" -#: src/mapihelp.cpp:3267 +#: src/mapihelp.cpp:3274 msgid "" "[The content of this message is not visible due to an processing error in " "GpgOL.]" @@ -985,13 +985,6 @@ msgstr "S?lectionner le fichier ? chiffrer" msgid "No message selected" msgstr "Ce message n'est pas chiffr?" -#: src/ribbon-callbacks.cpp:1616 -msgid "" -"You cannot be sure who sent, modified and read the message in transit.\n" -"\n" -"Click here to learn more." -msgstr "" - #: src/ribbon-callbacks.cpp:1653 #, c-format msgid "" diff --git a/po/pt.po b/po/pt.po index 151271d..148cb7a 100644 --- a/po/pt.po +++ b/po/pt.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: GpgOL 1.1.1\n" "Report-Msgid-Bugs-To: bug-gpgol at g10code.com\n" -"POT-Creation-Date: 2017-07-27 09:17+0200\n" +"POT-Creation-Date: 2017-09-12 13:26+0200\n" "PO-Revision-Date: 2017-08-26 07:52+0100\n" "Last-Translator: Marco A.G.Pinto \n" "Language-Team: Portuguese \n" @@ -174,11 +174,11 @@ msgstr "" msgid "Do you want to revert this folder?" msgstr "Queres reverter esta pasta?" -#: src/gpgoladdin.cpp:446 src/mail.cpp:1428 src/mail.cpp:1499 +#: src/gpgoladdin.cpp:446 src/mail.cpp:1444 src/mail.cpp:1515 msgid "GpgOL: Encrypted Message" msgstr "GpgOL: Mensagem Encriptada" -#: src/gpgoladdin.cpp:447 src/mail.cpp:1429 src/mail.cpp:1500 +#: src/gpgoladdin.cpp:447 src/mail.cpp:1445 src/mail.cpp:1516 msgid "GpgOL: Trusted Sender Address" msgstr "GpgOL: Endere?o de Remetente Confi?vel" @@ -424,7 +424,7 @@ msgstr "" msgid "GpgOL Warning" msgstr "Aviso do GpgOL" -#: src/mail.cpp:710 src/mail.cpp:1745 +#: src/mail.cpp:710 src/mail.cpp:1759 msgid "Encrypted message" msgstr "Mensagem encriptada" @@ -434,86 +434,86 @@ msgstr "" "Por favor aguarda enquanto a mensagem est? a ser desencriptada / " "verificada..." -#: src/mail.cpp:1690 +#: src/mail.cpp:1704 msgid "Security Level 4" msgstr "N?vel de seguran?a 4" -#: src/mail.cpp:1694 +#: src/mail.cpp:1708 msgid "Trust Level 4" msgstr "N?vel de Confian?a 4" -#: src/mail.cpp:1698 +#: src/mail.cpp:1712 msgid "Security Level 3" msgstr "N?vel de Seguran?a 3" -#: src/mail.cpp:1702 +#: src/mail.cpp:1716 msgid "Trust Level 3" msgstr "N?vel de Confian?a 3" -#: src/mail.cpp:1706 +#: src/mail.cpp:1720 msgid "Security Level 2" msgstr "N?vel de Seguran?a 2" -#: src/mail.cpp:1710 +#: src/mail.cpp:1724 msgid "Trust Level 2" msgstr "N?vel de Confian?a 2" -#: src/mail.cpp:1714 +#: src/mail.cpp:1728 msgid "Encrypted" msgstr "Encriptada" -#: src/mail.cpp:1723 src/mail.cpp:1725 src/ribbon-callbacks.cpp:1569 +#: src/mail.cpp:1737 src/mail.cpp:1739 src/ribbon-callbacks.cpp:1569 msgid "Insecure" msgstr "Insegura" -#: src/mail.cpp:1737 +#: src/mail.cpp:1751 msgid "Signed and encrypted message" msgstr "Mensagem assinada e encriptada" -#: src/mail.cpp:1741 +#: src/mail.cpp:1755 msgid "Signed message" msgstr "Mensagem assinada" -#: src/mail.cpp:1748 src/ribbon-callbacks.cpp:1592 +#: src/mail.cpp:1762 src/ribbon-callbacks.cpp:1592 msgid "Insecure message" msgstr "Mensagem insegura" -#: src/mail.cpp:1758 +#: src/mail.cpp:1772 msgid "You cannot be sure who sent, modified and read the message in transit." msgstr "" "N?o podes ter certeza quem enviou, modificou e leu a mensagem em tr?nsito." -#: src/mail.cpp:1767 +#: src/mail.cpp:1781 msgid "The encryption was VS-NfD-compliant." msgstr "A encripta??o foi em conformidade com VS-NfD." -#: src/mail.cpp:1771 +#: src/mail.cpp:1785 msgid "The encryption was not VS-NfD-compliant." msgstr "A encripta??o n?o foi em conformidade com VS-NfD." -#: src/mail.cpp:1775 +#: src/mail.cpp:1789 msgid "You cannot be sure who sent the message because it is not signed." msgstr "" "N?o podes ter certeza de quem enviou a mensagem, porque n?o est? assinada." -#: src/mail.cpp:1797 +#: src/mail.cpp:1812 msgid "You signed this message." msgstr "Assinaste esta mensagem." -#: src/mail.cpp:1801 +#: src/mail.cpp:1816 msgid "The senders identity was certified by yourself." msgstr "A identidade dos remetentes foi certificada por ti pr?prio." -#: src/mail.cpp:1805 +#: src/mail.cpp:1820 msgid "The sender is allowed to certify identities for you." msgstr "O remetente pode certificar identidades para ti." -#: src/mail.cpp:1818 +#: src/mail.cpp:1833 msgid "The senders identity was certified by several trusted people." msgstr "" "A identidade dos remetentes foi certificada por v?rias pessoas confi?veis." -#: src/mail.cpp:1823 +#: src/mail.cpp:1838 #, c-format msgid "" "The senders identity is certified by the trusted issuer:\n" @@ -522,11 +522,11 @@ msgstr "" "A identidade dos remetentes ? certificada pelo emissor confi?vel:\n" "'%s'\n" -#: src/mail.cpp:1831 +#: src/mail.cpp:1846 msgid "Some trusted people have certified the senders identity." msgstr "Algumas pessoas confi?veis certificaram a identidade dos remetentes." -#: src/mail.cpp:1841 +#: src/mail.cpp:1856 #, c-format msgid "" "The senders address is trusted, because you have established a communication " @@ -537,11 +537,11 @@ msgstr "" "comunica??o com este endere?o a partir de %s.\n" "Encriptaste %i e verificaste %i mensagens desde ent?o." -#: src/mail.cpp:1857 +#: src/mail.cpp:1872 msgid "The senders signature was verified for the first time." msgstr "A assinatura dos remetentes foi verificada pela primeira vez." -#: src/mail.cpp:1864 +#: src/mail.cpp:1879 #, c-format msgid "" "The senders address is not trustworthy yet because you only verified %i " @@ -550,68 +550,68 @@ msgstr "" "O endere?o dos remetentes ainda n?o ? confi?vel porque apenas verificaste %i " "mensagens e encriptaste %i mensagens a eles desde %s." -#: src/mail.cpp:1878 +#: src/mail.cpp:1893 msgid "But the sender address is not trustworthy because:" msgstr "Mas o endere?o do remetente n?o ? confi?vel porque:" -#: src/mail.cpp:1879 +#: src/mail.cpp:1894 msgid "The sender address is not trustworthy because:" msgstr "O endere?o do remetente n?o ? confi?vel porque:" -#: src/mail.cpp:1887 +#: src/mail.cpp:1902 msgid "The signature is invalid: \n" msgstr "A assinatura ? inv?lida: \n" -#: src/mail.cpp:1892 +#: src/mail.cpp:1907 msgid "There was an error verifying the signature.\n" msgstr "Houve um erro ao verificar a assinatura.\n" -#: src/mail.cpp:1896 +#: src/mail.cpp:1911 msgid "The signature is expired.\n" msgstr "A assinatura expirou.\n" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 msgid "The used key" msgstr "A chave usada" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 msgid "The used certificate" msgstr "O certificado usado" -#: src/mail.cpp:1908 +#: src/mail.cpp:1923 msgid "is not available." msgstr "n?o est? dispon?vel." -#: src/mail.cpp:1912 +#: src/mail.cpp:1927 msgid "is revoked." msgstr "est? revogado." -#: src/mail.cpp:1916 +#: src/mail.cpp:1931 msgid "is expired." msgstr "expirou." -#: src/mail.cpp:1920 +#: src/mail.cpp:1935 msgid "is not meant for signing." msgstr "n?o ? destinado a assinar." -#: src/mail.cpp:1924 src/mail.cpp:1928 +#: src/mail.cpp:1939 src/mail.cpp:1943 msgid "could not be checked for revocation." msgstr "n?o pode ser verificado para revoga??o." -#: src/mail.cpp:1933 +#: src/mail.cpp:1948 msgid "is not the same as the key that was used for this address in the past." msgstr "n?o ? o mesmo que a chave usada para este endere?o no passado." -#: src/mail.cpp:1939 +#: src/mail.cpp:1954 #, c-format msgid "does not claim the address: \"%s\"." msgstr "n?o reivindica o endere?o: \"%s\"." -#: src/mail.cpp:1952 +#: src/mail.cpp:1967 msgid "is not certified by any trustworthy key." msgstr "n?o ? certificado por qualquer chave confi?vel." -#: src/mail.cpp:1956 +#: src/mail.cpp:1971 msgid "" "is not certified by a trustworthy Certificate Authority or the Certificate " "Authority is unknown." @@ -619,47 +619,47 @@ msgstr "" "n?o est? certificado por uma Autoridade de Certifica??o confi?vel ou a " "Autoridade de Certifica??o ? desconhecida." -#: src/mail.cpp:1961 +#: src/mail.cpp:1976 msgid "The sender marked this address as revoked." msgstr "O remetente marcou este endere?o como revogado." -#: src/mail.cpp:1965 +#: src/mail.cpp:1980 msgid "is marked as not trustworthy." msgstr "est? marcado como n?o confi?vel." -#: src/mail.cpp:1975 +#: src/mail.cpp:1990 msgid "The signature is VS-NfD-compliant." msgstr "A assinatura est? em conformidade com VS-NfD." -#: src/mail.cpp:1979 +#: src/mail.cpp:1994 msgid "The signature is not VS-NfD-compliant." msgstr "A assinatura n?o est? em conformidade com VS-NfD." -#: src/mail.cpp:1987 +#: src/mail.cpp:2002 msgid "The encryption is VS-NfD-compliant." msgstr "A encripta??o est? em conformidade com VS-NfD." -#: src/mail.cpp:1991 +#: src/mail.cpp:2006 msgid "The encryption is not VS-NfD-compliant." msgstr "A encripta??o n?o est? em conformidade com VS-NfD." -#: src/mail.cpp:1998 +#: src/mail.cpp:2017 msgid "Click here to change the key used for this address." msgstr "Clica aqui para alterar a chave usada para este endere?o." -#: src/mail.cpp:2002 +#: src/mail.cpp:2021 msgid "Click here for details about the key." msgstr "Clica aqui para obter detalhes sobre a chave." -#: src/mail.cpp:2003 +#: src/mail.cpp:2022 msgid "Click here for details about the certificate." msgstr "Clica aqui para obter detalhes sobre o certificado." -#: src/mail.cpp:2007 +#: src/mail.cpp:2026 msgid "Click here to search the key on the configured keyserver." msgstr "Clica aqui para localizar a chave no servidor de chaves configurado." -#: src/mail.cpp:2008 +#: src/mail.cpp:2027 msgid "Click here to search the certificate on the configured X509 keyserver." msgstr "" "Clica aqui para localizar o certificado X509 no servidor de chaves " @@ -706,11 +706,11 @@ msgstr "" msgid "Note: Using compatibility flags: %s" msgstr "Nota: A usar sinalizadores de compatibilidade: %s" -#: src/mapihelp.cpp:1707 src/mapihelp.cpp:1715 src/mapihelp.cpp:1723 +#: src/mapihelp.cpp:1714 src/mapihelp.cpp:1722 src/mapihelp.cpp:1730 msgid "[no subject]" msgstr "[sem assunto]" -#: src/mapihelp.cpp:2372 +#: src/mapihelp.cpp:2379 msgid "" "[The content of this message is not visible because it has been decrypted by " "another Outlook session. Use the \"decrypt/verify\" command to make it " @@ -720,7 +720,7 @@ msgstr "" "sess?o do Outlook. Usa o comando \"desencriptar/verificar\" para torn?-lo " "vis?vel]" -#: src/mapihelp.cpp:3267 +#: src/mapihelp.cpp:3274 msgid "" "[The content of this message is not visible due to an processing error in " "GpgOL.]" @@ -1033,16 +1033,6 @@ msgstr "Seleciona ficheiro a encriptar" msgid "No message selected" msgstr "Nenhuma mensagem selecionada" -#: src/ribbon-callbacks.cpp:1616 -msgid "" -"You cannot be sure who sent, modified and read the message in transit.\n" -"\n" -"Click here to learn more." -msgstr "" -"N?o podes ter certeza quem enviou, modificou e leu a mensagem em tr?nsito.\n" -"\n" -"Clica aqui para saber mais." - #: src/ribbon-callbacks.cpp:1653 #, c-format msgid "" @@ -1062,6 +1052,16 @@ msgstr "" "N?o foi poss?vel encontrar Kleopatra.\n" "Por favor reinstala o Gpg4win com o componente Kleopatra ativado." +#~ msgid "" +#~ "You cannot be sure who sent, modified and read the message in transit.\n" +#~ "\n" +#~ "Click here to learn more." +#~ msgstr "" +#~ "N?o podes ter certeza quem enviou, modificou e leu a mensagem em " +#~ "tr?nsito.\n" +#~ "\n" +#~ "Clica aqui para saber mais." + #, fuzzy #~ msgid "This message is not signed.\n" #~ msgstr "Esta mensagem n?o est? encriptada." diff --git a/po/sv.po b/po/sv.po index 727b3f1..fb4c9dd 100644 --- a/po/sv.po +++ b/po/sv.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: GPGol\n" "Report-Msgid-Bugs-To: bug-gpgol at g10code.com\n" -"POT-Creation-Date: 2017-07-27 09:17+0200\n" +"POT-Creation-Date: 2017-09-12 13:26+0200\n" "PO-Revision-Date: 2006-12-12 23:52+0100\n" "Last-Translator: Daniel Nylander \n" "Language-Team: Swedish \n" @@ -163,12 +163,12 @@ msgstr "" msgid "Do you want to revert this folder?" msgstr "" -#: src/gpgoladdin.cpp:446 src/mail.cpp:1428 src/mail.cpp:1499 +#: src/gpgoladdin.cpp:446 src/mail.cpp:1444 src/mail.cpp:1515 #, fuzzy msgid "GpgOL: Encrypted Message" msgstr "Dekryptera och validera meddelandet." -#: src/gpgoladdin.cpp:447 src/mail.cpp:1429 src/mail.cpp:1500 +#: src/gpgoladdin.cpp:447 src/mail.cpp:1445 src/mail.cpp:1516 msgid "GpgOL: Trusted Sender Address" msgstr "" @@ -397,7 +397,7 @@ msgstr "" msgid "GpgOL Warning" msgstr "" -#: src/mail.cpp:710 src/mail.cpp:1745 +#: src/mail.cpp:710 src/mail.cpp:1759 #, fuzzy msgid "Encrypted message" msgstr "Dekryptera och validera meddelandet." @@ -406,101 +406,101 @@ msgstr "Dekryptera och validera meddelandet." msgid "Please wait while the message is being decrypted / verified..." msgstr "" -#: src/mail.cpp:1690 +#: src/mail.cpp:1704 msgid "Security Level 4" msgstr "" -#: src/mail.cpp:1694 +#: src/mail.cpp:1708 msgid "Trust Level 4" msgstr "" -#: src/mail.cpp:1698 +#: src/mail.cpp:1712 msgid "Security Level 3" msgstr "" -#: src/mail.cpp:1702 +#: src/mail.cpp:1716 msgid "Trust Level 3" msgstr "" -#: src/mail.cpp:1706 +#: src/mail.cpp:1720 msgid "Security Level 2" msgstr "" -#: src/mail.cpp:1710 +#: src/mail.cpp:1724 msgid "Trust Level 2" msgstr "" -#: src/mail.cpp:1714 +#: src/mail.cpp:1728 #, fuzzy msgid "Encrypted" msgstr "Kryptering" -#: src/mail.cpp:1723 src/mail.cpp:1725 src/ribbon-callbacks.cpp:1569 +#: src/mail.cpp:1737 src/mail.cpp:1739 src/ribbon-callbacks.cpp:1569 msgid "Insecure" msgstr "" -#: src/mail.cpp:1737 +#: src/mail.cpp:1751 #, fuzzy msgid "Signed and encrypted message" msgstr "Dekryptera och validera meddelandet." -#: src/mail.cpp:1741 +#: src/mail.cpp:1755 #, fuzzy msgid "Signed message" msgstr "Dekryptera och validera meddelandet." -#: src/mail.cpp:1748 src/ribbon-callbacks.cpp:1592 +#: src/mail.cpp:1762 src/ribbon-callbacks.cpp:1592 #, fuzzy msgid "Insecure message" msgstr "Dekryptera och validera meddelandet." -#: src/mail.cpp:1758 +#: src/mail.cpp:1772 msgid "You cannot be sure who sent, modified and read the message in transit." msgstr "" -#: src/mail.cpp:1767 +#: src/mail.cpp:1781 #, fuzzy msgid "The encryption was VS-NfD-compliant." msgstr "Den h?r signaturen ?r giltig\n" -#: src/mail.cpp:1771 +#: src/mail.cpp:1785 #, fuzzy msgid "The encryption was not VS-NfD-compliant." msgstr "Den h?r signaturen ?r giltig\n" -#: src/mail.cpp:1775 +#: src/mail.cpp:1789 msgid "You cannot be sure who sent the message because it is not signed." msgstr "" -#: src/mail.cpp:1797 +#: src/mail.cpp:1812 #, fuzzy msgid "You signed this message." msgstr "Dekryptera och validera meddelandet." -#: src/mail.cpp:1801 +#: src/mail.cpp:1816 msgid "The senders identity was certified by yourself." msgstr "" -#: src/mail.cpp:1805 +#: src/mail.cpp:1820 msgid "The sender is allowed to certify identities for you." msgstr "" -#: src/mail.cpp:1818 +#: src/mail.cpp:1833 msgid "The senders identity was certified by several trusted people." msgstr "" -#: src/mail.cpp:1823 +#: src/mail.cpp:1838 #, c-format msgid "" "The senders identity is certified by the trusted issuer:\n" "'%s'\n" msgstr "" -#: src/mail.cpp:1831 +#: src/mail.cpp:1846 msgid "Some trusted people have certified the senders identity." msgstr "" -#: src/mail.cpp:1841 +#: src/mail.cpp:1856 #, c-format msgid "" "The senders address is trusted, because you have established a communication " @@ -508,133 +508,133 @@ msgid "" "You encrypted %i and verified %i messages since." msgstr "" -#: src/mail.cpp:1857 +#: src/mail.cpp:1872 msgid "The senders signature was verified for the first time." msgstr "" -#: src/mail.cpp:1864 +#: src/mail.cpp:1879 #, c-format msgid "" "The senders address is not trustworthy yet because you only verified %i " "messages and encrypted %i messages to it since %s." msgstr "" -#: src/mail.cpp:1878 +#: src/mail.cpp:1893 msgid "But the sender address is not trustworthy because:" msgstr "" -#: src/mail.cpp:1879 +#: src/mail.cpp:1894 msgid "The sender address is not trustworthy because:" msgstr "" -#: src/mail.cpp:1887 +#: src/mail.cpp:1902 #, fuzzy msgid "The signature is invalid: \n" msgstr "Den h?r signaturen ?r giltig\n" -#: src/mail.cpp:1892 +#: src/mail.cpp:1907 msgid "There was an error verifying the signature.\n" msgstr "" -#: src/mail.cpp:1896 +#: src/mail.cpp:1911 #, fuzzy msgid "The signature is expired.\n" msgstr "Den h?r signaturen ?r giltig\n" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 msgid "The used key" msgstr "" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 #, fuzzy msgid "The used certificate" msgstr "Validering" -#: src/mail.cpp:1908 +#: src/mail.cpp:1923 #, fuzzy msgid "is not available." msgstr "Sp?rrlistan ?r inte tillg?nglig\n" -#: src/mail.cpp:1912 +#: src/mail.cpp:1927 msgid "is revoked." msgstr "" -#: src/mail.cpp:1916 +#: src/mail.cpp:1931 msgid "is expired." msgstr "" -#: src/mail.cpp:1920 +#: src/mail.cpp:1935 msgid "is not meant for signing." msgstr "" -#: src/mail.cpp:1924 src/mail.cpp:1928 +#: src/mail.cpp:1939 src/mail.cpp:1943 msgid "could not be checked for revocation." msgstr "" -#: src/mail.cpp:1933 +#: src/mail.cpp:1948 msgid "is not the same as the key that was used for this address in the past." msgstr "" -#: src/mail.cpp:1939 +#: src/mail.cpp:1954 #, c-format msgid "does not claim the address: \"%s\"." msgstr "" -#: src/mail.cpp:1952 +#: src/mail.cpp:1967 msgid "is not certified by any trustworthy key." msgstr "" -#: src/mail.cpp:1956 +#: src/mail.cpp:1971 msgid "" "is not certified by a trustworthy Certificate Authority or the Certificate " "Authority is unknown." msgstr "" -#: src/mail.cpp:1961 +#: src/mail.cpp:1976 msgid "The sender marked this address as revoked." msgstr "" -#: src/mail.cpp:1965 +#: src/mail.cpp:1980 msgid "is marked as not trustworthy." msgstr "" -#: src/mail.cpp:1975 +#: src/mail.cpp:1990 #, fuzzy msgid "The signature is VS-NfD-compliant." msgstr "Den h?r signaturen ?r giltig\n" -#: src/mail.cpp:1979 +#: src/mail.cpp:1994 #, fuzzy msgid "The signature is not VS-NfD-compliant." msgstr "Den h?r signaturen ?r giltig\n" -#: src/mail.cpp:1987 +#: src/mail.cpp:2002 #, fuzzy msgid "The encryption is VS-NfD-compliant." msgstr "Den h?r signaturen ?r giltig\n" -#: src/mail.cpp:1991 +#: src/mail.cpp:2006 #, fuzzy msgid "The encryption is not VS-NfD-compliant." msgstr "Den h?r signaturen ?r giltig\n" -#: src/mail.cpp:1998 +#: src/mail.cpp:2017 msgid "Click here to change the key used for this address." msgstr "" -#: src/mail.cpp:2002 +#: src/mail.cpp:2021 msgid "Click here for details about the key." msgstr "" -#: src/mail.cpp:2003 +#: src/mail.cpp:2022 msgid "Click here for details about the certificate." msgstr "" -#: src/mail.cpp:2007 +#: src/mail.cpp:2026 msgid "Click here to search the key on the configured keyserver." msgstr "" -#: src/mail.cpp:2008 +#: src/mail.cpp:2027 msgid "Click here to search the certificate on the configured X509 keyserver." msgstr "" @@ -670,18 +670,18 @@ msgstr "" msgid "Note: Using compatibility flags: %s" msgstr "" -#: src/mapihelp.cpp:1707 src/mapihelp.cpp:1715 src/mapihelp.cpp:1723 +#: src/mapihelp.cpp:1714 src/mapihelp.cpp:1722 src/mapihelp.cpp:1730 msgid "[no subject]" msgstr "" -#: src/mapihelp.cpp:2372 +#: src/mapihelp.cpp:2379 msgid "" "[The content of this message is not visible because it has been decrypted by " "another Outlook session. Use the \"decrypt/verify\" command to make it " "visible]" msgstr "" -#: src/mapihelp.cpp:3267 +#: src/mapihelp.cpp:3274 msgid "" "[The content of this message is not visible due to an processing error in " "GpgOL.]" @@ -946,13 +946,6 @@ msgstr "V?lj ?tminstone en mottagarnyckel." msgid "No message selected" msgstr "" -#: src/ribbon-callbacks.cpp:1616 -msgid "" -"You cannot be sure who sent, modified and read the message in transit.\n" -"\n" -"Click here to learn more." -msgstr "" - #: src/ribbon-callbacks.cpp:1653 #, c-format msgid "" diff --git a/po/zh_CN.po b/po/zh_CN.po index bd48cf2..cb4b43b 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: GpgOL\n" "Report-Msgid-Bugs-To: bug-gpgol at g10code.com\n" -"POT-Creation-Date: 2017-07-27 09:17+0200\n" +"POT-Creation-Date: 2017-09-12 13:26+0200\n" "PO-Revision-Date: 2015-08-15 21:58+0800\n" "Last-Translator: Mingye Wang (Arthur2e5) \n" "Language-Team: \n" @@ -167,12 +167,12 @@ msgstr "" msgid "Do you want to revert this folder?" msgstr "????????????" -#: src/gpgoladdin.cpp:446 src/mail.cpp:1428 src/mail.cpp:1499 +#: src/gpgoladdin.cpp:446 src/mail.cpp:1444 src/mail.cpp:1515 #, fuzzy msgid "GpgOL: Encrypted Message" msgstr "????" -#: src/gpgoladdin.cpp:447 src/mail.cpp:1429 src/mail.cpp:1500 +#: src/gpgoladdin.cpp:447 src/mail.cpp:1445 src/mail.cpp:1516 msgid "GpgOL: Trusted Sender Address" msgstr "" @@ -396,7 +396,7 @@ msgstr "" msgid "GpgOL Warning" msgstr "" -#: src/mail.cpp:710 src/mail.cpp:1745 +#: src/mail.cpp:710 src/mail.cpp:1759 #, fuzzy msgid "Encrypted message" msgstr "????" @@ -405,101 +405,101 @@ msgstr "????" msgid "Please wait while the message is being decrypted / verified..." msgstr "" -#: src/mail.cpp:1690 +#: src/mail.cpp:1704 msgid "Security Level 4" msgstr "" -#: src/mail.cpp:1694 +#: src/mail.cpp:1708 msgid "Trust Level 4" msgstr "" -#: src/mail.cpp:1698 +#: src/mail.cpp:1712 msgid "Security Level 3" msgstr "" -#: src/mail.cpp:1702 +#: src/mail.cpp:1716 msgid "Trust Level 3" msgstr "" -#: src/mail.cpp:1706 +#: src/mail.cpp:1720 msgid "Security Level 2" msgstr "" -#: src/mail.cpp:1710 +#: src/mail.cpp:1724 msgid "Trust Level 2" msgstr "" -#: src/mail.cpp:1714 +#: src/mail.cpp:1728 #, fuzzy msgid "Encrypted" msgstr "??" -#: src/mail.cpp:1723 src/mail.cpp:1725 src/ribbon-callbacks.cpp:1569 +#: src/mail.cpp:1737 src/mail.cpp:1739 src/ribbon-callbacks.cpp:1569 msgid "Insecure" msgstr "" -#: src/mail.cpp:1737 +#: src/mail.cpp:1751 #, fuzzy msgid "Signed and encrypted message" msgstr "????" -#: src/mail.cpp:1741 +#: src/mail.cpp:1755 #, fuzzy msgid "Signed message" msgstr "????" -#: src/mail.cpp:1748 src/ribbon-callbacks.cpp:1592 +#: src/mail.cpp:1762 src/ribbon-callbacks.cpp:1592 #, fuzzy msgid "Insecure message" msgstr "????" -#: src/mail.cpp:1758 +#: src/mail.cpp:1772 msgid "You cannot be sure who sent, modified and read the message in transit." msgstr "" -#: src/mail.cpp:1767 +#: src/mail.cpp:1781 #, fuzzy msgid "The encryption was VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1771 +#: src/mail.cpp:1785 #, fuzzy msgid "The encryption was not VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1775 +#: src/mail.cpp:1789 msgid "You cannot be sure who sent the message because it is not signed." msgstr "" -#: src/mail.cpp:1797 +#: src/mail.cpp:1812 #, fuzzy msgid "You signed this message." msgstr "????" -#: src/mail.cpp:1801 +#: src/mail.cpp:1816 msgid "The senders identity was certified by yourself." msgstr "" -#: src/mail.cpp:1805 +#: src/mail.cpp:1820 msgid "The sender is allowed to certify identities for you." msgstr "" -#: src/mail.cpp:1818 +#: src/mail.cpp:1833 msgid "The senders identity was certified by several trusted people." msgstr "" -#: src/mail.cpp:1823 +#: src/mail.cpp:1838 #, c-format msgid "" "The senders identity is certified by the trusted issuer:\n" "'%s'\n" msgstr "" -#: src/mail.cpp:1831 +#: src/mail.cpp:1846 msgid "Some trusted people have certified the senders identity." msgstr "" -#: src/mail.cpp:1841 +#: src/mail.cpp:1856 #, c-format msgid "" "The senders address is trusted, because you have established a communication " @@ -507,133 +507,133 @@ msgid "" "You encrypted %i and verified %i messages since." msgstr "" -#: src/mail.cpp:1857 +#: src/mail.cpp:1872 msgid "The senders signature was verified for the first time." msgstr "" -#: src/mail.cpp:1864 +#: src/mail.cpp:1879 #, c-format msgid "" "The senders address is not trustworthy yet because you only verified %i " "messages and encrypted %i messages to it since %s." msgstr "" -#: src/mail.cpp:1878 +#: src/mail.cpp:1893 msgid "But the sender address is not trustworthy because:" msgstr "" -#: src/mail.cpp:1879 +#: src/mail.cpp:1894 msgid "The sender address is not trustworthy because:" msgstr "" -#: src/mail.cpp:1887 +#: src/mail.cpp:1902 #, fuzzy msgid "The signature is invalid: \n" msgstr "????\n" -#: src/mail.cpp:1892 +#: src/mail.cpp:1907 msgid "There was an error verifying the signature.\n" msgstr "" -#: src/mail.cpp:1896 +#: src/mail.cpp:1911 #, fuzzy msgid "The signature is expired.\n" msgstr "????\n" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 msgid "The used key" msgstr "" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 #, fuzzy msgid "The used certificate" msgstr "????" -#: src/mail.cpp:1908 +#: src/mail.cpp:1923 #, fuzzy msgid "is not available." msgstr "???????CRL????\n" -#: src/mail.cpp:1912 +#: src/mail.cpp:1927 msgid "is revoked." msgstr "" -#: src/mail.cpp:1916 +#: src/mail.cpp:1931 msgid "is expired." msgstr "" -#: src/mail.cpp:1920 +#: src/mail.cpp:1935 msgid "is not meant for signing." msgstr "" -#: src/mail.cpp:1924 src/mail.cpp:1928 +#: src/mail.cpp:1939 src/mail.cpp:1943 msgid "could not be checked for revocation." msgstr "" -#: src/mail.cpp:1933 +#: src/mail.cpp:1948 msgid "is not the same as the key that was used for this address in the past." msgstr "" -#: src/mail.cpp:1939 +#: src/mail.cpp:1954 #, c-format msgid "does not claim the address: \"%s\"." msgstr "" -#: src/mail.cpp:1952 +#: src/mail.cpp:1967 msgid "is not certified by any trustworthy key." msgstr "" -#: src/mail.cpp:1956 +#: src/mail.cpp:1971 msgid "" "is not certified by a trustworthy Certificate Authority or the Certificate " "Authority is unknown." msgstr "" -#: src/mail.cpp:1961 +#: src/mail.cpp:1976 msgid "The sender marked this address as revoked." msgstr "" -#: src/mail.cpp:1965 +#: src/mail.cpp:1980 msgid "is marked as not trustworthy." msgstr "" -#: src/mail.cpp:1975 +#: src/mail.cpp:1990 #, fuzzy msgid "The signature is VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1979 +#: src/mail.cpp:1994 #, fuzzy msgid "The signature is not VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1987 +#: src/mail.cpp:2002 #, fuzzy msgid "The encryption is VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1991 +#: src/mail.cpp:2006 #, fuzzy msgid "The encryption is not VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1998 +#: src/mail.cpp:2017 msgid "Click here to change the key used for this address." msgstr "" -#: src/mail.cpp:2002 +#: src/mail.cpp:2021 msgid "Click here for details about the key." msgstr "" -#: src/mail.cpp:2003 +#: src/mail.cpp:2022 msgid "Click here for details about the certificate." msgstr "" -#: src/mail.cpp:2007 +#: src/mail.cpp:2026 msgid "Click here to search the key on the configured keyserver." msgstr "" -#: src/mail.cpp:2008 +#: src/mail.cpp:2027 msgid "Click here to search the certificate on the configured X509 keyserver." msgstr "" @@ -668,11 +668,11 @@ msgstr "" msgid "Note: Using compatibility flags: %s" msgstr "???????????%s" -#: src/mapihelp.cpp:1707 src/mapihelp.cpp:1715 src/mapihelp.cpp:1723 +#: src/mapihelp.cpp:1714 src/mapihelp.cpp:1722 src/mapihelp.cpp:1730 msgid "[no subject]" msgstr "[???]" -#: src/mapihelp.cpp:2372 +#: src/mapihelp.cpp:2379 msgid "" "[The content of this message is not visible because it has been decrypted by " "another Outlook session. Use the \"decrypt/verify\" command to make it " @@ -681,7 +681,7 @@ msgstr "" "[???????????????? Outlook ?????????/????????" "?]" -#: src/mapihelp.cpp:3267 +#: src/mapihelp.cpp:3274 msgid "" "[The content of this message is not visible due to an processing error in " "GpgOL.]" @@ -970,13 +970,6 @@ msgstr "????????" msgid "No message selected" msgstr "????????" -#: src/ribbon-callbacks.cpp:1616 -msgid "" -"You cannot be sure who sent, modified and read the message in transit.\n" -"\n" -"Click here to learn more." -msgstr "" - #: src/ribbon-callbacks.cpp:1653 #, c-format msgid "" diff --git a/po/zh_TW.po b/po/zh_TW.po index acaa1bc..0a4883d 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: GpgOL\n" "Report-Msgid-Bugs-To: bug-gpgol at g10code.com\n" -"POT-Creation-Date: 2017-07-27 09:17+0200\n" +"POT-Creation-Date: 2017-09-12 13:26+0200\n" "PO-Revision-Date: 2015-08-15 21:58+0800\n" "Last-Translator: Mingye Wang (Arthur2e5) \n" "Language-Team: \n" @@ -167,12 +167,12 @@ msgstr "" msgid "Do you want to revert this folder?" msgstr "????????????" -#: src/gpgoladdin.cpp:446 src/mail.cpp:1428 src/mail.cpp:1499 +#: src/gpgoladdin.cpp:446 src/mail.cpp:1444 src/mail.cpp:1515 #, fuzzy msgid "GpgOL: Encrypted Message" msgstr "????" -#: src/gpgoladdin.cpp:447 src/mail.cpp:1429 src/mail.cpp:1500 +#: src/gpgoladdin.cpp:447 src/mail.cpp:1445 src/mail.cpp:1516 msgid "GpgOL: Trusted Sender Address" msgstr "" @@ -396,7 +396,7 @@ msgstr "" msgid "GpgOL Warning" msgstr "" -#: src/mail.cpp:710 src/mail.cpp:1745 +#: src/mail.cpp:710 src/mail.cpp:1759 #, fuzzy msgid "Encrypted message" msgstr "????" @@ -405,101 +405,101 @@ msgstr "????" msgid "Please wait while the message is being decrypted / verified..." msgstr "" -#: src/mail.cpp:1690 +#: src/mail.cpp:1704 msgid "Security Level 4" msgstr "" -#: src/mail.cpp:1694 +#: src/mail.cpp:1708 msgid "Trust Level 4" msgstr "" -#: src/mail.cpp:1698 +#: src/mail.cpp:1712 msgid "Security Level 3" msgstr "" -#: src/mail.cpp:1702 +#: src/mail.cpp:1716 msgid "Trust Level 3" msgstr "" -#: src/mail.cpp:1706 +#: src/mail.cpp:1720 msgid "Security Level 2" msgstr "" -#: src/mail.cpp:1710 +#: src/mail.cpp:1724 msgid "Trust Level 2" msgstr "" -#: src/mail.cpp:1714 +#: src/mail.cpp:1728 #, fuzzy msgid "Encrypted" msgstr "??" -#: src/mail.cpp:1723 src/mail.cpp:1725 src/ribbon-callbacks.cpp:1569 +#: src/mail.cpp:1737 src/mail.cpp:1739 src/ribbon-callbacks.cpp:1569 msgid "Insecure" msgstr "" -#: src/mail.cpp:1737 +#: src/mail.cpp:1751 #, fuzzy msgid "Signed and encrypted message" msgstr "????" -#: src/mail.cpp:1741 +#: src/mail.cpp:1755 #, fuzzy msgid "Signed message" msgstr "????" -#: src/mail.cpp:1748 src/ribbon-callbacks.cpp:1592 +#: src/mail.cpp:1762 src/ribbon-callbacks.cpp:1592 #, fuzzy msgid "Insecure message" msgstr "????" -#: src/mail.cpp:1758 +#: src/mail.cpp:1772 msgid "You cannot be sure who sent, modified and read the message in transit." msgstr "" -#: src/mail.cpp:1767 +#: src/mail.cpp:1781 #, fuzzy msgid "The encryption was VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1771 +#: src/mail.cpp:1785 #, fuzzy msgid "The encryption was not VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1775 +#: src/mail.cpp:1789 msgid "You cannot be sure who sent the message because it is not signed." msgstr "" -#: src/mail.cpp:1797 +#: src/mail.cpp:1812 #, fuzzy msgid "You signed this message." msgstr "????" -#: src/mail.cpp:1801 +#: src/mail.cpp:1816 msgid "The senders identity was certified by yourself." msgstr "" -#: src/mail.cpp:1805 +#: src/mail.cpp:1820 msgid "The sender is allowed to certify identities for you." msgstr "" -#: src/mail.cpp:1818 +#: src/mail.cpp:1833 msgid "The senders identity was certified by several trusted people." msgstr "" -#: src/mail.cpp:1823 +#: src/mail.cpp:1838 #, c-format msgid "" "The senders identity is certified by the trusted issuer:\n" "'%s'\n" msgstr "" -#: src/mail.cpp:1831 +#: src/mail.cpp:1846 msgid "Some trusted people have certified the senders identity." msgstr "" -#: src/mail.cpp:1841 +#: src/mail.cpp:1856 #, c-format msgid "" "The senders address is trusted, because you have established a communication " @@ -507,133 +507,133 @@ msgid "" "You encrypted %i and verified %i messages since." msgstr "" -#: src/mail.cpp:1857 +#: src/mail.cpp:1872 msgid "The senders signature was verified for the first time." msgstr "" -#: src/mail.cpp:1864 +#: src/mail.cpp:1879 #, c-format msgid "" "The senders address is not trustworthy yet because you only verified %i " "messages and encrypted %i messages to it since %s." msgstr "" -#: src/mail.cpp:1878 +#: src/mail.cpp:1893 msgid "But the sender address is not trustworthy because:" msgstr "" -#: src/mail.cpp:1879 +#: src/mail.cpp:1894 msgid "The sender address is not trustworthy because:" msgstr "" -#: src/mail.cpp:1887 +#: src/mail.cpp:1902 #, fuzzy msgid "The signature is invalid: \n" msgstr "????\n" -#: src/mail.cpp:1892 +#: src/mail.cpp:1907 msgid "There was an error verifying the signature.\n" msgstr "" -#: src/mail.cpp:1896 +#: src/mail.cpp:1911 #, fuzzy msgid "The signature is expired.\n" msgstr "????\n" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 msgid "The used key" msgstr "" -#: src/mail.cpp:1900 +#: src/mail.cpp:1915 #, fuzzy msgid "The used certificate" msgstr "????" -#: src/mail.cpp:1908 +#: src/mail.cpp:1923 #, fuzzy msgid "is not available." msgstr "???????CRL????\n" -#: src/mail.cpp:1912 +#: src/mail.cpp:1927 msgid "is revoked." msgstr "" -#: src/mail.cpp:1916 +#: src/mail.cpp:1931 msgid "is expired." msgstr "" -#: src/mail.cpp:1920 +#: src/mail.cpp:1935 msgid "is not meant for signing." msgstr "" -#: src/mail.cpp:1924 src/mail.cpp:1928 +#: src/mail.cpp:1939 src/mail.cpp:1943 msgid "could not be checked for revocation." msgstr "" -#: src/mail.cpp:1933 +#: src/mail.cpp:1948 msgid "is not the same as the key that was used for this address in the past." msgstr "" -#: src/mail.cpp:1939 +#: src/mail.cpp:1954 #, c-format msgid "does not claim the address: \"%s\"." msgstr "" -#: src/mail.cpp:1952 +#: src/mail.cpp:1967 msgid "is not certified by any trustworthy key." msgstr "" -#: src/mail.cpp:1956 +#: src/mail.cpp:1971 msgid "" "is not certified by a trustworthy Certificate Authority or the Certificate " "Authority is unknown." msgstr "" -#: src/mail.cpp:1961 +#: src/mail.cpp:1976 msgid "The sender marked this address as revoked." msgstr "" -#: src/mail.cpp:1965 +#: src/mail.cpp:1980 msgid "is marked as not trustworthy." msgstr "" -#: src/mail.cpp:1975 +#: src/mail.cpp:1990 #, fuzzy msgid "The signature is VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1979 +#: src/mail.cpp:1994 #, fuzzy msgid "The signature is not VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1987 +#: src/mail.cpp:2002 #, fuzzy msgid "The encryption is VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1991 +#: src/mail.cpp:2006 #, fuzzy msgid "The encryption is not VS-NfD-compliant." msgstr "????\n" -#: src/mail.cpp:1998 +#: src/mail.cpp:2017 msgid "Click here to change the key used for this address." msgstr "" -#: src/mail.cpp:2002 +#: src/mail.cpp:2021 msgid "Click here for details about the key." msgstr "" -#: src/mail.cpp:2003 +#: src/mail.cpp:2022 msgid "Click here for details about the certificate." msgstr "" -#: src/mail.cpp:2007 +#: src/mail.cpp:2026 msgid "Click here to search the key on the configured keyserver." msgstr "" -#: src/mail.cpp:2008 +#: src/mail.cpp:2027 msgid "Click here to search the certificate on the configured X509 keyserver." msgstr "" @@ -668,11 +668,11 @@ msgstr "" msgid "Note: Using compatibility flags: %s" msgstr "???????????%s" -#: src/mapihelp.cpp:1707 src/mapihelp.cpp:1715 src/mapihelp.cpp:1723 +#: src/mapihelp.cpp:1714 src/mapihelp.cpp:1722 src/mapihelp.cpp:1730 msgid "[no subject]" msgstr "[???]" -#: src/mapihelp.cpp:2372 +#: src/mapihelp.cpp:2379 msgid "" "[The content of this message is not visible because it has been decrypted by " "another Outlook session. Use the \"decrypt/verify\" command to make it " @@ -681,7 +681,7 @@ msgstr "" "[???????????????? Outlook ?????????/????????" "?]" -#: src/mapihelp.cpp:3267 +#: src/mapihelp.cpp:3274 msgid "" "[The content of this message is not visible due to an processing error in " "GpgOL.]" @@ -972,13 +972,6 @@ msgstr "????????" msgid "No message selected" msgstr "????????" -#: src/ribbon-callbacks.cpp:1616 -msgid "" -"You cannot be sure who sent, modified and read the message in transit.\n" -"\n" -"Click here to learn more." -msgstr "" - #: src/ribbon-callbacks.cpp:1653 #, c-format msgid "" commit ad0ff8eca95c021df1a2d4b2a408c74460e07e1f Author: Andre Heinecke Date: Tue Sep 12 13:25:46 2017 +0200 Update german translation * po/de.po: Update translation. diff --git a/po/de.po b/po/de.po index 07cfc84..0411235 100644 --- a/po/de.po +++ b/po/de.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: GpgOL 1.0.0\n" "Report-Msgid-Bugs-To: bug-gpgol at g10code.com\n" -"POT-Creation-Date: 2017-07-27 09:17+0200\n" +"POT-Creation-Date: 2017-09-12 11:38+0200\n" "PO-Revision-Date: 2017-07-27 09:18+0100\n" "Last-Translator: Andre Heinecke \n" "Language-Team: English \n" @@ -26,7 +26,7 @@ msgstr "Allgemein" #: src/addin-options.cpp:38 src/olflange-dlgs.cpp:44 msgid "Enable the S/MIME support" -msgstr "S/MIME Unterst?tzung einschalten" +msgstr "S/MIME-Unterst?tzung einschalten" #: src/addin-options.cpp:40 msgid "Enable simplified interface (experimental)" @@ -46,15 +46,15 @@ msgstr "Neue Nachrichten per Voreinstellung signieren" #: src/addin-options.cpp:46 msgid "&Send OpenPGP mails without attachments as PGP/Inline" -msgstr "&OpenPGP Nachrichten ohne Anh?nge als PGP/Inline verschl?sseln" +msgstr "&OpenPGP-Nachrichten ohne Anh?nge als PGP/Inline verschl?sseln" #: src/addin-options.cpp:48 msgid "S&elect crypto settings automatically for reply and forward" -msgstr "Krypto &Einstellungen beim Antworten und weiterleiten ?bernehmen" +msgstr "Krypto-&Einstellungen beim Antworten und Weiterleiten ?bernehmen" #: src/addin-options.cpp:50 msgid "&Search for OpenPGP keys automatically when encrypting" -msgstr "OpenPGP &Schl?ssel zum verschl?sseln automatisch suchen" +msgstr "OpenPGP-&Schl?ssel zum verschl?sseln automatisch suchen" #: src/addin-options.cpp:53 msgid "Debug..." commit 600a2148f8ef49dc90acb6c72b5ee1ce55330841 Author: Andre Heinecke Date: Tue Sep 12 11:48:01 2017 +0200 Increase Options dialog width * src/dialogs.rc (IDD_ADDIN_OPTIONS): Increase width by 20px diff --git a/src/dialogs.rc b/src/dialogs.rc index 99a4f13..71409da 100644 --- a/src/dialogs.rc +++ b/src/dialogs.rc @@ -309,7 +309,7 @@ BEGIN 198, 96, 50, 14 END -IDD_ADDIN_OPTIONS DIALOGEX DISCARDABLE 300, 300, 266, 190 +IDD_ADDIN_OPTIONS DIALOGEX DISCARDABLE 300, 300, 286, 190 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU | DS_SHELLFONT | DS_SETFONT CAPTION "GpgOL" FONT 8, "MS Shell Dlg" @@ -317,43 +317,43 @@ BEGIN /* General options box. */ #ifdef MIME_SEND GROUPBOX "general-options", IDC_G_GENERAL, - 9, 9, 250, 25 + 9, 9, 270, 25 #else GROUPBOX "general-options", IDC_G_GENERAL, - 9, 9, 250, 35 + 9, 9, 270, 35 #endif CONTROL "enable-smime", IDC_ENABLE_SMIME, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, - 24, 19, 215, 10 + 24, 19, 235, 10 #ifndef MIME_SEND CONTROL "enable-mime-ui", IDC_MIME_UI, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, - 24, 29, 215, 10 + 24, 29, 235, 10 #endif /* Send options box. */ GROUPBOX "send-options", IDC_G_SEND, - 9, 50, 250, 67 + 9, 50, 270, 67 CONTROL "encrypt-by-default", IDC_ENCRYPT_DEFAULT, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, - 24, 60, 215, 10 + 24, 60, 235, 10 CONTROL "sign-by-default", IDC_SIGN_DEFAULT, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, - 24, 71, 215, 10 + 24, 71, 235, 10 CONTROL "inline-pgp", IDC_INLINE_PGP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, - 24, 82, 215, 10 + 24, 82, 235, 10 CONTROL "replycrypt", IDC_REPLYCRYPT, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, - 24, 93, 215, 10 + 24, 93, 235, 10 CONTROL "autoresolve", IDC_AUTORRESOLVE, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, - 24, 104, 215, 10 + 24, 104, 235, 10 /* Stuff at the lower left corner. */ CONTROL IDB_LOGO, IDC_BITMAP, @@ -364,12 +364,12 @@ BEGIN 10, 175, 100, 9 PUSHBUTTON "advanced", IDC_GPG_OPTIONS, - 180, 140, 70, 14 + 180, 140, 90, 14 PUSHBUTTON "gpgconf", IDC_GPG_CONF, - 180, 155, 70, 14 + 180, 155, 90, 14 DEFPUSHBUTTON "&OK", IDOK, - 180, 170, 70, 14 + 180, 170, 90, 14 END ----------------------------------------------------------------------- Summary of changes: NEWS | 2 +- po/de.po | 145 ++++++++++++++++++++++++++++----------------------------- po/fr.po | 123 +++++++++++++++++++++++------------------------- po/pt.po | 136 ++++++++++++++++++++++++++--------------------------- po/sv.po | 123 +++++++++++++++++++++++------------------------- po/zh_CN.po | 123 +++++++++++++++++++++++------------------------- po/zh_TW.po | 123 +++++++++++++++++++++++------------------------- src/dialogs.rc | 28 +++++------ 8 files changed, 387 insertions(+), 416 deletions(-) hooks/post-receive -- GnuPG extension for MS Outlook http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 12 14:37:45 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 12 Sep 2017 14:37:45 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.0-4-ga172759 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via a172759b5088ae086c0caa2e7d4d0ea346b28a90 (commit) via 827abe01a72a50eab1cdcde78985b42a4a8480fb (commit) from 7089dcc54099a4909ce7d386c07ab87e1398e2eb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit a172759b5088ae086c0caa2e7d4d0ea346b28a90 Author: NIIBE Yutaka Date: Fri Sep 8 14:21:29 2017 +0900 tests: Fix a test which specifies expiration date. * tests/openpgp/quick-key-manipulation.scm: Fix expiration time comparison. -- This is a bug fix for Amelia Earhart who is probably in UTC-12. When expiration date is specified, GnuPG interprets it as noon of the date in local time. Before this fix, the test compared the value by 2145916800 which is 2038-01-01 00:00:00 in UTC with allowance of 1 day. When the test was ran in UTC-12 timezone, it failed because of noon in the timezone is midnight of the next day in UTC. GnuPG-bug-id: 3393 Reported-by: Daniel Kahn Gillmor Signed-off-by: NIIBE Yutaka diff --git a/tests/openpgp/quick-key-manipulation.scm b/tests/openpgp/quick-key-manipulation.scm index c21abfe..2023f17 100755 --- a/tests/openpgp/quick-key-manipulation.scm +++ b/tests/openpgp/quick-key-manipulation.scm @@ -178,11 +178,11 @@ (lambda (subkey) (assert (= 1 (:alg subkey))) (assert (string-contains? (:cap subkey) "s")) - (assert (time-matches? 2145916800 ;; 2038-01-01 - ;; 4260207600 ;; 2105-01-01 + (assert (time-matches? 2145960000 ;; UTC 2038-01-01 12:00:00 + ;; 4260254400 ;; UTC 2105-01-01 12:00:00 (string->number (:expire subkey)) - ;; This is off by 12h, but I guess it just - ;; choses the middle of the day. + ;; GnuPG choses the middle of the day (local time) + ;; when no hh:mm:ss is specified (days->seconds 1)))) (lambda (subkey) (assert (= 1 (:alg subkey))) commit 827abe01a72a50eab1cdcde78985b42a4a8480fb Author: NIIBE Yutaka Date: Tue Aug 29 14:35:47 2017 +0900 scd: Fix for large ECC keys. * scd/app-openpgp.c (do_decipher): Support larger length. -- Reported-by: Achim Pietig Signed-off-by: NIIBE Yutaka diff --git a/scd/app-openpgp.c b/scd/app-openpgp.c index f9d07ac..6fcec3e 100644 --- a/scd/app-openpgp.c +++ b/scd/app-openpgp.c @@ -4575,19 +4575,43 @@ do_decipher (app_t app, const char *keyidstr, } } - fixuplen = 7; + n = 0; + if (indatalen < 128) + fixuplen = 7; + else + fixuplen = 10; + fixbuf = xtrymalloc (fixuplen + indatalen); if (!fixbuf) return gpg_error_from_syserror (); /* Build 'Cipher DO' */ - fixbuf[0] = '\xa6'; - fixbuf[1] = (char)(indatalen+5); - fixbuf[2] = '\x7f'; - fixbuf[3] = '\x49'; - fixbuf[4] = (char)(indatalen+2); - fixbuf[5] = '\x86'; - fixbuf[6] = (char)indatalen; + fixbuf[n++] = '\xa6'; + if (indatalen < 128) + fixbuf[n++] = (char)(indatalen+5); + else + { + fixbuf[n++] = 0x81; + fixbuf[n++] = (char)(indatalen+7); + } + fixbuf[n++] = '\x7f'; + fixbuf[n++] = '\x49'; + if (indatalen < 128) + fixbuf[n++] = (char)(indatalen+2); + else + { + fixbuf[n++] = 0x81; + fixbuf[n++] = (char)(indatalen+3); + } + fixbuf[n++] = '\x86'; + if (indatalen < 128) + fixbuf[n++] = (char)indatalen; + else + { + fixbuf[n++] = 0x81; + fixbuf[n++] = (char)indatalen; + } + if (old_format_len) { memset (fixbuf+fixuplen, 0, 32 - old_format_len); ----------------------------------------------------------------------- Summary of changes: scd/app-openpgp.c | 40 +++++++++++++++++++++++++------- tests/openpgp/quick-key-manipulation.scm | 8 +++---- 2 files changed, 36 insertions(+), 12 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 12 14:45:26 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 12 Sep 2017 14:45:26 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.0-7-g8b5a247 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via 8b5a2474f21dd4f1aa2a283e2f57d75e42742af5 (commit) via c65a7bba7331975d20910f90cf648b6ecc5410f0 (commit) via 7d15ee88980f88ca62fc7de9492dd08e54d0f0f1 (commit) from a172759b5088ae086c0caa2e7d4d0ea346b28a90 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 8b5a2474f21dd4f1aa2a283e2f57d75e42742af5 Author: Werner Koch Date: Tue Sep 12 14:38:44 2017 +0200 gpg: Fix "Fix key generation with only an email part". * g10/keygen.c (proc_parameter_file): Don't check the result of stpcpy. -- Fixes-commit: 7089dcc54099a4909ce7d386c07ab87e1398e2eb Signed-off-by: Werner Koch diff --git a/g10/keygen.c b/g10/keygen.c index 08bc621..2b17a1e 100644 --- a/g10/keygen.c +++ b/g10/keygen.c @@ -3533,7 +3533,7 @@ proc_parameter_file (ctrl_t ctrl, struct para_data_s *para, const char *fname, { /* If we have only the email part, do not add the space * and the angle brackets. */ - if (*p) + if (*r->u.value) p = stpcpy(stpcpy(stpcpy(p," <"), s3 ),">"); else p = stpcpy (p, s3); commit c65a7bba7331975d20910f90cf648b6ecc5410f0 Author: Werner Koch Date: Tue Sep 12 14:32:29 2017 +0200 wks: Use unencrypted draft-1 mode for posteo.de * tools/gpg-wks-client.c (command_send): Allow sending in draft-1 mode. -- Obviously Posteo did not implement the current draft and thus it was not possible to send a request to them. This hack uses the old method for posteo.de. Not sending it encrypted is okay here because they use authenticated sending anyway. Signed-off-by: Werner Koch diff --git a/tools/gpg-wks-client.c b/tools/gpg-wks-client.c index 594f28a..5b98de4 100644 --- a/tools/gpg-wks-client.c +++ b/tools/gpg-wks-client.c @@ -349,10 +349,7 @@ get_key_status_cb (void *opaque, const char *keyword, char *args) /* Get a key by fingerprint from gpg's keyring and make sure that the * mail address ADDRSPEC is included in the key. The key is returned - * as a new memory stream at R_KEY. - * - * Fixme: After we have implemented import and export filters for gpg - * this function shall only return a key with just this user id. */ + * as a new memory stream at R_KEY. */ static gpg_error_t get_key (estream_t *r_key, const char *fingerprint, const char *addrspec) { @@ -695,6 +692,8 @@ command_send (const char *fingerprint, char *userid) char *submission_to = NULL; mime_maker_t mime = NULL; struct policy_flags_s policy; + int no_encrypt = 0; + const char *domain; memset (&policy, 0, sizeof policy); @@ -717,6 +716,10 @@ command_send (const char *fingerprint, char *userid) if (err) goto leave; + domain = strchr (addrspec, '@'); + log_assert (domain); + domain++; + /* Get the submission address. */ if (fake_submission_addr) { @@ -727,11 +730,8 @@ command_send (const char *fingerprint, char *userid) err = wkd_get_submission_address (addrspec, &submission_to); if (err) { - char *domain = strchr (addrspec, '@'); - if (domain) - domain = domain + 1; - log_error (_("looking up WKS submission address for %s: %s\n"), - domain ? domain : addrspec, gpg_strerror (err)); + log_error (_("error looking up submission address for domain '%s': %s\n"), + domain, gpg_strerror (err)); if (gpg_err_code (err) == GPG_ERR_NO_DATA) log_error (_("this domain probably doesn't support WKS.\n")); goto leave; @@ -762,14 +762,23 @@ command_send (const char *fingerprint, char *userid) if (policy.auth_submit) log_info ("no confirmation required for '%s'\n", addrspec); - /* Encrypt the key part. */ - es_rewind (key); - err = encrypt_response (&keyenc, key, submission_to, fingerprint); - if (err) - goto leave; - es_fclose (key); - key = NULL; + /* Hack to support old providers. */ + if (policy.auth_submit && !ascii_strcasecmp (domain, "posteo.de")) + { + log_info ("Warning: Using draft-1 method for domain '%s'\n", domain); + no_encrypt = 1; + } + /* Encrypt the key part. */ + if (!no_encrypt) + { + es_rewind (key); + err = encrypt_response (&keyenc, key, submission_to, fingerprint); + if (err) + goto leave; + es_fclose (key); + key = NULL; + } /* Send the key. */ err = mime_maker_new (&mime, NULL); @@ -787,34 +796,67 @@ command_send (const char *fingerprint, char *userid) /* Tell server which draft we support. */ err = mime_maker_add_header (mime, "Wks-Draft-Version", - STR2(WKS_DRAFT_VERSION)); + STR2(WKS_DRAFT_VERSION)); if (err) goto leave; - err = mime_maker_add_header (mime, "Content-Type", - "multipart/encrypted; " - "protocol=\"application/pgp-encrypted\""); - if (err) - goto leave; - err = mime_maker_add_container (mime); - if (err) - goto leave; + if (no_encrypt) + { + void *data; + size_t datalen, n; - err = mime_maker_add_header (mime, "Content-Type", - "application/pgp-encrypted"); - if (err) - goto leave; - err = mime_maker_add_body (mime, "Version: 1\n"); - if (err) - goto leave; - err = mime_maker_add_header (mime, "Content-Type", - "application/octet-stream"); - if (err) - goto leave; + err = mime_maker_add_header (mime, "Content-type", + "application/pgp-keys"); + if (err) + goto leave; - err = mime_maker_add_stream (mime, &keyenc); - if (err) - goto leave; + if (es_fclose_snatch (key, &data, &datalen)) + { + err = gpg_error_from_syserror (); + goto leave; + } + key = NULL; + /* We need to skip over the first line which has a content-type + * header not needed here. */ + for (n=0; n < datalen ; n++) + if (((const char *)data)[n] == '\n') + { + n++; + break; + } + + err = mime_maker_add_body_data (mime, (char*)data + n, datalen - n); + xfree (data); + if (err) + goto leave; + } + else + { + err = mime_maker_add_header (mime, "Content-Type", + "multipart/encrypted; " + "protocol=\"application/pgp-encrypted\""); + if (err) + goto leave; + err = mime_maker_add_container (mime); + if (err) + goto leave; + + err = mime_maker_add_header (mime, "Content-Type", + "application/pgp-encrypted"); + if (err) + goto leave; + err = mime_maker_add_body (mime, "Version: 1\n"); + if (err) + goto leave; + err = mime_maker_add_header (mime, "Content-Type", + "application/octet-stream"); + if (err) + goto leave; + + err = mime_maker_add_stream (mime, &keyenc); + if (err) + goto leave; + } err = wks_send_mime (mime); commit 7d15ee88980f88ca62fc7de9492dd08e54d0f0f1 Author: Werner Koch Date: Tue Sep 12 14:29:04 2017 +0200 tools: New function mime_maker_add_body_data. * tools/mime-maker.c (mime_maker_add_body_data): New. Signed-off-by: Werner Koch diff --git a/tools/mime-maker.c b/tools/mime-maker.c index d1241f3..0edc14d 100644 --- a/tools/mime-maker.c +++ b/tools/mime-maker.c @@ -478,7 +478,8 @@ add_body (mime_maker_t ctx, const void *data, size_t datalen) /* Add STRING as body to the mail or the current MIME container. A - * second call to this function is not allowed. + * second call to this function or mime_make_add_body_data is not + * allowed. * * FIXME: We may want to have an append_body to add more data to a body. */ @@ -489,6 +490,16 @@ mime_maker_add_body (mime_maker_t ctx, const char *string) } +/* Add (DATA,DATALEN) as body to the mail or the current MIME + * container. Note that a second call to this function or to + * mime_make_add_body is not allowed. */ +gpg_error_t +mime_maker_add_body_data (mime_maker_t ctx, const void *data, size_t datalen) +{ + return add_body (ctx, data, datalen); +} + + /* This is the same as mime_maker_add_body but takes a stream as * argument. As of now the stream is copied to the MIME object but * eventually we may delay that and read the stream only at the time diff --git a/tools/mime-maker.h b/tools/mime-maker.h index f2a76cd..c0ddaea 100644 --- a/tools/mime-maker.h +++ b/tools/mime-maker.h @@ -34,6 +34,8 @@ void mime_maker_dump_tree (mime_maker_t ctx); gpg_error_t mime_maker_add_header (mime_maker_t ctx, const char *name, const char *value); gpg_error_t mime_maker_add_body (mime_maker_t ctx, const char *string); +gpg_error_t mime_maker_add_body_data (mime_maker_t ctx, + const void *data, size_t datalen); gpg_error_t mime_maker_add_stream (mime_maker_t ctx, estream_t *stream_addr); gpg_error_t mime_maker_add_container (mime_maker_t ctx); gpg_error_t mime_maker_end_container (mime_maker_t ctx); ----------------------------------------------------------------------- Summary of changes: g10/keygen.c | 2 +- tools/gpg-wks-client.c | 120 +++++++++++++++++++++++++++++++++---------------- tools/mime-maker.c | 13 +++++- tools/mime-maker.h | 2 + 4 files changed, 96 insertions(+), 41 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 12 16:00:34 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Tue, 12 Sep 2017 16:00:34 +0200 Subject: [git] GpgEX - branch, master, updated. gpgex-1.0.4-11-g011b0af Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnupG extension for the Windows Explorer". The branch, master has been updated via 011b0afb4012258af479fb40b26911d7be874750 (commit) via dcdc405fa9190164e525fec0c1a7e7c5b58312a2 (commit) via 293168f6c49c245c2922a554c24a3744a0d9ab9d (commit) from 4965492e8b6aaf41cb380f1a0e0dea8753d9e8d5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 011b0afb4012258af479fb40b26911d7be874750 Author: Andre Heinecke Date: Tue Sep 12 14:48:29 2017 +0200 Post release updates -- diff --git a/NEWS b/NEWS index bce268e..2f61ffc 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,7 @@ +Noteworthy changes for version 1.0.6 (unreleased) +------------------------------------------------- + + Noteworthy changes for version 1.0.5 (2017-09-12) ------------------------------------------------- diff --git a/configure.ac b/configure.ac index baef053..a9f3157 100644 --- a/configure.ac +++ b/configure.ac @@ -17,7 +17,7 @@ min_automake_version="1.10" # (git tag -s gnupg-2.n.m) and run "./autogen.sh --force". Please # bump the version number immediately *after* the release and do # another commit and push so that the git magic is able to work. -m4_define([mym4_version], [1.0.5]) +m4_define([mym4_version], [1.0.6]) # Below is m4 magic to extract and compute the git revision number, # the decimalized short revision number, a beta version string and a commit dcdc405fa9190164e525fec0c1a7e7c5b58312a2 Author: Andre Heinecke Date: Tue Sep 12 14:42:11 2017 +0200 Release GpgEX 1.0.5 diff --git a/NEWS b/NEWS index 9120a12..bce268e 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,10 @@ -Noteworthy changes for version 1.0.5 (unreleased) +Noteworthy changes for version 1.0.5 (2017-09-12) ------------------------------------------------- +* Fixed localisation for the 64bit version. + +* Added c++ hardending flags by default. + Noteworthy changes for version 1.0.4 (2016-03-30) ------------------------------------------------- commit 293168f6c49c245c2922a554c24a3744a0d9ab9d Author: Andre Heinecke Date: Tue Sep 12 14:40:22 2017 +0200 Fix locale dir if installed under bin_64 * src/main.cc (get_locale_dir): Also strip bin_64 diff --git a/po/pt.po b/po/pt.po index 0ccf5bb..859fa61 100644 --- a/po/pt.po +++ b/po/pt.po @@ -17,7 +17,6 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-SourceCharset: UTF-8\n" "X-Generator: Poedit 2.0.3\n" -"POT-Creation-Date: \n" #, c-format msgid "" diff --git a/src/main.cc b/src/main.cc index 8cc0ed9..661b9ad 100644 --- a/src/main.cc +++ b/src/main.cc @@ -103,7 +103,7 @@ get_locale_dir (void) such a directory layout under plain Windows without the need to change libgpg-error. */ p = strrchr (result, '\\'); - if (p && !strcmp (p+1, "bin")) + if (p && (!strcmp (p+1, "bin") || !strcmp (p+1, "bin_64"))) *p = 0; gpgex_server::root_dir = strdup (result); ----------------------------------------------------------------------- Summary of changes: NEWS | 10 +++++++++- configure.ac | 2 +- po/pt.po | 1 - src/main.cc | 2 +- 4 files changed, 11 insertions(+), 4 deletions(-) hooks/post-receive -- GnupG extension for the Windows Explorer http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 12 18:12:41 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 12 Sep 2017 18:12:41 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.0-9-ga821b4f Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via a821b4f5567d02c3329c2b94a73dcbe12e6699a2 (commit) via 332c9eaa2a3c7cae90b389cdaa2c149c5595fb4d (commit) from 8b5a2474f21dd4f1aa2a283e2f57d75e42742af5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit a821b4f5567d02c3329c2b94a73dcbe12e6699a2 Author: Werner Koch Date: Tue Sep 12 18:08:09 2017 +0200 wks: Add hack for the broken posteo system * tools/gpg-wks-client.c (command_send): Additional hack for posteo. Check the protocol-version flag. Signed-off-by: Werner Koch diff --git a/tools/gpg-wks-client.c b/tools/gpg-wks-client.c index 5b98de4..e703640 100644 --- a/tools/gpg-wks-client.c +++ b/tools/gpg-wks-client.c @@ -693,6 +693,7 @@ command_send (const char *fingerprint, char *userid) mime_maker_t mime = NULL; struct policy_flags_s policy; int no_encrypt = 0; + int posteo_hack = 0; const char *domain; memset (&policy, 0, sizeof policy); @@ -762,11 +763,14 @@ command_send (const char *fingerprint, char *userid) if (policy.auth_submit) log_info ("no confirmation required for '%s'\n", addrspec); - /* Hack to support old providers. */ - if (policy.auth_submit && !ascii_strcasecmp (domain, "posteo.de")) + /* Hack to support posteo but let them disable this by setting the + * new policy-version flag. */ + if (policy.protocol_version < 3 + && !ascii_strcasecmp (domain, "posteo.de")) { log_info ("Warning: Using draft-1 method for domain '%s'\n", domain); no_encrypt = 1; + posteo_hack = 1; } /* Encrypt the key part. */ @@ -805,6 +809,18 @@ command_send (const char *fingerprint, char *userid) void *data; size_t datalen, n; + if (posteo_hack) + { + /* Needs a multipart/mixed with one(!) attachment. It does + * not grok a non-multipart mail. */ + err = mime_maker_add_header (mime, "Content-Type", "multipart/mixed"); + if (err) + goto leave; + err = mime_maker_add_container (mime); + if (err) + goto leave; + } + err = mime_maker_add_header (mime, "Content-type", "application/pgp-keys"); if (err) commit 332c9eaa2a3c7cae90b389cdaa2c149c5595fb4d Author: Werner Koch Date: Tue Sep 12 18:05:00 2017 +0200 wks: Add new policy flag protocol-version * tools/gpg-wks.h (policy_flags_s): Add field protocol_version. * tools/wks-util.c (wks_parse_policy): Add new policy flag. Signed-off-by: Werner Koch diff --git a/tools/gpg-wks.h b/tools/gpg-wks.h index f73c183..caea98e 100644 --- a/tools/gpg-wks.h +++ b/tools/gpg-wks.h @@ -63,6 +63,7 @@ struct policy_flags_s unsigned int mailbox_only : 1; unsigned int dane_only : 1; unsigned int auth_submit : 1; + unsigned int protocol_version; /* The supported WKS_DRAFT_VERION or 0 */ unsigned int max_pending; /* Seconds to wait for a confirmation. */ }; typedef struct policy_flags_s *policy_flags_t; diff --git a/tools/wks-util.c b/tools/wks-util.c index 46ad5c2..45237b2 100644 --- a/tools/wks-util.c +++ b/tools/wks-util.c @@ -316,7 +316,8 @@ wks_parse_policy (policy_flags_t flags, estream_t stream, int ignore_unknown) TOK_MAILBOX_ONLY, TOK_DANE_ONLY, TOK_AUTH_SUBMIT, - TOK_MAX_PENDING + TOK_MAX_PENDING, + TOK_PROTOCOL_VERSION }; static struct { const char *name; @@ -325,7 +326,8 @@ wks_parse_policy (policy_flags_t flags, estream_t stream, int ignore_unknown) { "mailbox-only", TOK_MAILBOX_ONLY }, { "dane-only", TOK_DANE_ONLY }, { "auth-submit", TOK_AUTH_SUBMIT }, - { "max-pending", TOK_MAX_PENDING } + { "max-pending", TOK_MAX_PENDING }, + { "protocol-version", TOK_PROTOCOL_VERSION } }; gpg_error_t err = 0; int lnr = 0; @@ -400,6 +402,14 @@ wks_parse_policy (policy_flags_t flags, estream_t stream, int ignore_unknown) * and decide whether to allow other units. */ flags->max_pending = atoi (value); break; + case TOK_PROTOCOL_VERSION: + if (!value) + { + err = gpg_error (GPG_ERR_SYNTAX); + goto leave; + } + flags->protocol_version = atoi (value); + break; } } ----------------------------------------------------------------------- Summary of changes: tools/gpg-wks-client.c | 20 ++++++++++++++++++-- tools/gpg-wks.h | 1 + tools/wks-util.c | 14 ++++++++++++-- 3 files changed, 31 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 12 18:27:26 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 12 Sep 2017 18:27:26 +0200 Subject: [git] gnupg-doc - branch, master, updated. f5fbb657f1c40614c10d74c6c28a2eee90b91a09 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via f5fbb657f1c40614c10d74c6c28a2eee90b91a09 (commit) from cbd448822077402651094bbfd158a53d7b822349 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit f5fbb657f1c40614c10d74c6c28a2eee90b91a09 Author: Werner Koch Date: Tue Sep 12 18:23:46 2017 +0200 drafts,openpgp-webkey-service: Define keyword protocol-version diff --git a/misc/id/openpgp-webkey-service/draft.org b/misc/id/openpgp-webkey-service/draft.org index 9fa20bd..6290b2e 100644 --- a/misc/id/openpgp-webkey-service/draft.org +++ b/misc/id/openpgp-webkey-service/draft.org @@ -437,6 +437,17 @@ Currently defined keywords are: submitted key will be published immediately without any confirmation request. +- protocol-version :: This keyword can be used to explicitly claim the + support of a specific version of the Web Key Service protocol. + This is in general not needed but implementations may have + workarounds for providers which only support an old protocol + version. If these providers update to a newer version they + should add this keyword so that the implementation can disable + the workaround. The value is an integer corresponding to the + respective draft revision number. + +# Fixme: Add a protocol-version value for the final RFC. + More keywords will be defined in updates to this I-D. There is no registry except for this document. For experimental use of new ----------------------------------------------------------------------- Summary of changes: misc/id/openpgp-webkey-service/draft.org | 11 +++++++++++ 1 file changed, 11 insertions(+) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 13 07:53:33 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 13 Sep 2017 07:53:33 +0200 Subject: [git] GPA - branch, master, updated. gpa-0.9.10-10-g7fb061b Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Assistant". The branch, master has been updated via 7fb061b1d784bce2e85664b097e4266a15a4fd01 (commit) from f7de6260936cafb5f56635956b55271baae72faf (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 7fb061b1d784bce2e85664b097e4266a15a4fd01 Author: Werner Koch Date: Wed Sep 13 07:49:45 2017 +0200 Fix listing of algorithm/keysize in the subkey window. * src/gpasubkeylist.c (gpa_subkey_list_set_key): Use the current subkey. -- GnuPG-bug-id: 3405 Signed-off-by: Werner Koch diff --git a/src/gpasubkeylist.c b/src/gpasubkeylist.c index 9862521..2039e0a 100644 --- a/src/gpasubkeylist.c +++ b/src/gpasubkeylist.c @@ -253,7 +253,7 @@ gpa_subkey_list_set_key (GtkWidget *list, gpgme_key_t key) *p = 0; #if GPGME_VERSION_NUMBER >= 0x010601 /* GPGME >= 1.6.1 */ - algostr_buf = gpgme_pubkey_algo_string (key->subkeys); + algostr_buf = gpgme_pubkey_algo_string (subkey); algostr = algostr_buf? algostr_buf : "?"; #else /* GPGME < 1.6.1 */ algostr = gpgme_pubkey_algo_name (subkey->pubkey_algo), ----------------------------------------------------------------------- Summary of changes: src/gpasubkeylist.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GNU Privacy Assistant http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 13 08:59:12 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 13 Sep 2017 08:59:12 +0200 Subject: [git] GPA - branch, master, updated. gpa-0.9.10-11-g69c7775 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Assistant". The branch, master has been updated via 69c777580bb9eff0fbc373b3a84cdfe74b07f566 (commit) from 7fb061b1d784bce2e85664b097e4266a15a4fd01 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 69c777580bb9eff0fbc373b3a84cdfe74b07f566 Author: Werner Koch Date: Wed Sep 13 08:55:36 2017 +0200 Use the new gpgme_op_interact interface. * src/gpgmeedit.c (CMP_STATUS): New macro. Use this instead of the direct integer compares. (status_type_t): New type alias. Use it instead of gpgme_status_code_t. (edit_fnc) [USE_GPGME_INTERACT]: Compare a against a string list. (gpa_gpgme_edit_trust_start) [USE_GPGME_INTERACT]: Use the new API. (gpa_gpgme_edit_expire_start) [USE_GPGME_INTERACT]: Ditto. (gpa_gpgme_edit_sign_start) [USE_GPGME_INTERACT]: Ditto. (gpa_gpgme_edit_passwd_start) [USE_GPGME_INTERACT]: Ditto. (gpa_gpgme_card_edit_genkey_start) [USE_GPGME_INTERACT]: Ditto. Signed-off-by: Werner Koch diff --git a/src/gpgmeedit.c b/src/gpgmeedit.c index 72b6832..3fbf440 100644 --- a/src/gpgmeedit.c +++ b/src/gpgmeedit.c @@ -1,6 +1,6 @@ /* gpgmeedit.c - The GNU Privacy Assistant's edit interactor. * Copyright (C) 2002 Miguel Coca. - * Copyright (C) 2008, 2009, 2012 g10 Code GmbH. + * Copyright (C) 2008, 2009, 2012, 2017 g10 Code GmbH. * * This file is part of GPA * @@ -28,9 +28,10 @@ #include "gpgmeedit.h" #include "passwddlg.h" -/* The edit callback for all the edit operations is edit_fnc(). Each - * operation is modelled as a sequential machine (a Moore machine, to be - * precise). Therefore, for each operation you must write two functions. +/* The edit callback for all the edit operations is edit_fnc. Each + * operation is modelled as a sequential machine (a Moore machine, to + * be precise). Therefore, for each operation you must write two + * functions. * * One of them is "action" or output function, that chooses the right value * for *result (the next command issued in the edit command line) based on @@ -42,12 +43,25 @@ */ +/* If posssible we use the modern interact interface. */ +#undef USE_GPGME_INTERACT +#if GPGME_VERSION_NUMBER >= 0x010700 /* GPGME >= 1.7.0 */ +# define USE_GPGME_INTERACT 1 +# define CMP_STATUS(a) !strcmp (status, G_STRINGIFY (a)) + typedef const char *status_type_t ; +#else +# define CMP_STATUS(a) (status == GPGME_STATUS_ ## b) + typedef gpgme_status_code_t status_type_t; +#endif + + + /* Prototype of the action function. Returns the error if there is one */ typedef gpg_error_t (*edit_action_t) (int state, void *opaque, char **result); /* Prototype of the transit function. Returns the next state. If and error * is found changes *err. If there is no error it should NOT touch it */ -typedef int (*edit_transit_t) (int current_state, gpgme_status_code_t status, +typedef int (*edit_transit_t) (int current_state, status_type_t status, const char *args, void *opaque, gpg_error_t *err); @@ -203,15 +217,41 @@ parse_status_error (const char *args) } -/* The edit callback proper */ +/* The interact/edit callback proper. */ static gpg_error_t -edit_fnc (void *opaque, gpgme_status_code_t status, +edit_fnc (void *opaque, status_type_t status, const char *args, int fd) { struct edit_parms_s *parms = opaque; char *result = NULL; /* Whitelist all status code we know about. */ +#if USE_GPGME_INTERACT + { + static const char *whitelist[] = { + "ALREADY_SIGNED", + "ERROR", + "GET_BOOL", + "GET_LINE", + "KEY_CREATED", + "NEED_PASSPHRASE_SYM", + "SC_OP_FAILURE", + NULL + }; + int i; + + /* Whitelist all status code we know about. */ + for (i=0; whitelist[i]; i++) + if (!strcmp (status, whitelist[i])) + break; /* Known. */ + if (!whitelist[i]) + { + /* We don't know this keyword thus do not need to handle it. */ + return parms->err; + } + } +#else /* !USE_GPGME_INTERACT */ + switch (status) { case GPGME_STATUS_ALREADY_SIGNED: @@ -227,14 +267,15 @@ edit_fnc (void *opaque, gpgme_status_code_t status, /* We don't know and thus do not need this status code. */ return parms->err; } +#endif /* !USE_GPGME_INTERACT */ if (!parms->need_status_passphrase_sym - && status == GPGME_STATUS_NEED_PASSPHRASE_SYM) + && CMP_STATUS (NEED_PASSPHRASE_SYM)) { return parms->err; } - else if (status == GPGME_STATUS_SC_OP_FAILURE) + else if (CMP_STATUS (SC_OP_FAILURE)) { if (args && !parms->err) { @@ -253,7 +294,7 @@ edit_fnc (void *opaque, gpgme_status_code_t status, } /* Call the save_error function. */ - if (status == GPGME_STATUS_ERROR && args && parms->save_error) + if (CMP_STATUS (ERROR) && args && parms->save_error) { int n = strcspn (args, " \t"); char *buf = g_strdup_printf ("%.*s: %s", n, args, @@ -262,7 +303,13 @@ edit_fnc (void *opaque, gpgme_status_code_t status, } if (debug_edit_fsm) - g_debug ("edit_fnc: state=%d input=%d (%s)", parms->state, status, args); + g_debug ( +#ifdef USE_GPGME_INTERACT + "edit_fnc: state=%d input=%s (%s)" +#else + "edit_fnc: state=%d input=%d (%s)" +#endif + , parms->state, status, args); /* Choose the next state based on the current one and the input */ parms->state = parms->transit (parms->state, status, args, parms->opaque, @@ -345,7 +392,7 @@ edit_expire_fnc_action (int state, void *opaque, char **result) /* Change expiry time: transit. */ static int -edit_expire_fnc_transit (int current_state, gpgme_status_code_t status, +edit_expire_fnc_transit (int current_state, status_type_t status, const char *args, void *opaque, gpg_error_t *err) { int next_state; @@ -353,8 +400,7 @@ edit_expire_fnc_transit (int current_state, gpgme_status_code_t status, switch (current_state) { case EXPIRE_START: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = EXPIRE_COMMAND; } @@ -365,8 +411,7 @@ edit_expire_fnc_transit (int current_state, gpgme_status_code_t status, } break; case EXPIRE_COMMAND: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keygen.valid")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keygen.valid")) { next_state = EXPIRE_DATE; } @@ -377,13 +422,11 @@ edit_expire_fnc_transit (int current_state, gpgme_status_code_t status, } break; case EXPIRE_DATE: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = EXPIRE_QUIT; } - else if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keygen.valid")) + else if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keygen.valid")) { next_state = EXPIRE_ERROR; *err = gpg_error (GPG_ERR_INV_TIME); @@ -395,8 +438,7 @@ edit_expire_fnc_transit (int current_state, gpgme_status_code_t status, } break; case EXPIRE_QUIT: - if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "keyedit.save.okay")) + if (CMP_STATUS (GET_BOOL) && g_str_equal (args, "keyedit.save.okay")) { next_state = EXPIRE_SAVE; } @@ -407,8 +449,7 @@ edit_expire_fnc_transit (int current_state, gpgme_status_code_t status, } break; case EXPIRE_ERROR: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { /* Go to quit operation state */ next_state = EXPIRE_QUIT; @@ -467,7 +508,7 @@ edit_trust_fnc_action (int state, void *opaque, char **result) /* Change the key ownertrust: transit. */ static int -edit_trust_fnc_transit (int current_state, gpgme_status_code_t status, +edit_trust_fnc_transit (int current_state, status_type_t status, const char *args, void *opaque, gpg_error_t *err) { int next_state; @@ -475,8 +516,7 @@ edit_trust_fnc_transit (int current_state, gpgme_status_code_t status, switch (current_state) { case TRUST_START: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = TRUST_COMMAND; } @@ -487,8 +527,7 @@ edit_trust_fnc_transit (int current_state, gpgme_status_code_t status, } break; case TRUST_COMMAND: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "edit_ownertrust.value")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "edit_ownertrust.value")) { next_state = TRUST_VALUE; } @@ -499,13 +538,12 @@ edit_trust_fnc_transit (int current_state, gpgme_status_code_t status, } break; case TRUST_VALUE: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = TRUST_QUIT; } - else if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "edit_ownertrust.set_ultimate.okay")) + else if (CMP_STATUS (GET_BOOL) + && g_str_equal (args, "edit_ownertrust.set_ultimate.okay")) { next_state = TRUST_REALLY_ULTIMATE; } @@ -516,8 +554,7 @@ edit_trust_fnc_transit (int current_state, gpgme_status_code_t status, } break; case TRUST_REALLY_ULTIMATE: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = TRUST_QUIT; } @@ -528,8 +565,7 @@ edit_trust_fnc_transit (int current_state, gpgme_status_code_t status, } break; case TRUST_QUIT: - if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "keyedit.save.okay")) + if (CMP_STATUS (GET_BOOL) && g_str_equal (args, "keyedit.save.okay")) { next_state = TRUST_SAVE; } @@ -540,8 +576,7 @@ edit_trust_fnc_transit (int current_state, gpgme_status_code_t status, } break; case TRUST_ERROR: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { /* Go to quit operation state */ next_state = TRUST_QUIT; @@ -611,7 +646,7 @@ edit_sign_fnc_action (int state, void *opaque, char **result) /* Sign a key: transit. */ static int -edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, +edit_sign_fnc_transit (int current_state, status_type_t status, const char *args, void *opaque, gpg_error_t *err) { int next_state; @@ -619,8 +654,7 @@ edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, switch (current_state) { case SIGN_START: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = SIGN_COMMAND; } @@ -631,42 +665,36 @@ edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, } break; case SIGN_COMMAND: - if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "keyedit.sign_all.okay")) + if (CMP_STATUS (GET_BOOL) && g_str_equal (args, "keyedit.sign_all.okay")) { next_state = SIGN_UIDS; } - else if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "sign_uid.okay")) + else if (CMP_STATUS (GET_BOOL) && g_str_equal (args, "sign_uid.okay")) { next_state = SIGN_CONFIRM; } - else if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "sign_uid.expire")) + else if (CMP_STATUS (GET_LINE) && g_str_equal (args, "sign_uid.expire")) { next_state = SIGN_SET_EXPIRE; break; } - else if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "sign_uid.class")) + else if (CMP_STATUS (GET_LINE) && g_str_equal (args, "sign_uid.class")) { next_state = SIGN_SET_CHECK_LEVEL; } - else if (status == GPGME_STATUS_ALREADY_SIGNED) + else if (CMP_STATUS (ALREADY_SIGNED)) { /* The key has already been signed with this key */ next_state = SIGN_ERROR; *err = gpg_error (GPG_ERR_CONFLICT); } - else if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + else if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { /* Failed sign: expired key */ next_state = SIGN_ERROR; *err = gpg_error (GPG_ERR_UNUSABLE_PUBKEY); } - else if (status == GPGME_STATUS_GET_LINE - || status == GPGME_STATUS_GET_BOOL) + else if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { next_state = current_state; *err = gpg_error (GPG_ERR_EAGAIN); @@ -678,31 +706,26 @@ edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, } break; case SIGN_UIDS: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "sign_uid.expire")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "sign_uid.expire")) { next_state = SIGN_SET_EXPIRE; break; } - else if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "sign_uid.class")) + else if (CMP_STATUS (GET_LINE) && g_str_equal (args, "sign_uid.class")) { next_state = SIGN_SET_CHECK_LEVEL; } - else if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "sign_uid.okay")) + else if (CMP_STATUS (GET_BOOL) && g_str_equal (args, "sign_uid.okay")) { next_state = SIGN_CONFIRM; } - else if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + else if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { /* Failed sign: expired key */ next_state = SIGN_ERROR; *err = gpg_error (GPG_ERR_UNUSABLE_PUBKEY); } - else if (status == GPGME_STATUS_GET_LINE - || status == GPGME_STATUS_GET_BOOL) + else if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { next_state = current_state; *err = gpg_error (GPG_ERR_EAGAIN); @@ -714,13 +737,11 @@ edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, } break; case SIGN_SET_EXPIRE: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "sign_uid.class")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "sign_uid.class")) { next_state = SIGN_SET_CHECK_LEVEL; } - else if (status == GPGME_STATUS_GET_LINE - || status == GPGME_STATUS_GET_BOOL) + else if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { next_state = current_state; *err = gpg_error (GPG_ERR_EAGAIN); @@ -732,13 +753,11 @@ edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, } break; case SIGN_SET_CHECK_LEVEL: - if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "sign_uid.okay")) + if (CMP_STATUS (GET_BOOL) && g_str_equal (args, "sign_uid.okay")) { next_state = SIGN_CONFIRM; } - else if (status == GPGME_STATUS_GET_LINE - || status == GPGME_STATUS_GET_BOOL) + else if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { next_state = current_state; *err = gpg_error (GPG_ERR_EAGAIN); @@ -750,18 +769,16 @@ edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, } break; case SIGN_CONFIRM: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = SIGN_QUIT; } - else if (status == GPGME_STATUS_GET_LINE - || status == GPGME_STATUS_GET_BOOL) + else if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { next_state = current_state; *err = gpg_error (GPG_ERR_EAGAIN); } - else if (status == GPGME_STATUS_ERROR) + else if (CMP_STATUS (ERROR)) { next_state = SIGN_ERROR; *err = parse_status_error (args); @@ -773,8 +790,7 @@ edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, } break; case SIGN_QUIT: - if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "keyedit.save.okay")) + if (CMP_STATUS (GET_BOOL) && g_str_equal (args, "keyedit.save.okay")) { next_state = SIGN_SAVE; } @@ -785,8 +801,7 @@ edit_sign_fnc_transit (int current_state, gpgme_status_code_t status, } break; case SIGN_ERROR: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { /* Go to quit operation state */ next_state = SIGN_QUIT; @@ -839,7 +854,7 @@ edit_passwd_fnc_action (int state, void *opaque, char **result) /* Change passphrase: transit. */ static int -edit_passwd_fnc_transit (int current_state, gpgme_status_code_t status, +edit_passwd_fnc_transit (int current_state, status_type_t status, const char *args, void *opaque, gpg_error_t *err) { int next_state; @@ -847,8 +862,7 @@ edit_passwd_fnc_transit (int current_state, gpgme_status_code_t status, switch (current_state) { case PASSWD_START: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = PASSWD_COMMAND; } @@ -860,12 +874,11 @@ edit_passwd_fnc_transit (int current_state, gpgme_status_code_t status, break; case PASSWD_COMMAND: case PASSWD_ENTERNEW: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { next_state = PASSWD_QUIT; } - else if (status == GPGME_STATUS_NEED_PASSPHRASE_SYM) + else if (CMP_STATUS (NEED_PASSPHRASE_SYM)) { next_state = PASSWD_ENTERNEW; } @@ -876,8 +889,7 @@ edit_passwd_fnc_transit (int current_state, gpgme_status_code_t status, } break; case PASSWD_QUIT: - if (status == GPGME_STATUS_GET_BOOL && - g_str_equal (args, "keyedit.save.okay")) + if (CMP_STATUS (GET_BOOL) && g_str_equal (args, "keyedit.save.okay")) { next_state = PASSWD_SAVE; } @@ -888,8 +900,7 @@ edit_passwd_fnc_transit (int current_state, gpgme_status_code_t status, } break; case PASSWD_ERROR: - if (status == GPGME_STATUS_GET_LINE && - g_str_equal (args, "keyedit.prompt")) + if (CMP_STATUS (GET_LINE) && g_str_equal (args, "keyedit.prompt")) { /* Go to quit operation state */ next_state = PASSWD_QUIT; @@ -963,7 +974,11 @@ gpa_gpgme_edit_trust_start (GpaContext *ctx, gpgme_key_t key, return err; } parms = gpa_gpgme_edit_trust_parms_new (ctx, trust_strings[ownertrust], out); +#if USE_GPGME_INTERACT + err = gpgme_op_interact_start (ctx->ctx, key, 0, edit_fnc, parms, out); +#else err = gpgme_op_edit_start (ctx->ctx, key, edit_fnc, parms, out); +#endif return err; } @@ -1035,7 +1050,11 @@ gpa_gpgme_edit_expire_start (GpaContext *ctx, gpgme_key_t key, GDate *date) } parms = gpa_gpgme_edit_expire_parms_new (ctx, date, out); +#if USE_GPGME_INTERACT + err = gpgme_op_interact_start (ctx->ctx, key, 0, edit_fnc, parms, out); +#else err = gpgme_op_edit_start (ctx->ctx, key, edit_fnc, parms, out); +#endif return err; } @@ -1103,8 +1122,11 @@ gpa_gpgme_edit_sign_start (GpaContext *ctx, gpgme_key_t key, return err; } parms = gpa_gpgme_edit_sign_parms_new (ctx, "0", local, out); +#if USE_GPGME_INTERACT + err = gpgme_op_interact_start (ctx->ctx, key, 0, edit_fnc, parms, out); +#else err = gpgme_op_edit_start (ctx->ctx, key, edit_fnc, parms, out); - +#endif return err; } @@ -1210,8 +1232,11 @@ gpa_gpgme_edit_passwd_start (GpaContext *ctx, gpgme_key_t key) if (!cms_hack) gpgme_set_passphrase_cb (ctx->ctx, passwd_passphrase_cb, parms); +#if USE_GPGME_INTERACT + err = gpgme_op_interact_start (ctx->ctx, key, 0, edit_fnc, parms, out); +#else err = gpgme_op_edit_start (ctx->ctx, key, edit_fnc, parms, out); - +#endif return err; } @@ -1314,7 +1339,7 @@ card_edit_genkey_fnc_action (int state, void *opaque, char **result) static int -card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, +card_edit_genkey_fnc_transit (int current_state, status_type_t status, const char *args, void *opaque, gpg_error_t *err) { struct genkey_parms_s *genkey_parms = opaque; @@ -1326,23 +1351,21 @@ card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, switch (current_state) { case CARD_START: - if (status == GPGME_STATUS_GET_LINE - && !strcmp (args, "cardedit.prompt")) + if (CMP_STATUS (GET_LINE) && !strcmp (args, "cardedit.prompt")) next_state = CARD_COMMAND; else goto bad_state; break; case CARD_COMMAND: - if (status == GPGME_STATUS_GET_LINE - && !strcmp (args, "cardedit.prompt")) + if (CMP_STATUS (GET_LINE) && !strcmp (args, "cardedit.prompt")) next_state = CARD_ADMIN_COMMAND; else goto bad_state; break; case CARD_ADMIN_COMMAND: - if (status == GPGME_STATUS_GET_LINE || status == GPGME_STATUS_GET_BOOL) + if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { if (!strcmp (args, "cardedit.genkeys.backup_enc")) next_state = CARD_GENERATE_BACKUP; @@ -1359,7 +1382,7 @@ card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, break; case CARD_GENERATE_BACKUP: - if (status == GPGME_STATUS_GET_LINE || status == GPGME_STATUS_GET_BOOL) + if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { if (!strcmp (args, "cardedit.genkeys.replace_keys")) next_state = CARD_GENERATE_REPLACE_KEYS; @@ -1378,7 +1401,7 @@ card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, break; case CARD_GENERATE_REPLACE_KEYS: - if (status == GPGME_STATUS_GET_LINE || status == GPGME_STATUS_GET_BOOL) + if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { if (!strcmp (args, "keygen.valid")) next_state = CARD_GENERATE_VALIDITY; @@ -1395,7 +1418,7 @@ card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, break; case CARD_GENERATE_VALIDITY: - if (status == GPGME_STATUS_GET_LINE || status == GPGME_STATUS_GET_BOOL) + if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { if (!strcmp (args, "keygen.name")) next_state = CARD_GENERATE_NAME; @@ -1412,7 +1435,7 @@ card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, break; case CARD_GENERATE_NAME: - if (status == GPGME_STATUS_GET_LINE || status == GPGME_STATUS_GET_BOOL) + if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { if (!strcmp (args, "keygen.email")) next_state = CARD_GENERATE_EMAIL; @@ -1430,7 +1453,7 @@ card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, break; case CARD_GENERATE_EMAIL: - if (status == GPGME_STATUS_GET_LINE || status == GPGME_STATUS_GET_BOOL) + if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { if (!strcmp (args, "keygen.comment")) next_state = CARD_GENERATE_COMMENT; @@ -1448,7 +1471,7 @@ card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, break; case CARD_GENERATE_COMMENT: - if (status == GPGME_STATUS_KEY_CREATED) + if (CMP_STATUS (KEY_CREATED)) next_state = CARD_GENERATE_DONE; else if (!strcmp (args, "keygen.comment")) goto unexpected_prompt; @@ -1457,7 +1480,7 @@ card_edit_genkey_fnc_transit (int current_state, gpgme_status_code_t status, break; case CARD_GENERATE_DONE: - if (status == GPGME_STATUS_GET_LINE || status == GPGME_STATUS_GET_BOOL) + if (CMP_STATUS (GET_LINE) || CMP_STATUS (GET_BOOL)) { if (!strcmp (args, "cardedit.prompt")) next_state = CARD_QUIT; @@ -1570,7 +1593,11 @@ gpa_gpgme_card_edit_genkey_start (GpaContext *ctx, edit_parms = card_edit_genkey_parms_new (ctx, genkey_parms, out); +#if USE_GPGME_INTERACT + err = gpgme_op_interact_start (ctx->ctx, NULL, GPGME_INTERACT_CARD, + edit_fnc, edit_parms, out); +#else err = gpgme_op_card_edit_start (ctx->ctx, NULL, edit_fnc, edit_parms, out); - +#endif return err; } ----------------------------------------------------------------------- Summary of changes: src/gpgmeedit.c | 243 +++++++++++++++++++++++++++++++------------------------- 1 file changed, 135 insertions(+), 108 deletions(-) hooks/post-receive -- The GNU Privacy Assistant http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 13 09:21:55 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 13 Sep 2017 09:21:55 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.0-10-g006ca12 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via 006ca124ed95845d43af8c14d7ab2bc085b47b4c (commit) from a821b4f5567d02c3329c2b94a73dcbe12e6699a2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 006ca124ed95845d43af8c14d7ab2bc085b47b4c Author: Werner Koch Date: Wed Sep 13 09:18:15 2017 +0200 gpgv: Initialize compliance checker. * g10/gpgv.c (main): Call gnupg_initialize_compliance. -- The compliance checker needs to be initialize so that it won't let spit out a "not suitable" message. We use the module name of gpg. Because there is no option to change the compliance mode in gpgv we will always be in the default (CO_GNUPG) mode. It also does not make much sense to have it here because gpgv expects a "curated" keyring. GnuPG-bug-id: 3404 Signed-off-by: Werner Koch diff --git a/g10/gpgv.c b/g10/gpgv.c index fb274b3..c43067d 100644 --- a/g10/gpgv.c +++ b/g10/gpgv.c @@ -202,6 +202,7 @@ main( int argc, char **argv ) dotlock_disable (); gcry_control (GCRYCTL_INITIALIZATION_FINISHED, 0); additional_weak_digest("MD5"); + gnupg_initialize_compliance (GNUPG_MODULE_NAME_GPG); pargs.argc = &argc; pargs.argv = &argv; ----------------------------------------------------------------------- Summary of changes: g10/gpgv.c | 1 + 1 file changed, 1 insertion(+) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 13 10:24:13 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 13 Sep 2017 10:24:13 +0200 Subject: [git] gnupg-doc - branch, master, updated. cb36d1ae20c53fbfba796474898574cece5fc18c Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via cb36d1ae20c53fbfba796474898574cece5fc18c (commit) from f5fbb657f1c40614c10d74c6c28a2eee90b91a09 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit cb36d1ae20c53fbfba796474898574cece5fc18c Author: Werner Koch Date: Wed Sep 13 10:20:07 2017 +0200 blog: Fix URL in the latest posting. Reported-by: Andreas Bittner diff --git a/misc/blog.gnupg.org/20170803-web-key-in-enigmail.org b/misc/blog.gnupg.org/20170803-web-key-in-enigmail.org index f32c0e6..bb5c5ac 100644 --- a/misc/blog.gnupg.org/20170803-web-key-in-enigmail.org +++ b/misc/blog.gnupg.org/20170803-web-key-in-enigmail.org @@ -12,7 +12,7 @@ that we need to evaluate whether we can trust a new public key for each new communication partner. Until recently, there wasn't an automatic way to securely get the public key of someone you never communicated with. -The [[https://tools.ietf.org/id/draft-koch-openpgp-webkey-service-03.html][Web Key Service]] and the ~--auto-key-retrieve~ & +The [[https://tools.ietf.org/html/draft-koch-openpgp-webkey-service-04][Web Key Service]] and the ~--auto-key-retrieve~ & ~--auto-key-locate~ enhancements available in GnuPG 2.1.16 and beyond. *** Web Key Service @@ -92,5 +92,11 @@ like that: ~gpg: automatically retrieved '' via WKD~ + +** Update 2017-09-13 + + Fixed URL auf the Web Key Service draft and updated to the current + -04 version. + [fn:1] As the time of writing only [[https://posteo.de/en][Posteo]] supports WKS. ----------------------------------------------------------------------- Summary of changes: misc/blog.gnupg.org/20170803-web-key-in-enigmail.org | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 14 16:43:47 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Thu, 14 Sep 2017 16:43:47 +0200 Subject: [git] GpgOL - branch, master, updated. gpgol-2.0.0-2-g403834e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG extension for MS Outlook". The branch, master has been updated via 403834e86f549b33bd9acddfdfdccc9d7af9817f (commit) via fdb6ba59d00ba0730f75870fd197d8d562bb88b8 (commit) from 4d3ab575495c2ee39b2bfcf4be89120e42af76b4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 403834e86f549b33bd9acddfdfdccc9d7af9817f Author: Andre Heinecke Date: Thu Sep 14 16:41:35 2017 +0200 Fix regression for multipart/signed mails * src/mapihelp.cpp (mapi_change_message_class): Call change_message_class_ipm_note_smime_multipartsigned even if S/MIME is disabled. -- This function actually checks if a message with the class IPM.Note.SMIME.MultipartSigned is actually a PGP / MIME mail so it needs to be called even if S/MIME is disabled. This fixes multipart signed mail handling. diff --git a/src/mapihelp.cpp b/src/mapihelp.cpp index 02a6556..1c3a5f6 100644 --- a/src/mapihelp.cpp +++ b/src/mapihelp.cpp @@ -1296,8 +1296,7 @@ mapi_change_message_class (LPMESSAGE message, int sync_override) newvalue = (char*)xmalloc (strlen (s) + 1); strcpy (stpcpy (newvalue, "IPM.Note.GpgOL"), s+14); } - else if (opt.enable_smime && - !strcmp (s, "IPM.Note.SMIME.MultipartSigned")) + else if (!strcmp (s, "IPM.Note.SMIME.MultipartSigned")) { /* This is an S/MIME message class but smime support is not enabled. We need to check whether this is actually a commit fdb6ba59d00ba0730f75870fd197d8d562bb88b8 Author: Andre Heinecke Date: Tue Sep 12 13:40:36 2017 +0200 Post release updates -- diff --git a/NEWS b/NEWS index 8149d69..2ec539f 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,7 @@ +Noteworthy changes for version 2.0.1 (unreleased) +================================================= + + Noteworthy changes for version 2.0.0 (2017-09-12) ================================================= diff --git a/configure.ac b/configure.ac index 418fb62..b186624 100644 --- a/configure.ac +++ b/configure.ac @@ -17,7 +17,7 @@ min_automake_version="1.14" # (git tag -s gpgol-k.n.m) and run "./autogen.sh --force". Please # bump the version number immediately *after* the release and do # another commit and push so that the git magic is able to work. -m4_define([mym4_version], [2.0.0]) +m4_define([mym4_version], [2.0.1]) # Below is m4 magic to extract and compute the git revision number, # the decimalized short revision number, a beta version string and a ----------------------------------------------------------------------- Summary of changes: NEWS | 4 ++++ configure.ac | 2 +- src/mapihelp.cpp | 3 +-- 3 files changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- GnuPG extension for MS Outlook http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 14 16:50:56 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Thu, 14 Sep 2017 16:50:56 +0200 Subject: [git] GpgOL - branch, master, updated. gpgol-2.0.1-1-g0048068 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG extension for MS Outlook". The branch, master has been updated via 00480682f46fe7355dfd3e993ad2ecdb46472c8b (commit) from 403834e86f549b33bd9acddfdfdccc9d7af9817f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 00480682f46fe7355dfd3e993ad2ecdb46472c8b Author: Andre Heinecke Date: Thu Sep 14 16:50:42 2017 +0200 Post release updates -- diff --git a/NEWS b/NEWS index 2ec539f..dc88f92 100644 --- a/NEWS +++ b/NEWS @@ -1,7 +1,14 @@ -Noteworthy changes for version 2.0.1 (unreleased) +Noteworthy changes for version 2.0.2 (unreleased) ================================================= +Noteworthy changes for version 2.0.1 (2017-09-12) +================================================= + + * Support for some kinds of PGP Multipart / Signed + mails has been fixed if S/MIME is disabled. + + Noteworthy changes for version 2.0.0 (2017-09-12) ================================================= diff --git a/configure.ac b/configure.ac index b186624..8dad2ea 100644 --- a/configure.ac +++ b/configure.ac @@ -17,7 +17,7 @@ min_automake_version="1.14" # (git tag -s gpgol-k.n.m) and run "./autogen.sh --force". Please # bump the version number immediately *after* the release and do # another commit and push so that the git magic is able to work. -m4_define([mym4_version], [2.0.1]) +m4_define([mym4_version], [2.0.2]) # Below is m4 magic to extract and compute the git revision number, # the decimalized short revision number, a beta version string and a ----------------------------------------------------------------------- Summary of changes: NEWS | 9 ++++++++- configure.ac | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) hooks/post-receive -- GnuPG extension for MS Outlook http://git.gnupg.org From cvs at cvs.gnupg.org Mon Sep 18 15:45:39 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 18 Sep 2017 15:45:39 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.0-14-g50c8b6c Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via 50c8b6c88f5d9f4b6c4e9c03aee31fe29afa94b8 (commit) via 7f7f5d06fa5aa3a3c5ab8d2e59ee76207bfdeaa0 (commit) via a0035986a8615df056182bb9af775b8b7b22003d (commit) via 4e0696de897cac6a34d55a69d8889faf26f1a923 (commit) from 006ca124ed95845d43af8c14d7ab2bc085b47b4c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 50c8b6c88f5d9f4b6c4e9c03aee31fe29afa94b8 Author: Werner Koch Date: Mon Sep 18 15:37:21 2017 +0200 wks: Create a new user id if provider wants mailbox-only. * tools/gpg-wks-client.c (get_key): Add arg 'exact'. (add_user_id): New. (command_send): Create new user id. Signed-off-by: Werner Koch diff --git a/doc/wks.texi b/doc/wks.texi index f9b1a0c..029dbf0 100644 --- a/doc/wks.texi +++ b/doc/wks.texi @@ -78,7 +78,9 @@ the command is a properly formatted mail with all standard headers. This mail can be fed to @command{sendmail(8)} or any other tool to actually send that mail. If @command{sendmail(8)} is installed the option @option{--send} can be used to directly send the created -request. +request. If the provider request a 'mailbox-only' user id and no such +user id is found, @command{gpg-wks-client} will try an additional user +id. The @option{--receive} and @option{--read} commands are used to process confirmation mails as send from the service provider. The diff --git a/tools/gpg-wks-client.c b/tools/gpg-wks-client.c index 37b7560..73a8a1f 100644 --- a/tools/gpg-wks-client.c +++ b/tools/gpg-wks-client.c @@ -348,10 +348,13 @@ get_key_status_cb (void *opaque, const char *keyword, char *args) /* Get a key by fingerprint from gpg's keyring and make sure that the - * mail address ADDRSPEC is included in the key. The key is returned - * as a new memory stream at R_KEY. */ + * mail address ADDRSPEC is included in the key. If EXACT is set the + * returned user id must match Addrspec exactly and not just in the + * addr-spec (mailbox) part. The key is returned as a new memory + * stream at R_KEY. */ static gpg_error_t -get_key (estream_t *r_key, const char *fingerprint, const char *addrspec) +get_key (estream_t *r_key, const char *fingerprint, const char *addrspec, + int exact) { gpg_error_t err; ccparray_t ccp; @@ -376,7 +379,7 @@ get_key (estream_t *r_key, const char *fingerprint, const char *addrspec) es_fputs ("Content-Type: application/pgp-keys\n" "\n", key); - filterexp = es_bsprintf ("keep-uid=mbox = %s", addrspec); + filterexp = es_bsprintf ("keep-uid=%s=%s", exact? "uid":"mbox", addrspec); if (!filterexp) { err = gpg_error_from_syserror (); @@ -435,6 +438,49 @@ get_key (estream_t *r_key, const char *fingerprint, const char *addrspec) } +/* Add the user id UID to the key identified by FINGERPRINT. */ +static gpg_error_t +add_user_id (const char *fingerprint, const char *uid) +{ + gpg_error_t err; + ccparray_t ccp; + const char **argv = NULL; + + ccparray_init (&ccp, 0); + + ccparray_put (&ccp, "--no-options"); + if (!opt.verbose) + ccparray_put (&ccp, "--quiet"); + else if (opt.verbose > 1) + ccparray_put (&ccp, "--verbose"); + ccparray_put (&ccp, "--batch"); + ccparray_put (&ccp, "--always-trust"); + ccparray_put (&ccp, "--quick-add-uid"); + ccparray_put (&ccp, fingerprint); + ccparray_put (&ccp, uid); + + ccparray_put (&ccp, NULL); + argv = ccparray_get (&ccp, NULL); + if (!argv) + { + err = gpg_error_from_syserror (); + goto leave; + } + err = gnupg_exec_tool_stream (opt.gpg_program, argv, NULL, + NULL, NULL, + NULL, NULL); + if (err) + { + log_error ("adding user id failed: %s\n", gpg_strerror (err)); + goto leave; + } + + leave: + xfree (argv); + return err; +} + + struct decrypt_stream_parm_s { @@ -721,7 +767,7 @@ command_send (const char *fingerprint, const char *userid) err = gpg_error (GPG_ERR_INV_USER_ID); goto leave; } - err = get_key (&key, fingerprint, addrspec); + err = get_key (&key, fingerprint, addrspec, 0); if (err) goto leave; @@ -786,6 +832,9 @@ command_send (const char *fingerprint, const char *userid) { if (!uid->mbox) continue; /* Should not happen anyway. */ + if (policy.mailbox_only + && ascii_strcasecmp (uid->uid, uid->mbox)) + continue; /* UID has more than just the mailbox. */ if (uid->created > thistime) { thistime = uid->created; @@ -793,7 +842,7 @@ command_send (const char *fingerprint, const char *userid) } } if (!thisuid) - thisuid = uid; /* This is the case for a missing timestamp. */ + thisuid = uidlist; /* This is the case for a missing timestamp. */ if (opt.verbose) log_info ("submitting key with user id '%s'\n", thisuid->uid); @@ -816,10 +865,22 @@ command_send (const char *fingerprint, const char *userid) } if (policy.mailbox_only - && ascii_strcasecmp (userid, addrspec)) + && (!thisuid->mbox || ascii_strcasecmp (thisuid->uid, thisuid->mbox))) { log_info ("Warning: policy requires 'mailbox-only'" - " - creating new user id'\n"); + " - adding user id '%s'\n", addrspec); + err = add_user_id (fingerprint, addrspec); + if (err) + goto leave; + + /* Need to get the key again. This time we request filtering + * for the full user id, so that we do not need check and filter + * the key again. */ + es_fclose (key); + key = NULL; + err = get_key (&key, fingerprint, addrspec, 1); + if (err) + goto leave; } /* Hack to support posteo but let them disable this by setting the commit 7f7f5d06fa5aa3a3c5ab8d2e59ee76207bfdeaa0 Author: Werner Koch Date: Mon Sep 18 12:52:20 2017 +0200 wks: Send only the newest UID to the server. * tools/wks-util.c (list_key_status_cb): Rename to key_status_cb. (wks_filter_uid): New. (wks_list_key): Allow FPR to be NULL. Return an error if no fingerprint was found. * tools/gpg-wks-server.c (process_new_key) (check_and_publish): Remove now useless extra check for FPR. * tools/gpg-wks-client.c (command_check): Ditto. (command_send): Filter out the newest uid. -- This fixes the case of having several userids with all the the same mailbox. Now we use the latest user id created. This patch is also a prerequisite to automatically create a new user id for providers with the mailbox-only policy. Signed-off-by: Werner Koch diff --git a/tools/gpg-wks-client.c b/tools/gpg-wks-client.c index 18a0edd..37b7560 100644 --- a/tools/gpg-wks-client.c +++ b/tools/gpg-wks-client.c @@ -644,10 +644,9 @@ command_check (char *userid) /* Look closer at the key. */ err = wks_list_key (key, &fpr, &mboxes); - if (err || !fpr) + if (err) { - log_error ("error parsing key: %s\n", - err? gpg_strerror (err) : "no fingerprint found"); + log_error ("error parsing key: %s\n", gpg_strerror (err)); err = gpg_error (GPG_ERR_NO_PUBKEY); goto leave; } @@ -700,6 +699,9 @@ command_send (const char *fingerprint, const char *userid) int no_encrypt = 0; int posteo_hack = 0; const char *domain; + uidinfo_list_t uidlist = NULL; + uidinfo_list_t uid, thisuid; + time_t thistime; memset (&policy, 0, sizeof policy); @@ -769,6 +771,57 @@ command_send (const char *fingerprint, const char *userid) if (policy.auth_submit) log_info ("no confirmation required for '%s'\n", addrspec); + /* In case the key has several uids with the same addr-spec we will + * use the newest one. */ + err = wks_list_key (key, NULL, &uidlist); + if (err) + { + log_error ("error parsing key: %s\n",gpg_strerror (err)); + err = gpg_error (GPG_ERR_NO_PUBKEY); + goto leave; + } + thistime = 0; + thisuid = NULL; + for (uid = uidlist; uid; uid = uid->next) + { + if (!uid->mbox) + continue; /* Should not happen anyway. */ + if (uid->created > thistime) + { + thistime = uid->created; + thisuid = uid; + } + } + if (!thisuid) + thisuid = uid; /* This is the case for a missing timestamp. */ + if (opt.verbose) + log_info ("submitting key with user id '%s'\n", thisuid->uid); + + /* If we have more than one user id we need to filter the key to + * include only THISUID. */ + if (uidlist->next) + { + estream_t newkey; + + es_rewind (key); + err = wks_filter_uid (&newkey, key, thisuid->uid); + if (err) + { + log_error ("error filtering key: %s\n", gpg_strerror (err)); + err = gpg_error (GPG_ERR_NO_PUBKEY); + goto leave; + } + es_fclose (key); + key = newkey; + } + + if (policy.mailbox_only + && ascii_strcasecmp (userid, addrspec)) + { + log_info ("Warning: policy requires 'mailbox-only'" + " - creating new user id'\n"); + } + /* Hack to support posteo but let them disable this by setting the * new policy-version flag. */ if (policy.protocol_version < 3 @@ -885,6 +938,7 @@ command_send (const char *fingerprint, const char *userid) leave: mime_maker_release (mime); xfree (submission_to); + free_uidinfo_list (uidlist); es_fclose (keyenc); es_fclose (key); xfree (addrspec); diff --git a/tools/gpg-wks-server.c b/tools/gpg-wks-server.c index f7aadba..7e3f050 100644 --- a/tools/gpg-wks-server.c +++ b/tools/gpg-wks-server.c @@ -1105,12 +1105,7 @@ process_new_key (server_ctx_t ctx, estream_t key) err = wks_list_key (key, &ctx->fpr, &ctx->mboxes); if (err) goto leave; - if (!ctx->fpr) - { - log_error ("error parsing key (no fingerprint)\n"); - err = gpg_error (GPG_ERR_NO_PUBKEY); - goto leave; - } + log_assert (ctx->fpr); log_info ("fingerprint: %s\n", ctx->fpr); for (sl = ctx->mboxes; sl; sl = sl->next) { @@ -1358,12 +1353,7 @@ check_and_publish (server_ctx_t ctx, const char *address, const char *nonce) err = wks_list_key (key, &ctx->fpr, &ctx->mboxes); if (err) goto leave; - if (!ctx->fpr) - { - log_error ("error parsing key (no fingerprint)\n"); - err = gpg_error (GPG_ERR_NO_PUBKEY); - goto leave; - } + log_assert (ctx->fpr); log_info ("fingerprint: %s\n", ctx->fpr); for (sl = ctx->mboxes; sl; sl = sl->next) if (sl->mbox) diff --git a/tools/gpg-wks.h b/tools/gpg-wks.h index cb89fd5..ece7add 100644 --- a/tools/gpg-wks.h +++ b/tools/gpg-wks.h @@ -87,6 +87,8 @@ void wks_write_status (int no, const char *format, ...) GPGRT_ATTR_PRINTF(2,3); void free_uidinfo_list (uidinfo_list_t list); gpg_error_t wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes); +gpg_error_t wks_filter_uid (estream_t *r_newkey, estream_t key, + const char *uid); gpg_error_t wks_send_mime (mime_maker_t mime); gpg_error_t wks_parse_policy (policy_flags_t flags, estream_t stream, int ignore_unknown); diff --git a/tools/wks-util.c b/tools/wks-util.c index 8fc0a2e..889ca36 100644 --- a/tools/wks-util.c +++ b/tools/wks-util.c @@ -133,9 +133,9 @@ free_uidinfo_list (uidinfo_list_t list) -/* Helper for wks_list_key. */ +/* Helper for wks_list_key and wks_filter_uid. */ static void -list_key_status_cb (void *opaque, const char *keyword, char *args) +key_status_cb (void *opaque, const char *keyword, char *args) { (void)opaque; @@ -146,7 +146,8 @@ list_key_status_cb (void *opaque, const char *keyword, char *args) /* Run gpg on KEY and store the primary fingerprint at R_FPR and the * list of mailboxes at R_MBOXES. Returns 0 on success; on error NULL - * is stored at R_FPR and R_MBOXES and an error code is returned. */ + * is stored at R_FPR and R_MBOXES and an error code is returned. + * R_FPR may be NULL if the fingerprint is not needed. */ gpg_error_t wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes) { @@ -164,7 +165,8 @@ wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes) char *fpr = NULL; uidinfo_list_t mboxes = NULL; - *r_fpr = NULL; + if (r_fpr) + *r_fpr = NULL; *r_mboxes = NULL; /* Open a memory stream. */ @@ -200,7 +202,7 @@ wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes) } err = gnupg_exec_tool_stream (opt.gpg_program, argv, key, NULL, listing, - list_key_status_cb, NULL); + key_status_cb, NULL); if (err) { log_error ("import failed: %s\n", gpg_strerror (err)); @@ -289,8 +291,17 @@ wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes) goto leave; } - *r_fpr = fpr; - fpr = NULL; + if (!fpr) + { + err = gpg_error (GPG_ERR_NO_PUBKEY); + goto leave; + } + + if (r_fpr) + { + *r_fpr = fpr; + fpr = NULL; + } *r_mboxes = mboxes; mboxes = NULL; @@ -305,6 +316,85 @@ wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes) } +/* Run gpg as a filter on KEY and write the output to a new stream + * stored at R_NEWKEY. The new key will containn only the user id + * UID. Returns 0 on success. Only one key is expected in KEY. */ +gpg_error_t +wks_filter_uid (estream_t *r_newkey, estream_t key, const char *uid) +{ + gpg_error_t err; + ccparray_t ccp; + const char **argv = NULL; + estream_t newkey; + char *filterexp = NULL; + + *r_newkey = NULL; + + /* Open a memory stream. */ + newkey = es_fopenmem (0, "w+b"); + if (!newkey) + { + err = gpg_error_from_syserror (); + log_error ("error allocating memory buffer: %s\n", gpg_strerror (err)); + return err; + } + + /* Prefix the key with the MIME content type. */ + es_fputs ("Content-Type: application/pgp-keys\n" + "\n", newkey); + + filterexp = es_bsprintf ("keep-uid=uid=%s", uid); + if (!filterexp) + { + err = gpg_error_from_syserror (); + log_error ("error allocating memory buffer: %s\n", gpg_strerror (err)); + goto leave; + } + + ccparray_init (&ccp, 0); + + ccparray_put (&ccp, "--no-options"); + if (!opt.verbose) + ccparray_put (&ccp, "--quiet"); + else if (opt.verbose > 1) + ccparray_put (&ccp, "--verbose"); + ccparray_put (&ccp, "--batch"); + ccparray_put (&ccp, "--status-fd=2"); + ccparray_put (&ccp, "--always-trust"); + ccparray_put (&ccp, "--armor"); + ccparray_put (&ccp, "--import-options=import-export"); + ccparray_put (&ccp, "--import-filter"); + ccparray_put (&ccp, filterexp); + ccparray_put (&ccp, "--import"); + + ccparray_put (&ccp, NULL); + argv = ccparray_get (&ccp, NULL); + if (!argv) + { + err = gpg_error_from_syserror (); + goto leave; + } + err = gnupg_exec_tool_stream (opt.gpg_program, argv, key, + NULL, newkey, + key_status_cb, NULL); + if (err) + { + log_error ("import/export failed: %s\n", gpg_strerror (err)); + goto leave; + } + + es_rewind (newkey); + *r_newkey = newkey; + newkey = NULL; + + leave: + xfree (filterexp); + xfree (argv); + es_fclose (newkey); + return err; +} + + /* Helper to write mail to the output(s). */ gpg_error_t wks_send_mime (mime_maker_t mime) commit a0035986a8615df056182bb9af775b8b7b22003d Author: Werner Koch Date: Mon Sep 18 11:31:36 2017 +0200 wks: Print the UID creation time with gpg-wks-client --check. * tools/gpg-wks.h (uidinfo_list_s): Add field 'created'. * tools/wks-util.c (append_to_uidinfo_list): Add arf 'created'. (wks_list_key): Pass timestamp to append_to_uidinfo_list. * tools/gpg-wks-client.c (command_check): Print UID creation time. Signed-off-by: Werner Koch diff --git a/tools/gpg-wks-client.c b/tools/gpg-wks-client.c index 6b83de8..18a0edd 100644 --- a/tools/gpg-wks-client.c +++ b/tools/gpg-wks-client.c @@ -662,6 +662,7 @@ command_check (char *userid) if (opt.verbose) { log_info (" user-id: %s\n", sl->uid); + log_info (" created: %s\n", asctimestamp (sl->created)); if (sl->mbox) log_info (" addr-spec: %s\n", sl->mbox); } diff --git a/tools/gpg-wks.h b/tools/gpg-wks.h index 7fc8d9a..cb89fd5 100644 --- a/tools/gpg-wks.h +++ b/tools/gpg-wks.h @@ -73,6 +73,7 @@ typedef struct policy_flags_s *policy_flags_t; struct uidinfo_list_s { struct uidinfo_list_s *next; + time_t created; /* Time the userid was created. */ char *mbox; /* NULL or the malloced mailbox from UID. */ char uid[1]; }; diff --git a/tools/wks-util.c b/tools/wks-util.c index bc076a7..8fc0a2e 100644 --- a/tools/wks-util.c +++ b/tools/wks-util.c @@ -94,7 +94,7 @@ wks_write_status (int no, const char *format, ...) /* Append UID to LIST and return the new item. On success LIST is * updated. On error ERRNO is set and NULL returned. */ static uidinfo_list_t -append_to_uidinfo_list (uidinfo_list_t *list, const char *uid) +append_to_uidinfo_list (uidinfo_list_t *list, const char *uid, time_t created) { uidinfo_list_t r, sl; @@ -103,6 +103,7 @@ append_to_uidinfo_list (uidinfo_list_t *list, const char *uid) return NULL; strcpy (sl->uid, uid); + sl->created = created; sl->mbox = mailbox_from_userid (uid); sl->next = NULL; if (!*list) @@ -273,7 +274,8 @@ wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes) else if (!strcmp (fields[0], "uid") && nfields > 9) { /* Fixme: Unescape fields[9] */ - if (!append_to_uidinfo_list (&mboxes, fields[9])) + if (!append_to_uidinfo_list (&mboxes, fields[9], + parse_timestamp (fields[5], NULL))) { err = gpg_error_from_syserror (); goto leave; commit 4e0696de897cac6a34d55a69d8889faf26f1a923 Author: Werner Koch Date: Mon Sep 18 11:16:07 2017 +0200 wks: Use dedicated type to convey user ids. * tools/gpg-wks.h (uidinfo_list_s, uidinfo_list_t): New. * tools/wks-util.c (append_to_uidinfo_list): New. (free_uidinfo_list): New. (wks_list_key): Change arg r_mboxes to uidinfo_list_t. Use append_to_uidinfo_list. * tools/gpg-wks-server.c (sserver_ctx_s): Replace strlist_t by uidinfo_list_t. (process_new_key): Ditto. (check_and_publish): Ditto. (command_receive_cb): Replace free_strlist by free_uidinfo_list. * tools/gpg-wks-client.c (command_check): Replace strlist_t by uidinfo_list_t. Also print user id in verbose mode. Signed-off-by: Werner Koch diff --git a/tools/gpg-wks-client.c b/tools/gpg-wks-client.c index e703640..6b83de8 100644 --- a/tools/gpg-wks-client.c +++ b/tools/gpg-wks-client.c @@ -119,7 +119,7 @@ const char *fake_submission_addr; static void wrong_args (const char *text) GPGRT_ATTR_NORETURN; static gpg_error_t command_supported (char *userid); static gpg_error_t command_check (char *userid); -static gpg_error_t command_send (const char *fingerprint, char *userid); +static gpg_error_t command_send (const char *fingerprint, const char *userid); static gpg_error_t encrypt_response (estream_t *r_output, estream_t input, const char *addrspec, const char *fingerprint); @@ -597,8 +597,8 @@ command_check (char *userid) char *addrspec = NULL; estream_t key = NULL; char *fpr = NULL; - strlist_t mboxes = NULL; - strlist_t sl; + uidinfo_list_t mboxes = NULL; + uidinfo_list_t sl; int found = 0; addrspec = mailbox_from_userid (userid); @@ -657,10 +657,14 @@ command_check (char *userid) for (sl = mboxes; sl; sl = sl->next) { - if (!strcmp (sl->d, addrspec)) + if (sl->mbox && !strcmp (sl->mbox, addrspec)) found = 1; if (opt.verbose) - log_info (" addr-spec: %s\n", sl->d); + { + log_info (" user-id: %s\n", sl->uid); + if (sl->mbox) + log_info (" addr-spec: %s\n", sl->mbox); + } } if (!found) { @@ -671,7 +675,7 @@ command_check (char *userid) leave: xfree (fpr); - free_strlist (mboxes); + free_uidinfo_list (mboxes); es_fclose (key); xfree (addrspec); return err; @@ -682,7 +686,7 @@ command_check (char *userid) /* Locate the key by fingerprint and userid and send a publication * request. */ static gpg_error_t -command_send (const char *fingerprint, char *userid) +command_send (const char *fingerprint, const char *userid) { gpg_error_t err; KEYDB_SEARCH_DESC desc; @@ -706,6 +710,7 @@ command_send (const char *fingerprint, char *userid) err = gpg_error (GPG_ERR_INV_NAME); goto leave; } + addrspec = mailbox_from_userid (userid); if (!addrspec) { diff --git a/tools/gpg-wks-server.c b/tools/gpg-wks-server.c index 1633a20..f7aadba 100644 --- a/tools/gpg-wks-server.c +++ b/tools/gpg-wks-server.c @@ -127,7 +127,7 @@ static struct debug_flags_s debug_flags [] = struct server_ctx_s { char *fpr; - strlist_t mboxes; /* List of addr-specs taken from the UIDs. */ + uidinfo_list_t mboxes; /* List with addr-specs taken from the UIDs. */ unsigned int draft_version_2:1; /* Client supports the draft 2. */ }; typedef struct server_ctx_s *server_ctx_t; @@ -1092,7 +1092,7 @@ static gpg_error_t process_new_key (server_ctx_t ctx, estream_t key) { gpg_error_t err; - strlist_t sl; + uidinfo_list_t sl; const char *s; char *dname = NULL; char *nonce = NULL; @@ -1101,7 +1101,7 @@ process_new_key (server_ctx_t ctx, estream_t key) /* First figure out the user id from the key. */ xfree (ctx->fpr); - free_strlist (ctx->mboxes); + free_uidinfo_list (ctx->mboxes); err = wks_list_key (key, &ctx->fpr, &ctx->mboxes); if (err) goto leave; @@ -1114,14 +1114,17 @@ process_new_key (server_ctx_t ctx, estream_t key) log_info ("fingerprint: %s\n", ctx->fpr); for (sl = ctx->mboxes; sl; sl = sl->next) { - log_info (" addr-spec: %s\n", sl->d); + if (sl->mbox) + log_info (" addr-spec: %s\n", sl->mbox); } /* Walk over all user ids and send confirmation requests for those * we support. */ for (sl = ctx->mboxes; sl; sl = sl->next) { - s = strchr (sl->d, '@'); + if (!sl->mbox) + continue; + s = strchr (sl->mbox, '@'); log_assert (s && s[1]); xfree (dname); dname = make_filename_try (opt.directory, s+1, NULL); @@ -1133,26 +1136,26 @@ process_new_key (server_ctx_t ctx, estream_t key) if (access (dname, W_OK)) { - log_info ("skipping address '%s': Domain not configured\n", sl->d); + log_info ("skipping address '%s': Domain not configured\n", sl->mbox); continue; } - if (get_policy_flags (&policybuf, sl->d)) + if (get_policy_flags (&policybuf, sl->mbox)) { - log_info ("skipping address '%s': Bad policy flags\n", sl->d); + log_info ("skipping address '%s': Bad policy flags\n", sl->mbox); continue; } if (policybuf.auth_submit) { /* Bypass the confirmation stuff and publish the key as is. */ - log_info ("publishing address '%s'\n", sl->d); + log_info ("publishing address '%s'\n", sl->mbox); /* FIXME: We need to make sure that we do this only for the * address in the mail. */ log_debug ("auth-submit not yet working!\n"); } else { - log_info ("storing address '%s'\n", sl->d); + log_info ("storing address '%s'\n", sl->mbox); xfree (nonce); xfree (fname); @@ -1160,7 +1163,7 @@ process_new_key (server_ctx_t ctx, estream_t key) if (err) goto leave; - err = send_confirmation_request (ctx, sl->d, nonce, fname); + err = send_confirmation_request (ctx, sl->mbox, nonce, fname); if (err) goto leave; } @@ -1313,7 +1316,7 @@ check_and_publish (server_ctx_t ctx, const char *address, const char *nonce) char *hash = NULL; const char *domain; const char *s; - strlist_t sl; + uidinfo_list_t sl; char shaxbuf[32]; /* Used for SHA-1 and SHA-256 */ /* FIXME: There is a bug in name-value.c which adds white space for @@ -1351,7 +1354,7 @@ check_and_publish (server_ctx_t ctx, const char *address, const char *nonce) /* We need to get the fingerprint from the key. */ xfree (ctx->fpr); - free_strlist (ctx->mboxes); + free_uidinfo_list (ctx->mboxes); err = wks_list_key (key, &ctx->fpr, &ctx->mboxes); if (err) goto leave; @@ -1363,13 +1366,14 @@ check_and_publish (server_ctx_t ctx, const char *address, const char *nonce) } log_info ("fingerprint: %s\n", ctx->fpr); for (sl = ctx->mboxes; sl; sl = sl->next) - log_info (" addr-spec: %s\n", sl->d); + if (sl->mbox) + log_info (" addr-spec: %s\n", sl->mbox); /* Check that the key has 'address' as a user id. We use * case-insensitive matching because the client is expected to * return the address verbatim. */ for (sl = ctx->mboxes; sl; sl = sl->next) - if (!strcmp (sl->d, address)) + if (sl->mbox && !strcmp (sl->mbox, address)) break; if (!sl) { @@ -1565,7 +1569,7 @@ command_receive_cb (void *opaque, const char *mediatype, } xfree (ctx.fpr); - free_strlist (ctx.mboxes); + free_uidinfo_list (ctx.mboxes); return err; } diff --git a/tools/gpg-wks.h b/tools/gpg-wks.h index caea98e..7fc8d9a 100644 --- a/tools/gpg-wks.h +++ b/tools/gpg-wks.h @@ -69,11 +69,23 @@ struct policy_flags_s typedef struct policy_flags_s *policy_flags_t; +/* An object to convey user ids of a key. */ +struct uidinfo_list_s +{ + struct uidinfo_list_s *next; + char *mbox; /* NULL or the malloced mailbox from UID. */ + char uid[1]; +}; +typedef struct uidinfo_list_s *uidinfo_list_t; + + /*-- wks-util.c --*/ void wks_set_status_fd (int fd); void wks_write_status (int no, const char *format, ...) GPGRT_ATTR_PRINTF(2,3); -gpg_error_t wks_list_key (estream_t key, char **r_fpr, strlist_t *r_mboxes); +void free_uidinfo_list (uidinfo_list_t list); +gpg_error_t wks_list_key (estream_t key, char **r_fpr, + uidinfo_list_t *r_mboxes); gpg_error_t wks_send_mime (mime_maker_t mime); gpg_error_t wks_parse_policy (policy_flags_t flags, estream_t stream, int ignore_unknown); diff --git a/tools/wks-util.c b/tools/wks-util.c index 45237b2..bc076a7 100644 --- a/tools/wks-util.c +++ b/tools/wks-util.c @@ -90,6 +90,48 @@ wks_write_status (int no, const char *format, ...) + +/* Append UID to LIST and return the new item. On success LIST is + * updated. On error ERRNO is set and NULL returned. */ +static uidinfo_list_t +append_to_uidinfo_list (uidinfo_list_t *list, const char *uid) +{ + uidinfo_list_t r, sl; + + sl = xtrymalloc (sizeof *sl + strlen (uid)); + if (!sl) + return NULL; + + strcpy (sl->uid, uid); + sl->mbox = mailbox_from_userid (uid); + sl->next = NULL; + if (!*list) + *list = sl; + else + { + for (r = *list; r->next; r = r->next ) + ; + r->next = sl; + } + return sl; +} + + +/* Free the list of uid infos at LIST. */ +void +free_uidinfo_list (uidinfo_list_t list) +{ + while (list) + { + uidinfo_list_t tmp = list->next; + xfree (list->mbox); + xfree (list); + list = tmp; + } +} + + + /* Helper for wks_list_key. */ static void list_key_status_cb (void *opaque, const char *keyword, char *args) @@ -105,7 +147,7 @@ list_key_status_cb (void *opaque, const char *keyword, char *args) * list of mailboxes at R_MBOXES. Returns 0 on success; on error NULL * is stored at R_FPR and R_MBOXES and an error code is returned. */ gpg_error_t -wks_list_key (estream_t key, char **r_fpr, strlist_t *r_mboxes) +wks_list_key (estream_t key, char **r_fpr, uidinfo_list_t *r_mboxes) { gpg_error_t err; ccparray_t ccp; @@ -118,9 +160,8 @@ wks_list_key (estream_t key, char **r_fpr, strlist_t *r_mboxes) char **fields = NULL; int nfields; int lnr; - char *mbox = NULL; char *fpr = NULL; - strlist_t mboxes = NULL; + uidinfo_list_t mboxes = NULL; *r_fpr = NULL; *r_mboxes = NULL; @@ -232,9 +273,7 @@ wks_list_key (estream_t key, char **r_fpr, strlist_t *r_mboxes) else if (!strcmp (fields[0], "uid") && nfields > 9) { /* Fixme: Unescape fields[9] */ - xfree (mbox); - mbox = mailbox_from_userid (fields[9]); - if (mbox && !append_to_strlist_try (&mboxes, mbox)) + if (!append_to_uidinfo_list (&mboxes, fields[9])) { err = gpg_error_from_syserror (); goto leave; @@ -255,8 +294,7 @@ wks_list_key (estream_t key, char **r_fpr, strlist_t *r_mboxes) leave: xfree (fpr); - xfree (mboxes); - xfree (mbox); + free_uidinfo_list (mboxes); xfree (fields); es_free (line); xfree (argv); ----------------------------------------------------------------------- Summary of changes: doc/wks.texi | 4 +- tools/gpg-wks-client.c | 151 +++++++++++++++++++++++++++++++++++++++++----- tools/gpg-wks-server.c | 50 +++++++--------- tools/gpg-wks.h | 17 +++++- tools/wks-util.c | 160 ++++++++++++++++++++++++++++++++++++++++++++----- 5 files changed, 322 insertions(+), 60 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Sep 18 22:54:59 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 18 Sep 2017 22:54:59 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.0-16-gdf692a6 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via df692a6167be5486f9a29da003a00292fd895176 (commit) via 9588dd116c0118f31fc33dc09a1d08125ab8cdc9 (commit) from 50c8b6c88f5d9f4b6c4e9c03aee31fe29afa94b8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit df692a6167be5486f9a29da003a00292fd895176 Author: Werner Koch Date: Mon Sep 18 22:49:05 2017 +0200 dirmngr: Use system certs if --hkp-cacert is not used. * dirmngr/certcache.c (any_cert_of_class): New var. (put_cert): Set it. (cert_cache_deinit): Clear it. (cert_cache_any_in_class): New func. * dirmngr/http-ntbtls.c (gnupg_http_tls_verify_cb): Add hack to override empty list of HKP certs. -- This patch carries the changes for GNUTLS from commit 7c1613d41566f7d8db116790087de323621205fe over to NTBTLS. NTBTLS works quite different and thus we need to do it this way. Signed-off-by: Werner Koch diff --git a/dirmngr/certcache.c b/dirmngr/certcache.c index b4e5381..56629fd 100644 --- a/dirmngr/certcache.c +++ b/dirmngr/certcache.c @@ -94,6 +94,10 @@ static int initialization_done; /* Total number of non-permanent certificates. */ static unsigned int total_nonperm_certificates; +/* For each cert class the corresponding bit is set if at least one + * certificate of that class is loaded permanetly. */ +static unsigned int any_cert_of_class; + #ifdef HAVE_W32_SYSTEM /* We load some functions dynamically. Provide typedefs for tehse @@ -343,7 +347,9 @@ put_cert (ksba_cert_t cert, int permanent, unsigned int trustclass, ci->permanent = !!permanent; ci->trustclasses = trustclass; - if (!permanent) + if (permanent) + any_cert_of_class |= trustclass; + else total_nonperm_certificates++; return 0; @@ -758,6 +764,7 @@ cert_cache_deinit (int full) } total_nonperm_certificates = 0; + any_cert_of_class = 0; initialization_done = 0; release_cache_lock (); } @@ -814,6 +821,15 @@ cert_cache_print_stats (void) } +/* Return true if any cert of a class in MASK is permanently + * loaded. */ +int +cert_cache_any_in_class (unsigned int mask) +{ + return !!(any_cert_of_class & mask); +} + + /* Put CERT into the certificate cache. */ gpg_error_t cache_cert (ksba_cert_t cert) diff --git a/dirmngr/certcache.h b/dirmngr/certcache.h index 92529bf..8d64583 100644 --- a/dirmngr/certcache.h +++ b/dirmngr/certcache.h @@ -39,6 +39,9 @@ void cert_cache_deinit (int full); /* Print some statistics to the log file. */ void cert_cache_print_stats (void); +/* Return true if any cert of a class in MASK is permanently loaded. */ +int cert_cache_any_in_class (unsigned int mask); + /* Compute the fingerprint of the certificate CERT and put it into the 20 bytes large buffer DIGEST. Return address of this buffer. */ unsigned char *cert_compute_fpr (ksba_cert_t cert, unsigned char *digest); diff --git a/dirmngr/http-ntbtls.c b/dirmngr/http-ntbtls.c index 250db55..ea66a4d 100644 --- a/dirmngr/http-ntbtls.c +++ b/dirmngr/http-ntbtls.c @@ -91,6 +91,12 @@ gnupg_http_tls_verify_cb (void *opaque, validate_flags |= VALIDATE_FLAG_TRUST_HKP; if ((http_flags & HTTP_FLAG_TRUST_SYS)) validate_flags |= VALIDATE_FLAG_TRUST_SYSTEM; + + /* If HKP trust is requested and there are no HKP certificates + * configured, also try thye standard system certificates. */ + if ((validate_flags & VALIDATE_FLAG_TRUST_HKP) + && !cert_cache_any_in_class (CERTTRUST_CLASS_HKP)) + validate_flags |= VALIDATE_FLAG_TRUST_SYSTEM; } if ((http_flags & HTTP_FLAG_NO_CRL)) commit 9588dd116c0118f31fc33dc09a1d08125ab8cdc9 Author: Dimitris Maroulidis Date: Mon Sep 18 16:23:43 2017 +0200 po: Minor Grammar update of the Greek translation -- GnuPG-bug-id: 3409 Signed-off-by: Werner Koch diff --git a/po/el.po b/po/el.po index dd690a4..a57c8b8 100644 --- a/po/el.po +++ b/po/el.po @@ -1,20 +1,21 @@ # Greek Translation of GnuPG. # Copyright (C) 2002 Free Software Foundation, Inc. # Dokianakis Theofanis , 2002. -# !-- psbl.surriel.com rejected (2011-01-11) +# !-- psbl.surriel.com rejected (2011-01-11) # Designated-Translator: none -# +# Dimitris Maroulidis , 2017. msgid "" msgstr "" "Project-Id-Version: gnupg-1.1.92\n" "Report-Msgid-Bugs-To: translations at gnupg.org\n" -"PO-Revision-Date: 2003-06-27 12:00+0200\n" -"Last-Translator: Dokianakis Theofanis \n" -"Language-Team: Greek \n" +"PO-Revision-Date: 2017-09-14 21:14+0300\n" +"Last-Translator: Dimitris Maroulidis \n" +"Language-Team: team at gnome.gr\n" "Language: el\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" #, fuzzy, c-format msgid "failed to acquire the pinentry lock: %s\n" @@ -4423,7 +4424,7 @@ msgid "Keyring" msgstr "??????????" msgid "Primary key fingerprint:" -msgstr "????????? ???????? ????????:" +msgstr "????????? ??????????? ????????:" msgid " Subkey fingerprint:" msgstr " ????????? ???????????:" @@ -4431,7 +4432,7 @@ msgstr " ????????? ???????????:" #. TRANSLATORS: this should fit into 24 bytes so that the #. * fingerprint data is properly aligned with the user ID msgid " Primary key fingerprint:" -msgstr " ????????? ???????? ????????:" +msgstr " ????????? ????. ????????:" msgid " Subkey fingerprint:" msgstr " ????????? ???????????:" ----------------------------------------------------------------------- Summary of changes: dirmngr/certcache.c | 18 +++++++++++++++++- dirmngr/certcache.h | 3 +++ dirmngr/http-ntbtls.c | 6 ++++++ po/el.po | 15 ++++++++------- 4 files changed, 34 insertions(+), 8 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon Sep 18 22:57:25 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Mon, 18 Sep 2017 22:57:25 +0200 Subject: [git] NTBTLS - branch, master, updated. ntbtls-0.1.1-4-g387f2fd Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Not Too Bad TLS". The branch, master has been updated via 387f2fda683bfa4e01c7ef5165c1f675ae2ff248 (commit) via 55071ab71133333ebabbf40ca872829dc9089bf7 (commit) from 455fbea598c528c17f6a961dbe52414fc845c0d9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 387f2fda683bfa4e01c7ef5165c1f675ae2ff248 Author: Werner Koch Date: Mon Sep 18 20:05:26 2017 +0200 Support the other two NIST curves and their Brainpool counterparts. * src/ecdh.c (_ntbtls_ecdh_read_params): Add new curves. * src/protocol-cli.c (write_supported_elliptic_curves_ext): Ditto. -- GnuPG-bug-id: 3411 Signed-off-by: Werner Koch diff --git a/src/ecdh.c b/src/ecdh.c index da7e5a2..85b58f0 100644 --- a/src/ecdh.c +++ b/src/ecdh.c @@ -108,13 +108,21 @@ _ntbtls_ecdh_read_params (ecdh_context_t ecdh, return gpg_error (GPG_ERR_UNKNOWN_CURVE); der++; derlen--; - /* And only the secp256r1 curve (23). */ - if (buf16_to_uint (der) != 23) - return gpg_error (GPG_ERR_UNKNOWN_CURVE); + + switch (buf16_to_uint (der)) + { + case 23: ecdh->curve_name = "secp256r1"; break; + case 24: ecdh->curve_name = "secp384r1"; break; + case 25: ecdh->curve_name = "secp521r1"; break; + case 26: ecdh->curve_name = "brainpoolP256r1"; break; + case 27: ecdh->curve_name = "brainpoolP384r1"; break; + case 28: ecdh->curve_name = "brainpoolP512r1"; break; + default: + return gpg_error (GPG_ERR_UNKNOWN_CURVE); + } der += 2; derlen -= 2; - ecdh->curve_name = "secp256r1"; err = gcry_mpi_ec_new (&ecdh->ecctx, NULL, ecdh->curve_name); if (err) return err; diff --git a/src/protocol-cli.c b/src/protocol-cli.c index 54e8244..f34a7a0 100644 --- a/src/protocol-cli.c +++ b/src/protocol-cli.c @@ -195,9 +195,19 @@ write_supported_elliptic_curves_ext (ntbtls_t tls, debug_msg (3, "client hello, adding supported_elliptic_curves extension"); - /* We only support curve secp256r1 (23). */ + /* The 6 curves we support; see _ntbtls_ecdh_read_params. */ elliptic_curve_list[elliptic_curve_len++] = 0; elliptic_curve_list[elliptic_curve_len++] = 23; + elliptic_curve_list[elliptic_curve_len++] = 0; + elliptic_curve_list[elliptic_curve_len++] = 24; + elliptic_curve_list[elliptic_curve_len++] = 0; + elliptic_curve_list[elliptic_curve_len++] = 25; + elliptic_curve_list[elliptic_curve_len++] = 0; + elliptic_curve_list[elliptic_curve_len++] = 26; + elliptic_curve_list[elliptic_curve_len++] = 0; + elliptic_curve_list[elliptic_curve_len++] = 27; + elliptic_curve_list[elliptic_curve_len++] = 0; + elliptic_curve_list[elliptic_curve_len++] = 28; *p++ = (unsigned char) ((TLS_EXT_SUPPORTED_ELLIPTIC_CURVES >> 8) & 0xFF); *p++ = (unsigned char) ((TLS_EXT_SUPPORTED_ELLIPTIC_CURVES) & 0xFF); commit 55071ab71133333ebabbf40ca872829dc9089bf7 Author: Werner Koch Date: Mon Sep 18 22:02:07 2017 +0200 Print "handshake failure" debug msg for the the 2:40 alert. * src/protocol.c (_ntbtls_read_record): Explain error message. Signed-off-by: Werner Koch diff --git a/src/protocol.c b/src/protocol.c index 658cdbd..147c5c3 100644 --- a/src/protocol.c +++ b/src/protocol.c @@ -1706,6 +1706,15 @@ read_record_header: { debug_msg (1, "is a fatal alert message (msg %d)", tls->in_msg[1]); + switch (tls->in_msg[1]) + { + case TLS_ALERT_MSG_HANDSHAKE_FAILURE: + debug_msg (1, "(handshake failed)"); + break; + default: + break; + } + /** * Subtract from error code as tls->in_msg[1] is 7-bit positive * error identifier. ----------------------------------------------------------------------- Summary of changes: src/ecdh.c | 16 ++++++++++++---- src/protocol-cli.c | 12 +++++++++++- src/protocol.c | 9 +++++++++ 3 files changed, 32 insertions(+), 5 deletions(-) hooks/post-receive -- Not Too Bad TLS http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 05:35:59 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 19 Sep 2017 05:35:59 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-9-geeb3da6 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via eeb3da6eb717ed6a1a1069a7611eb37503e8672d (commit) from 384a3748d9022b7ae3f629c13f92e204565fea3d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit eeb3da6eb717ed6a1a1069a7611eb37503e8672d Author: NIIBE Yutaka Date: Tue Sep 19 12:28:43 2017 +0900 common: Fix gnupg_wait_processes. * common/exechelp-posix.c (gnupg_wait_processes): Loop for r_exitcodes even if we already see an error. -- The value stored by waitpid for exit code is encoded; It requires decoded by WEXITSTATUS macro, regardless of an error. For example, when one of processes is already exited and another is still running, it resulted wrong value of in r_exitcodes[n]. Signed-off-by: NIIBE Yutaka diff --git a/common/exechelp-posix.c b/common/exechelp-posix.c index 7237993..3acf74a 100644 --- a/common/exechelp-posix.c +++ b/common/exechelp-posix.c @@ -784,30 +784,32 @@ gnupg_wait_processes (const char **pgmnames, pid_t *pids, size_t count, } } - if (ec == 0) - for (i = 0; i < count; i++) - { - if (WIFEXITED (r_exitcodes[i]) && WEXITSTATUS (r_exitcodes[i]) == 127) - { - log_error (_("error running '%s': probably not installed\n"), - pgmnames[i]); - ec = GPG_ERR_CONFIGURATION; - } - else if (WIFEXITED (r_exitcodes[i]) && WEXITSTATUS (r_exitcodes[i])) - { - if (dummy) - log_error (_("error running '%s': exit status %d\n"), - pgmnames[i], WEXITSTATUS (r_exitcodes[i])); - else - r_exitcodes[i] = WEXITSTATUS (r_exitcodes[i]); - ec = GPG_ERR_GENERAL; - } - else if (!WIFEXITED (r_exitcodes[i])) - { - log_error (_("error running '%s': terminated\n"), pgmnames[i]); - ec = GPG_ERR_GENERAL; - } - } + for (i = 0; i < count; i++) + { + if (r_exitcodes[i] == -1) + continue; + + if (WIFEXITED (r_exitcodes[i]) && WEXITSTATUS (r_exitcodes[i]) == 127) + { + log_error (_("error running '%s': probably not installed\n"), + pgmnames[i]); + ec = GPG_ERR_CONFIGURATION; + } + else if (WIFEXITED (r_exitcodes[i]) && WEXITSTATUS (r_exitcodes[i])) + { + if (dummy) + log_error (_("error running '%s': exit status %d\n"), + pgmnames[i], WEXITSTATUS (r_exitcodes[i])); + else + r_exitcodes[i] = WEXITSTATUS (r_exitcodes[i]); + ec = GPG_ERR_GENERAL; + } + else if (!WIFEXITED (r_exitcodes[i])) + { + log_error (_("error running '%s': terminated\n"), pgmnames[i]); + ec = GPG_ERR_GENERAL; + } + } xfree (dummy); return gpg_err_make (GPG_ERR_SOURCE_DEFAULT, ec); ----------------------------------------------------------------------- Summary of changes: common/exechelp-posix.c | 50 +++++++++++++++++++++++++------------------------ 1 file changed, 26 insertions(+), 24 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 08:11:26 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 19 Sep 2017 08:11:26 +0200 Subject: [git] NTBTLS - branch, master, updated. ntbtls-0.1.1-6-g5dcdd1b Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Not Too Bad TLS". The branch, master has been updated via 5dcdd1b0a399493f2f6c8e9cc2a51736057905a0 (commit) via a68e81e9daead32d1cddcbddc3455aeff298019a (commit) from 387f2fda683bfa4e01c7ef5165c1f675ae2ff248 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 5dcdd1b0a399493f2f6c8e9cc2a51736057905a0 Author: Werner Koch Date: Tue Sep 19 08:07:31 2017 +0200 Post release updates -- diff --git a/NEWS b/NEWS index 71574f2..4157d57 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,7 @@ +Noteworthy changes in version 0.1.3 (unreleased) [C0/A0/R3] +------------------------------------------------ + + Noteworthy changes in version 0.1.2 (2017-09-19) [C0/A0/R2] ------------------------------------------------ diff --git a/configure.ac b/configure.ac index aeedae0..d149c62 100644 --- a/configure.ac +++ b/configure.ac @@ -27,7 +27,7 @@ min_automake_version="1.14" m4_define([mym4_package],[ntbtls]) m4_define([mym4_major], [0]) m4_define([mym4_minor], [1]) -m4_define([mym4_micro], [2]) +m4_define([mym4_micro], [3]) # To start a new development series, i.e a new major or minor number # you need to mark an arbitrary commit before the first beta release commit a68e81e9daead32d1cddcbddc3455aeff298019a Author: Werner Koch Date: Tue Sep 19 08:01:28 2017 +0200 Release 0.1.2 * configure.ac: Set LT version to C0/A0/R2. diff --git a/NEWS b/NEWS index 2a773c3..71574f2 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,8 @@ -Noteworthy changes in version 0.1.2 (unreleased) [C0/A0/R_] +Noteworthy changes in version 0.1.2 (2017-09-19) [C0/A0/R2] ------------------------------------------------ + * Add support for secp384r1, secp521r1, and 3 Brainpool curves. + Noteworthy changes in version 0.1.1 (2017-03-16) [C0/A0/R1] ------------------------------------------------ diff --git a/configure.ac b/configure.ac index 71ee5ee..aeedae0 100644 --- a/configure.ac +++ b/configure.ac @@ -54,7 +54,7 @@ AC_INIT([mym4_package],[mym4_version], [http://bugs.gnupg.org]) # (No interfaces changed: REVISION++) LIBNTBTLS_LT_CURRENT=0 LIBNTBTLS_LT_AGE=0 -LIBNTBTLS_LT_REVISION=1 +LIBNTBTLS_LT_REVISION=2 # If the API is changed in an incompatible way: increment the next counter. NTBTLS_CONFIG_API_VERSION=1 ----------------------------------------------------------------------- Summary of changes: NEWS | 8 +++++++- configure.ac | 4 ++-- 2 files changed, 9 insertions(+), 3 deletions(-) hooks/post-receive -- Not Too Bad TLS http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 08:43:25 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 19 Sep 2017 08:43:25 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.0-18-ge1f0461 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via e1f04616e410dd31a0aa91d331817bd087093c8d (commit) via 355ca9e9498740fb6294eec451507b4891ae01ec (commit) from df692a6167be5486f9a29da003a00292fd895176 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit e1f04616e410dd31a0aa91d331817bd087093c8d Author: Werner Koch Date: Tue Sep 19 08:34:36 2017 +0200 Post release updates -- diff --git a/NEWS b/NEWS index 081dbcc..2dd4e53 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,7 @@ +Noteworthy changes in version 2.2.2 (unreleased) +------------------------------------------------ + + Noteworthy changes in version 2.2.1 (2017-09-19) ------------------------------------------------ diff --git a/configure.ac b/configure.ac index fbd5c18..70c1226 100644 --- a/configure.ac +++ b/configure.ac @@ -28,7 +28,7 @@ min_automake_version="1.14" m4_define([mym4_package],[gnupg]) m4_define([mym4_major], [2]) m4_define([mym4_minor], [2]) -m4_define([mym4_micro], [1]) +m4_define([mym4_micro], [2]) # To start a new development series, i.e a new major or minor number # you need to mark an arbitrary commit before the first beta release commit 355ca9e9498740fb6294eec451507b4891ae01ec Author: Werner Koch Date: Tue Sep 19 08:13:44 2017 +0200 Release 2.2.1 diff --git a/NEWS b/NEWS index 7510ff4..081dbcc 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,24 @@ -Noteworthy changes in version 2.2.1 (unreleased) +Noteworthy changes in version 2.2.1 (2017-09-19) ------------------------------------------------ + * gpg: Fix formatting of the user id in batch mode key generation + if only "name-email" is given. + + * gpgv: Fix annoying "not suitable for" warnings. + + * wks: Convey only the newest user id to the provider. This is the + case if different names are used with the same addr-spec. + + * wks: Create a complying user id for provider policy mailbox-only. + + * wks: Add workaround for posteo.de. + + * scd: Fix the use of large ECC keys with an OpenPGP card. + + * dirmngr: Use system provided root certificates if no specific HKP + certificates are configured. If build with GNUTLS, this was + already the case. + Noteworthy changes in version 2.2.0 (2017-08-28) ------------------------------------------------ @@ -13,6 +31,8 @@ Noteworthy changes in version 2.2.0 (2017-08-28) * Fixed a few minor bugs. + See-also: gnupg-announce/2017q3/000413.html + Noteworthy changes in version 2.1.23 (2017-08-09) ------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: NEWS | 26 +++++++++++++++++++++++++- configure.ac | 2 +- 2 files changed, 26 insertions(+), 2 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 09:13:31 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 19 Sep 2017 09:13:31 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-10-gba8afc4 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via ba8afc4966cca1f6aaf9b2a9bfc3220782306c2b (commit) from eeb3da6eb717ed6a1a1069a7611eb37503e8672d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ba8afc4966cca1f6aaf9b2a9bfc3220782306c2b Author: NIIBE Yutaka Date: Tue Sep 19 16:09:05 2017 +0900 common: Accept the Z-suffix for yymmddThhmmssZ format. * common/gettime.c (isotime_p): Accept the Z suffix. -- The intention is use for human interface. GnuPG-bug-id: 3278 Signed-off-by: NIIBE Yutaka diff --git a/common/gettime.c b/common/gettime.c index 3e1ee55..4ad99f5 100644 --- a/common/gettime.c +++ b/common/gettime.c @@ -222,6 +222,8 @@ isotime_p (const char *string) for (s++, i=9; i < 15; i++, s++) if (!digitp (s)) return 0; + if (*s == 'Z') + s++; if ( !(!*s || (isascii (*s) && isspace(*s)) || *s == ':' || *s == ',')) return 0; /* Wrong delimiter. */ @@ -354,9 +356,10 @@ string2isotime (gnupg_isotime_t atime, const char *string) } -/* Scan an ISO timestamp and return an Epoch based timestamp. The only - supported format is "yyyymmddThhmmss" delimited by white space, nul, a - colon or a comma. Returns (time_t)(-1) for an invalid string. */ +/* Scan an ISO timestamp and return an Epoch based timestamp. The + only supported format is "yyyymmddThhmmss[Z]" delimited by white + space, nul, a colon or a comma. Returns (time_t)(-1) for an + invalid string. */ time_t isotime2epoch (const char *string) { ----------------------------------------------------------------------- Summary of changes: common/gettime.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 14:06:29 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 19 Sep 2017 14:06:29 +0200 Subject: [git] gnupg-doc - branch, master, updated. 98e5d7a678d5d57f4cb62cc26e167d10b847cba1 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 98e5d7a678d5d57f4cb62cc26e167d10b847cba1 (commit) from cb36d1ae20c53fbfba796474898574cece5fc18c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 98e5d7a678d5d57f4cb62cc26e167d10b847cba1 Author: Werner Koch Date: Tue Sep 19 14:02:31 2017 +0200 swdb: Release of GnuPG 2.2.1 and ntbtls 0.1.2 diff --git a/web/index.org b/web/index.org index bf1cdd1..f11ca9e 100644 --- a/web/index.org +++ b/web/index.org @@ -66,6 +66,11 @@ The latest release news:\\ # GnuPG's latest news are available as [[http://feedvalidator.org/check.cgi?url%3Dhttps://www.gnupg.org/news.en.rss][RSS 2.0 compliant]] feed. Just # point or paste the [[news.en.rss][RSS file]] into your aggregator. +** GnuPG 2.2.1 released (2017-09-19) + +We are pleased to announce the availability of GnuPG version 2.2.1. +This is a maintenance release fixing a few minor bugs. {[[https://lists.gnupg.org/pipermail/gnupg-announce/2017q3/000415.html][more]]} + ** Libgcrypt 1.8.1 released (2017-08-31) :important: We are pleased to announce the availability of [[file:software/libgcrypt/index.org][Libgcrypt]] version 1.8.1 diff --git a/web/swdb.mac b/web/swdb.mac index 041f193..1808785 100644 --- a/web/swdb.mac +++ b/web/swdb.mac @@ -10,31 +10,32 @@ # # GnuPG-2.2 # -#+macro: gnupg22_ver 2.2.0 -#+macro: gnupg22_date 2017-08-28 -#+macro: gnupg22_size 6379k -#+macro: gnupg22_sha1 36ee693d0b2ec529ecf53dd6d397cc38ba71c0a7 -#+macro: gnupg22_sha2 d4514a0be0f7a1ff263193330019eb4b53c82f0f5e230af3c14df371271a45e6 +#+macro: gnupg22_ver 2.2.1 +#+macro: gnupg22_date 2017-09-19 +#+macro: gnupg22_size 6384k +#+macro: gnupg22_sha1 5455373fd7208b787f319027de2464721cdd4413 +#+macro: gnupg22_sha2 34d70cd65b9c95f3f2f90a9f5c1e0b6a0fe039a8d685e2d66d69c33d1cbf62fb #+macro: gnupg22_branch STABLE-BRANCH-2-2 -#+macro: gnupg22_w32_ver 2.2.0_20170828 -#+macro: gnupg22_w32_date 2017-08-28 -#+macro: gnupg22_w32_size 3797k -#+macro: gnupg22_w32_sha1 7b0cf3912b86a6bd7655026276984a34a248e625 -#+macro: gnupg22_w32_sha2 e614d00bf84f68094af6cdcfbff5423b74340885c4034d407c81d5d92272127c +#+macro: gnupg22_w32_ver 2.2.1_20170919 +#+macro: gnupg22_w32_date 2017-09-19 +#+macro: gnupg22_w32_size 3799k +#+macro: gnupg22_w32_sha1 bcf1905655e52e2eec794bcbba72485f7b9ed2d3 +#+macro: gnupg22_w32_sha2 a8fa4ef2168461310b2350b446f219c05003e3fc29f2901bdd188f7fae9a4cbd # temporary keep it as "gnupg21". In the future we will use the name of # the stable branch even for the development versions. -#+macro: gnupg21_ver 2.2.0 -#+macro: gnupg21_date 2017-08-28 -#+macro: gnupg21_size 6379k -#+macro: gnupg21_sha1 36ee693d0b2ec529ecf53dd6d397cc38ba71c0a7 -#+macro: gnupg21_sha2 d4514a0be0f7a1ff263193330019eb4b53c82f0f5e230af3c14df371271a45e6 -#+macro: gnupg21_w32_ver 2.2.0_20170828 -#+macro: gnupg21_w32_date 2017-08-28 -#+macro: gnupg21_w32_size 3797k -#+macro: gnupg21_w32_sha1 7b0cf3912b86a6bd7655026276984a34a248e625 -#+macro: gnupg21_w32_sha2 e614d00bf84f68094af6cdcfbff5423b74340885c4034d407c81d5d92272127c +#+macro: gnupg21_ver 2.2.1 +#+macro: gnupg21_date 2017-09-19 +#+macro: gnupg21_size 6384k +#+macro: gnupg21_sha1 5455373fd7208b787f319027de2464721cdd4413 +#+macro: gnupg21_sha2 34d70cd65b9c95f3f2f90a9f5c1e0b6a0fe039a8d685e2d66d69c33d1cbf62fb +#+macro: gnupg21_branch STABLE-BRANCH-2-2 +#+macro: gnupg21_w32_ver 2.2.1_20170919 +#+macro: gnupg21_w32_date 2017-09-19 +#+macro: gnupg21_w32_size 3799k +#+macro: gnupg21_w32_sha1 bcf1905655e52e2eec794bcbba72485f7b9ed2d3 +#+macro: gnupg21_w32_sha2 a8fa4ef2168461310b2350b446f219c05003e3fc29f2901bdd188f7fae9a4cbd # @@ -152,11 +153,11 @@ # # NTBTLS # -#+macro: ntbtls_ver 0.1.1 -#+macro: ntbtls_date 2017-03-16 -#+macro: ntbtls_size 333k -#+macro: ntbtls_sha1 6c0aacc43f7cd0695ad21463d94e7baf99215149 -#+macro: ntbtls_sha2 2d274ce64d2ac7613ed8f7ed7094332d50ac16916d1ebf1fc87b1018df146234 +#+macro: ntbtls_ver 0.1.2 +#+macro: ntbtls_date 2017-09-19 +#+macro: ntbtls_size 334k +#+macro: ntbtls_sha1 05cf57cd8400b338b94bdce7287397c24315ac49 +#+macro: ntbtls_sha2 8240db84e50c2351b19eb8064bdfd4d25e3c157d37875c62e335df237d7bdce7 # ----------------------------------------------------------------------- Summary of changes: web/index.org | 5 +++++ web/swdb.mac | 51 ++++++++++++++++++++++++++------------------------- 2 files changed, 31 insertions(+), 25 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 17:51:48 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 19 Sep 2017 17:51:48 +0200 Subject: [git] gnupg-doc - branch, master, updated. a3f2b73370a7b0169d8cfe7ade13fe9ee9a745eb Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via a3f2b73370a7b0169d8cfe7ade13fe9ee9a745eb (commit) from 98e5d7a678d5d57f4cb62cc26e167d10b847cba1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit a3f2b73370a7b0169d8cfe7ade13fe9ee9a745eb Author: Werner Koch Date: Tue Sep 19 17:48:12 2017 +0200 web: New page with a financial overview of the Verein. diff --git a/web/verein/finances.org b/web/verein/finances.org new file mode 100644 index 0000000..fe730d1 --- /dev/null +++ b/web/verein/finances.org @@ -0,0 +1,41 @@ +#+TITLE: Finances of the GnuPG e.V +#+STARTUP: showall indent +#+SETUPFILE: "../share/setup.inc" +#+macro: atgit [[https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg-verein.git;a=blob_plain;f=$1][$2]] + +* Financial Overview + + This page gives an overview on the financial state of the GnuPG e.V. + Note that in general the name of a donors is not public; for larger + donations we will however publish that name. If you have any + questions on certain transactions, please write to board at . + +** Euro transaction + + Here are the transactions on our bank account. + +| Date | Debit | Credit | Balance | Description | +|------------+----------+--------+-----------+--------------------------| +| 2017-06-23 | 200.00 | | 200.00 | Donation: g10 Code | +| 2017-06-30 | | 2.23 | | Banking fees | +| 2017-07-10 | 2000.00 | | | Donation: German company | +| 2017-07-25 | 59005.30 | | | Transfer from WHS | +| 2017-07-31 | | 5.80 | | Banking fees | +| 2017-08-81 | | 5.00 | | Banking fees | +| 2017-09-07 | 3615.64 | | | Exchange of 1 BTC | +| 2017-09-11 | 38650.36 | | | Exchange of 10 BTC | +| 2017-09-14 | 25868.08 | | 139326.35 | Exchange of 10 BTC | +| 2017-09-19 | | 119.00 | 139207.35 | Design postcards | + + +The 59.000 ? from the Wau Holland Stiftung have been collected by them +for the GnuPG project since 2013. After the Verein reached charitable +state they were able to transfer that money. Many thanks to them. + +We have produced two kinds of postcards to be used as giveaways at +shows and other opportunities. + +** Bitcoin transactions + + As of 2017-09-19 we have 5.19 BTC. 21 BTC have already been + transferred to our Euro account (see above). diff --git a/web/verein/index.org b/web/verein/index.org index ac42655..73d0745 100644 --- a/web/verein/index.org +++ b/web/verein/index.org @@ -1,5 +1,5 @@ #+TITLE: GnuPG e.V. -#+STARTUP: showall indent +#+STARTUP: showall #+SETUPFILE: "../share/setup.inc" #+macro: atgit [[https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg-verein.git;a=blob_plain;f=$1][$2]] @@ -14,15 +14,20 @@ commenced on the next day at 13:37. The 7 founding members are: Andre Heinecke, Justus Winter, Kai Michaelis, Marcus Brinkmann, Neal Walfied, Werner Koch, and Yutaka Niibe. The elected chair is Werner, the vice Andre, and the cashier -Marcus. The registration number is /VR11482/ at /Amtsgericht -D?sseldorf/. +Marcus. Marcus resigned on 2017-08-02; a new cashier needs to be +elected soon. -Our {{{atgit(legal/constitution.de.pdf,constitution)}}} is written in -German; a legally non-binding -{{{atgit(legal/constitution.en.pdf,translation)}}} is available. The -founding protocol can can be read -{{{atgit(legal/founding-protocol-20170208.txt,here)}}}. - -The rules on how to apply for membership will soon be posted. The tax +The rules on how to apply for membership will soon be posted. The +registration number is /VR11482/ at /Amtsgericht D?sseldorf/. The tax office D?sseldorf-Altstadt confirmed our charitable state on 2017-04-03. + +** Menu + +- [[file:finances.org][Financial overview]] +- {{{atgit(legal/constitution.de.pdf,constitution)}}} [German] +- {{{atgit(legal/constitution.en.pdf,constitution)}}} [English translation]. +- {{{atgit(legal/founding-protocol-20170208.txt,Founding protocol)}}}. + + +# eof ----------------------------------------------------------------------- Summary of changes: web/verein/finances.org | 41 +++++++++++++++++++++++++++++++++++++++++ web/verein/index.org | 25 +++++++++++++++---------- 2 files changed, 56 insertions(+), 10 deletions(-) create mode 100644 web/verein/finances.org hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 18:46:06 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 19 Sep 2017 18:46:06 +0200 Subject: [git] gnupg-doc - branch, master, updated. cc6fb3005ccd99c279a26d5a21dcce3fadd6b666 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via cc6fb3005ccd99c279a26d5a21dcce3fadd6b666 (commit) from a3f2b73370a7b0169d8cfe7ade13fe9ee9a745eb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit cc6fb3005ccd99c279a26d5a21dcce3fadd6b666 Author: Werner Koch Date: Tue Sep 19 18:07:34 2017 +0200 web: Add a list of members diff --git a/web/verein/index.org b/web/verein/index.org index 73d0745..8ef7350 100644 --- a/web/verein/index.org +++ b/web/verein/index.org @@ -24,10 +24,13 @@ office D?sseldorf-Altstadt confirmed our charitable state on ** Menu +- [[file:members.org][Members]] - [[file:finances.org][Financial overview]] - {{{atgit(legal/constitution.de.pdf,constitution)}}} [German] -- {{{atgit(legal/constitution.en.pdf,constitution)}}} [English translation]. -- {{{atgit(legal/founding-protocol-20170208.txt,Founding protocol)}}}. +- {{{atgit(legal/constitution.en.pdf,constitution)}}} [English translation] +- {{{atgit(legal/founding-protocol-20170208.txt,Founding protocol)}}} + [German] + # eof diff --git a/web/verein/members.org b/web/verein/members.org new file mode 100644 index 0000000..3b0daad --- /dev/null +++ b/web/verein/members.org @@ -0,0 +1,28 @@ +#+TITLE: Members of the GnuPG e.V +#+STARTUP: showall +#+SETUPFILE: "../share/setup.inc" + +* List of GnuPG e.V Members. + +To apply for membership please write to board at . We expect that you +have a more than average interest in GnuPG or OpenPGP and that you are +active in development or in evangelizing end-to-end encryption. + +** The regular members + + - Andre Heinecke + - Bernhard Reiter + - Damien Goutte-Gattat + - Daniel Kahn Gillmor + - Holger Smolinski + - Justus Winter + - Kai Michaelis + - Kristian Fiskerstrand + - Marcus Brinkmann + - Neal Walfied + - Werner Koch + - Yutaka Niibe + +** The supporting members + + /none so far - we still need to setup rules/ ----------------------------------------------------------------------- Summary of changes: web/verein/index.org | 7 +++++-- web/verein/members.org | 28 ++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 web/verein/members.org hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 18:58:43 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 19 Sep 2017 18:58:43 +0200 Subject: [git] gnupg-doc - branch, master, updated. fec49fa619e7d25c5bea7dc80afcd9f353fc5b3a Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via fec49fa619e7d25c5bea7dc80afcd9f353fc5b3a (commit) from cc6fb3005ccd99c279a26d5a21dcce3fadd6b666 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit fec49fa619e7d25c5bea7dc80afcd9f353fc5b3a Author: Werner Koch Date: Tue Sep 19 18:55:07 2017 +0200 web: Minor fixes. diff --git a/web/verein/finances.org b/web/verein/finances.org index fe730d1..0c1d08e 100644 --- a/web/verein/finances.org +++ b/web/verein/finances.org @@ -6,8 +6,8 @@ * Financial Overview This page gives an overview on the financial state of the GnuPG e.V. - Note that in general the name of a donors is not public; for larger - donations we will however publish that name. If you have any + Note that in general the name of a donor is not public; for larger + donations we will however publish the name. If you have any questions on certain transactions, please write to board at . ** Euro transaction @@ -37,5 +37,5 @@ shows and other opportunities. ** Bitcoin transactions - As of 2017-09-19 we have 5.19 BTC. 21 BTC have already been + As of 2017-09-19 we have 5.17 BTC. 21 BTC have already been transferred to our Euro account (see above). ----------------------------------------------------------------------- Summary of changes: web/verein/finances.org | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 19 19:45:10 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 19 Sep 2017 19:45:10 +0200 Subject: [git] gnupg-doc - branch, master, updated. 2a68ed22be1757a9aaa19f72688c877766917253 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 2a68ed22be1757a9aaa19f72688c877766917253 (commit) from fec49fa619e7d25c5bea7dc80afcd9f353fc5b3a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2a68ed22be1757a9aaa19f72688c877766917253 Author: Werner Koch Date: Tue Sep 19 19:40:53 2017 +0200 web: Use a CC BY-SA 4.0 for the Verein pages. diff --git a/web/copying.org b/web/copying.org index 3e83d1a..cb556c1 100644 --- a/web/copying.org +++ b/web/copying.org @@ -32,7 +32,7 @@ Foundation; either version 3 of the License, or (at your option) any later version. - If you wish to allow the use of your version of theses pages only + If you wish to allow the use of your version of these pages only under the terms of one of these licenses, indicate your decision by deleting the respective above paragraph. diff --git a/web/share/gpgweb.el b/web/share/gpgweb.el index e350294..9a719f2 100644 --- a/web/share/gpgweb.el +++ b/web/share/gpgweb.el @@ -334,9 +334,21 @@ string of the source file or nil if not available." (goto-char (point-min)) (unless (search-forward "" nil t) (goto-char (point-max)) - (insert "
+ (if (string-prefix-p "verein/" htmlfile) + (insert "
+ \"CC  + This web page is + Copyright 2017 GnuPG e.V. and licensed under a + Creative Commons Attribution-ShareAlike 4.0 International License. See + copying for details. + Page source last changed on " changed ". +
\n") + (insert "
\"CC-BY-SA\"CC  These web pages are Copyright 1998--2017 The GnuPG Project and licensed under a @@ -344,7 +356,7 @@ string of the source file or nil if not available." >Creative Commons Attribution-ShareAlike 3.0 Unported License. See copying for details. Page source last changed on " changed ". -
\n")) +
\n"))) (goto-char (point-max)) (insert "
----------------------------------------------------------------------- Summary of changes: web/copying.org | 2 +- web/share/gpgweb.el | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 20 03:10:17 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 20 Sep 2017 03:10:17 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-11-g2396055 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 2396055c096884d521c26b76f26263a146207c24 (commit) from ba8afc4966cca1f6aaf9b2a9bfc3220782306c2b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2396055c096884d521c26b76f26263a146207c24 Author: NIIBE Yutaka Date: Wed Sep 20 10:06:43 2017 +0900 scd: Distinguish cancel by user and protocol error. * scd/apdu.h (SW_HOST_CANCELLED): New. * scd/apdu.c (host_sw_string): Support SW_HOST_CANCELLED. (pcsc_error_to_sw): Return SW_HOST_CANCELLED for PCSC_E_CANCELLED. * scd/iso7816.c (map_sw): Return GPG_ERR_INV_RESPONSE for SW_HOST_ABORTED and GPG_ERR_CANCELED for SW_HOST_CANCELLED. Signed-off-by: NIIBE Yutaka diff --git a/scd/apdu.c b/scd/apdu.c index 97624eb..1b25ceb 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -496,6 +496,7 @@ host_sw_string (long err) case SW_HOST_ABORTED: return "aborted"; case SW_HOST_NO_PINPAD: return "no pinpad"; case SW_HOST_ALREADY_CONNECTED: return "already connected"; + case SW_HOST_CANCELLED: return "cancelled"; default: return "unknown host status error"; } } @@ -602,7 +603,7 @@ pcsc_error_to_sw (long ec) { case 0: rc = 0; break; - case PCSC_E_CANCELLED: rc = SW_HOST_ABORTED; break; + case PCSC_E_CANCELLED: rc = SW_HOST_CANCELLED; break; case PCSC_E_NO_MEMORY: rc = SW_HOST_OUT_OF_CORE; break; case PCSC_E_TIMEOUT: rc = SW_HOST_CARD_IO_ERROR; break; case PCSC_E_NO_SERVICE: diff --git a/scd/apdu.h b/scd/apdu.h index 6751e8c..8a0d4bd 100644 --- a/scd/apdu.h +++ b/scd/apdu.h @@ -71,7 +71,8 @@ enum { SW_HOST_NO_READER = 0x1000c, SW_HOST_ABORTED = 0x1000d, SW_HOST_NO_PINPAD = 0x1000e, - SW_HOST_ALREADY_CONNECTED = 0x1000f + SW_HOST_ALREADY_CONNECTED = 0x1000f, + SW_HOST_CANCELLED = 0x10010 }; struct dev_list; diff --git a/scd/iso7816.c b/scd/iso7816.c index 081b080..29208c2 100644 --- a/scd/iso7816.c +++ b/scd/iso7816.c @@ -93,8 +93,9 @@ map_sw (int sw) case SW_HOST_CARD_IO_ERROR: ec = GPG_ERR_EIO; break; case SW_HOST_GENERAL_ERROR: ec = GPG_ERR_GENERAL; break; case SW_HOST_NO_READER: ec = GPG_ERR_ENODEV; break; - case SW_HOST_ABORTED: ec = GPG_ERR_CANCELED; break; + case SW_HOST_ABORTED: ec = GPG_ERR_INV_RESPONSE; break; case SW_HOST_NO_PINPAD: ec = GPG_ERR_NOT_SUPPORTED; break; + case SW_HOST_CANCELLED: ec = GPG_ERR_CANCELED; break; default: if ((sw & 0x010000)) ----------------------------------------------------------------------- Summary of changes: scd/apdu.c | 3 ++- scd/apdu.h | 3 ++- scd/iso7816.c | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 20 03:55:28 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Wed, 20 Sep 2017 03:55:28 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-12-g9f5e50e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 9f5e50e7c85aa8b847d38010241ed570ac114fc3 (commit) from 2396055c096884d521c26b76f26263a146207c24 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 9f5e50e7c85aa8b847d38010241ed570ac114fc3 Author: NIIBE Yutaka Date: Wed Sep 20 10:42:28 2017 +0900 agent: Fix cancellation handling for scdaemon. * agent/call-scd.c (cancel_inquire): Remove. (agent_card_pksign, agent_card_pkdecrypt, agent_card_writekey) (agent_card_scd): Don't call cancel_inquire. -- Since libassuan 2.1.0, cancellation command "CAN" is handled within the library, by assuan_transact. So, cancel_inquire just caused spurious "CAN" command to scdaemon which resulted an error. Signed-off-by: NIIBE Yutaka diff --git a/agent/call-scd.c b/agent/call-scd.c index cf61a35..6ce0cdd 100644 --- a/agent/call-scd.c +++ b/agent/call-scd.c @@ -89,7 +89,6 @@ struct inq_needpin_parm_s const char *getpin_cb_desc; assuan_context_t passthru; /* If not NULL, pass unknown inquiries up to the caller. */ - int any_inq_seen; /* The next fields are used by inq_writekey_parm. */ const unsigned char *keydata; @@ -727,7 +726,6 @@ inq_needpin (void *opaque, const char *line) size_t pinlen; int rc; - parm->any_inq_seen = 1; if ((s = has_leading_keyword (line, "NEEDPIN"))) { line = s; @@ -811,30 +809,6 @@ hash_algo_option (int algo) } -static gpg_error_t -cancel_inquire (ctrl_t ctrl, gpg_error_t rc) -{ - gpg_error_t oldrc = rc; - - /* The inquire callback was called and transact returned a - cancel error. We assume that the inquired process sent a - CANCEL. The passthrough code is not able to pass on the - CANCEL and thus scdaemon would stuck on this. As a - workaround we send a CANCEL now. */ - rc = assuan_write_line (ctrl->scd_local->ctx, "CAN"); - if (!rc) { - char *line; - size_t len; - - rc = assuan_read_line (ctrl->scd_local->ctx, &line, &len); - if (!rc) - rc = oldrc; - } - - return rc; -} - - /* Create a signature using the current card. MDALGO is either 0 or * gives the digest algorithm. DESC_TEXT is an additional parameter * passed to GETPIN_CB. */ @@ -875,7 +849,6 @@ agent_card_pksign (ctrl_t ctrl, inqparm.getpin_cb_arg = getpin_cb_arg; inqparm.getpin_cb_desc = desc_text; inqparm.passthru = 0; - inqparm.any_inq_seen = 0; inqparm.keydata = NULL; inqparm.keydatalen = 0; @@ -888,9 +861,6 @@ agent_card_pksign (ctrl_t ctrl, put_membuf_cb, &data, inq_needpin, &inqparm, NULL, NULL); - if (inqparm.any_inq_seen && (gpg_err_code(rc) == GPG_ERR_CANCELED || - gpg_err_code(rc) == GPG_ERR_ASS_CANCELED)) - rc = cancel_inquire (ctrl, rc); if (rc) { @@ -974,7 +944,6 @@ agent_card_pkdecrypt (ctrl_t ctrl, inqparm.getpin_cb_arg = getpin_cb_arg; inqparm.getpin_cb_desc = desc_text; inqparm.passthru = 0; - inqparm.any_inq_seen = 0; inqparm.keydata = NULL; inqparm.keydatalen = 0; snprintf (line, DIM(line), "PKDECRYPT %s", keyid); @@ -982,9 +951,6 @@ agent_card_pkdecrypt (ctrl_t ctrl, put_membuf_cb, &data, inq_needpin, &inqparm, padding_info_cb, r_padding); - if (inqparm.any_inq_seen && (gpg_err_code(rc) == GPG_ERR_CANCELED || - gpg_err_code(rc) == GPG_ERR_ASS_CANCELED)) - rc = cancel_inquire (ctrl, rc); if (rc) { @@ -1111,15 +1077,11 @@ agent_card_writekey (ctrl_t ctrl, int force, const char *serialno, parms.getpin_cb_arg = getpin_cb_arg; parms.getpin_cb_desc= NULL; parms.passthru = 0; - parms.any_inq_seen = 0; parms.keydata = keydata; parms.keydatalen = keydatalen; rc = assuan_transact (ctrl->scd_local->ctx, line, NULL, NULL, inq_writekey_parms, &parms, NULL, NULL); - if (parms.any_inq_seen && (gpg_err_code(rc) == GPG_ERR_CANCELED || - gpg_err_code(rc) == GPG_ERR_ASS_CANCELED)) - rc = cancel_inquire (ctrl, rc); return unlock_scd (ctrl, rc); } @@ -1344,7 +1306,6 @@ agent_card_scd (ctrl_t ctrl, const char *cmdline, inqparm.getpin_cb_arg = getpin_cb_arg; inqparm.getpin_cb_desc = NULL; inqparm.passthru = assuan_context; - inqparm.any_inq_seen = 0; inqparm.keydata = NULL; inqparm.keydatalen = 0; @@ -1354,8 +1315,6 @@ agent_card_scd (ctrl_t ctrl, const char *cmdline, pass_data_thru, assuan_context, inq_needpin, &inqparm, pass_status_thru, assuan_context); - if (inqparm.any_inq_seen && gpg_err_code(rc) == GPG_ERR_ASS_CANCELED) - rc = cancel_inquire (ctrl, rc); assuan_set_flag (ctrl->scd_local->ctx, ASSUAN_CONVEY_COMMENTS, saveflag); if (rc) ----------------------------------------------------------------------- Summary of changes: agent/call-scd.c | 41 ----------------------------------------- 1 file changed, 41 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 21 09:49:47 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 21 Sep 2017 09:49:47 +0200 Subject: [git] gnupg-doc - branch, master, updated. 175606f6a5f487f698da373a1675bdce6f4b8d79 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 175606f6a5f487f698da373a1675bdce6f4b8d79 (commit) from 2a68ed22be1757a9aaa19f72688c877766917253 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 175606f6a5f487f698da373a1675bdce6f4b8d79 Author: Werner Koch Date: Thu Sep 21 09:45:01 2017 +0200 web: Updates for gpg4win 3. diff --git a/web/download/index.org b/web/download/index.org index 148243f..814527a 100644 --- a/web/download/index.org +++ b/web/download/index.org @@ -59,7 +59,7 @@ | [[../software/gpgme/index.org][GPGME]] | {{{gpgme_ver}}} | {{{gpgme_date}}} | {{{gpgme_size}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gpgme/gpgme-{{{gpgme_ver}}}.tar.bz2{{{ftpclose}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gpgme/gpgme-{{{gpgme_ver}}}.tar.bz2.sig{{{ftpclose}}} | | [[../software/gpa/index.org][GPA]] | {{{gpa_ver}}} | {{{gpa_date}}} | {{{gpa_size}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gpa/gpa-{{{gpa_ver}}}.tar.bz2{{{ftpclose}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gpa/gpa-{{{gpa_ver}}}.tar.bz2.sig{{{ftpclose}}} | |--------------+------------------------+-------------------------+-------------------------+--------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------| - | GnuPG 2.0 | {{{gnupg20_ver}}} | {{{gnupg20_date}}} | {{{gnupg20_size}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gnupg/gnupg-{{{gnupg20_ver}}}.tar.bz2{{{ftpclose}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gnupg/gnupg-{{{gnupg20_ver}}}.tar.bz2.sig{{{ftpclose}}} | + | GnuPG 2.0 | {{{gnupg20_ver}}} | {{{gnupg20_date}}} | {{{gnupg20_size}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gnupg/gnupg-{{{gnupg20_ver}}}.tar.bz2{{{ftpclose}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gnupg/gnupg-{{{gnupg20_ver}}}.tar.bz2.sig{{{ftpclose}}} | | GnuPG 1.4 | {{{gnupg1_ver}}} | {{{gnupg1_date}}} | {{{gnupg1_size}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gnupg/gnupg-{{{gnupg1_ver}}}.tar.bz2{{{ftpclose}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/gnupg/gnupg-{{{gnupg1_ver}}}.tar.bz2.sig{{{ftpclose}}} | | Dirmngr 1 | {{{dirmngr_ver}}} | {{{dirmngr_date}}} | {{{dirmngr_size}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/dirmngr/dirmngr-{{{dirmngr_ver}}}.tar.bz2{{{ftpclose}}} | {{{ftpopen}}}{{{ftp_loc_base}}}/dirmngr/dirmngr-{{{dirmngr_ver}}}.tar.bz2.sig{{{ftpclose}}} | |--------------+------------------------+-------------------------+-------------------------+--------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------| @@ -105,11 +105,11 @@ | OS | Where | Description | |---------+--------------------+------------------------------------------| | | <18> | | - | Windows | [[http://gpg4win.org/download.html][Gpg4win]] | Installers for /GnuPG 2.0/ | + | Windows | [[http://gpg4win.org/download.html][Gpg4win]] | Full featured Windows version of /GnuPG/ | | | {{{ftpopen}}}{{{ftp_loc_base}}}/binary/gnupg-w32-{{{gnupg22_w32_ver}}}.exe{{{ftpclose}}} {{{ftpopen}}}{{{ftp_loc_base}}}/binary/gnupg-w32-{{{gnupg22_w32_ver}}}.exe.sig{{{ftpcloseS}}} | Simple installer for the current /GnuPG/ | | | {{{ftpopen}}}{{{ftp_loc_base}}}/binary/gnupg-w32cli-{{{gnupg1_w32cli_ver}}}.exe{{{ftpclose}}} {{{ftpopen}}}{{{ftp_loc_base}}}/binary/gnupg-w32cli-{{{gnupg1_w32cli_ver}}}.exe.sig{{{ftpcloseS}}} | Simple installer for /GnuPG 1.4/ | | OS X | [[http://gpgtools.org][Mac GPG]] | Installer from the gpgtools project | - | | [[https://sourceforge.net/p/gpgosx/docu/Download/][GnuPG for OS X]] | Installer for /GnuPG 2.1/ | + | | [[https://sourceforge.net/p/gpgosx/docu/Download/][GnuPG for OS X]] | Installer for /GnuPG/ | | Debian | [[https://www.debian.org][Debian site]] | GnuPG is part of Debian | | RPM | [[http://rpmfind.net/][rpmfind]] | RPM packages for different OS | | Android | [[https://guardianproject.info/code/gnupg/][Guardian project]] | Provides a GnuPG framework | diff --git a/web/index.org b/web/index.org index f11ca9e..f65a473 100644 --- a/web/index.org +++ b/web/index.org @@ -25,10 +25,9 @@ be freely used, modified and distributed under the terms of the The current version of GnuPG is {{{gnupg22_ver}}}. See the [[file:download/index.org][download]] page for other maintained versions. -[[https://www.gpg4win.org][Gpg4win]] provides a Windows version of the older GnuPG 2.0 branch. It -is nicely integrated into an installer and features several frontends -as well as English and German manuals. - +[[https://www.gpg4win.org][Gpg4win]] is a Windows version of GnuPG featuring a context menu tool, a +crypto manager, and an Outlook plugin to send and receive standard +PGP/MIME mails. The current version of Gpg4win is {{{gpg4win_ver}}}. * Reconquer your privacy diff --git a/web/swdb.mac b/web/swdb.mac index 1808785..e50e299 100644 --- a/web/swdb.mac +++ b/web/swdb.mac @@ -72,6 +72,22 @@ # +# Gpg4win +# +#+macro gpg4win_ver 3.0.0 +#+macro gpg4win_date 2017-09-20 +#+macro gpg4win_exe_size 26528k +#+macro gpg4win_exe_sha1 8262d1818b4f9a890ce6182cafdb9510387e88e0 +#+macro gpg4win_exe_sha2 2565bf6faf8defb8fa61b0b1a30f0e68e2ca5ceb3177d08516e00ca1620252bf +#+macro gpg4win_isrc_size 6330k +#+macro gpg4win_isrc_sha1 2dc412675632da44c7f4dc120f1b2e866e350573 +#+macro gpg4win_isrc_sha2 120cd3e8826d6e3e9f35b86b59973e8d1dd7ce713a42c20fe9493f720cf3569c +#+macro gpg4win_src_size 221283k +#+macro gpg4win_src_sha1 0bf0066d57f0a51ecbfefbbd165cda33586a558e +#+macro gpg4win_src_sha2 08cdc060fab1b6a68246dffedbde185c1cd2646d28a7f02e90a4f11415aecb7b + + +# # GPA # #+macro: gpa_ver 0.9.10 ----------------------------------------------------------------------- Summary of changes: web/download/index.org | 6 +++--- web/index.org | 7 +++---- web/swdb.mac | 16 ++++++++++++++++ 3 files changed, 22 insertions(+), 7 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 21 09:55:08 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 21 Sep 2017 09:55:08 +0200 Subject: [git] gnupg-doc - branch, master, updated. c9288e6fd877bfa58bed593f2be1eb379aa87878 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via c9288e6fd877bfa58bed593f2be1eb379aa87878 (commit) from 175606f6a5f487f698da373a1675bdce6f4b8d79 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c9288e6fd877bfa58bed593f2be1eb379aa87878 Author: Werner Koch Date: Thu Sep 21 09:51:17 2017 +0200 swdb: Fix syntax error for new gpg4win entry. We need to have gpg4win create swdb files to avoid such errors. diff --git a/web/swdb.mac b/web/swdb.mac index e50e299..50e73f0 100644 --- a/web/swdb.mac +++ b/web/swdb.mac @@ -74,17 +74,17 @@ # # Gpg4win # -#+macro gpg4win_ver 3.0.0 -#+macro gpg4win_date 2017-09-20 -#+macro gpg4win_exe_size 26528k -#+macro gpg4win_exe_sha1 8262d1818b4f9a890ce6182cafdb9510387e88e0 -#+macro gpg4win_exe_sha2 2565bf6faf8defb8fa61b0b1a30f0e68e2ca5ceb3177d08516e00ca1620252bf -#+macro gpg4win_isrc_size 6330k -#+macro gpg4win_isrc_sha1 2dc412675632da44c7f4dc120f1b2e866e350573 -#+macro gpg4win_isrc_sha2 120cd3e8826d6e3e9f35b86b59973e8d1dd7ce713a42c20fe9493f720cf3569c -#+macro gpg4win_src_size 221283k -#+macro gpg4win_src_sha1 0bf0066d57f0a51ecbfefbbd165cda33586a558e -#+macro gpg4win_src_sha2 08cdc060fab1b6a68246dffedbde185c1cd2646d28a7f02e90a4f11415aecb7b +#+macro: gpg4win_ver 3.0.0 +#+macro: gpg4win_date 2017-09-20 +#+macro: gpg4win_exe_size 26528k +#+macro: gpg4win_exe_sha1 8262d1818b4f9a890ce6182cafdb9510387e88e0 +#+macro: gpg4win_exe_sha2 2565bf6faf8defb8fa61b0b1a30f0e68e2ca5ceb3177d08516e00ca1620252bf +#+macro: gpg4win_isrc_size 6330k +#+macro: gpg4win_isrc_sha1 2dc412675632da44c7f4dc120f1b2e866e350573 +#+macro: gpg4win_isrc_sha2 120cd3e8826d6e3e9f35b86b59973e8d1dd7ce713a42c20fe9493f720cf3569c +#+macro: gpg4win_src_size 221283k +#+macro: gpg4win_src_sha1 0bf0066d57f0a51ecbfefbbd165cda33586a558e +#+macro: gpg4win_src_sha2 08cdc060fab1b6a68246dffedbde185c1cd2646d28a7f02e90a4f11415aecb7b # ----------------------------------------------------------------------- Summary of changes: web/swdb.mac | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 21 10:04:59 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 21 Sep 2017 10:04:59 +0200 Subject: [git] gnupg-doc - branch, master, updated. 0f93d17cdfd591c3ec7ac85fc135b18801f80c6a Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via 0f93d17cdfd591c3ec7ac85fc135b18801f80c6a (commit) from c9288e6fd877bfa58bed593f2be1eb379aa87878 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 0f93d17cdfd591c3ec7ac85fc135b18801f80c6a Author: Werner Koch Date: Thu Sep 21 10:01:20 2017 +0200 web: Add notes on who was working for g10 Code. diff --git a/web/people/index.org b/web/people/index.org index 1e1e215..b55f397 100644 --- a/web/people/index.org +++ b/web/people/index.org @@ -60,9 +60,9 @@ Marcus is part of the free software community since 1997, when he joined the [[http://www.debian.org][Debian]] project. Probably best known for his past work - on GNU/Hurd, he also has a diploma degree in mathematics, and is - full time employed by [[https://g10code.com][g10^code]] to work on the GnuPG and related - software from 2001 to 2012 and again since 2017. + on GNU/Hurd, he also has a diploma degree in mathematics, and was + part and full time employed by [[https://g10code.com][g10^code]] to work on GnuPG and + related software from 2001 to 2012 and for 7 months in 2017. #+HTML:

@@ -103,7 +103,8 @@ /Core components hacker/ Neal started to work on GnuPG in 2015 to support maintenance and - development in all areas. + development in all areas. We was full time employed by g10^code + from 2015 to 2017. #+HTML:

@@ -115,8 +116,8 @@ /Enigmail hacker/ - Kai is working on the [[https://enigmail.net][Enigmail]] project since 2015. He is part time - employed by g10^code. + Kai is working on the [[https://enigmail.net][Enigmail]] project since 2015. He was part time + employed by g10^code from 2015 to 2017. #+HTML:

@@ -129,7 +130,8 @@ /Core components hacker/ Justus started to work on GnuPG in 2015 to support maintenance and - development in all areas. He is full time employed by g10^code. + development in all areas. We was full time employed by g10^code + from 2015 to 2017. #+HTML:

----------------------------------------------------------------------- Summary of changes: web/people/index.org | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 21 10:12:49 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 21 Sep 2017 10:12:49 +0200 Subject: [git] gnupg-doc - branch, master, updated. db727ce8df78b95db3c66e521515feb428bb3bb4 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via db727ce8df78b95db3c66e521515feb428bb3bb4 (commit) from 0f93d17cdfd591c3ec7ac85fc135b18801f80c6a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit db727ce8df78b95db3c66e521515feb428bb3bb4 Author: Werner Koch Date: Thu Sep 21 10:09:12 2017 +0200 web: Note who is member of the Verein. diff --git a/web/people/index.org b/web/people/index.org index b55f397..960eb05 100644 --- a/web/people/index.org +++ b/web/people/index.org @@ -29,7 +29,8 @@ systems. Werner is a long time free software supporter and co-founder of the [[http://fsfe.org][FSFE]]. With the support of his brother he founded [[https://g10code.com][g10^code]] GmbH in 2001 to make GnuPG development his profession. - Werner is full time employed by g10^code. + Werner is full time employed by g10^code. He is a founding member + and the current chairperson of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] #+HTML:

@@ -62,7 +63,8 @@ joined the [[http://www.debian.org][Debian]] project. Probably best known for his past work on GNU/Hurd, he also has a diploma degree in mathematics, and was part and full time employed by [[https://g10code.com][g10^code]] to work on GnuPG and - related software from 2001 to 2012 and for 7 months in 2017. + related software from 2001 to 2012 and for 7 months in 2017. He is + a founding member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] #+HTML:

@@ -76,8 +78,9 @@ Niibe is a long time free software hacker who joined the GnuPG project in 2011 and soon took over the development of the smartcard - related code. He is also the person behind the [[http://www.fsij.org/gnuk/][Gnuk Token]] and the [[http://www.gniibe.org/memo/development/gnuk/rng/please-more-and-more-mep.html][MEP game]]. - Niibe?s work on GnuPG is financially supported by g10^code. + related code. He is also the person behind the [[http://www.fsij.org/gnuk/][Gnuk Token]] and the + [[http://www.gniibe.org/memo/development/gnuk/rng/please-more-and-more-mep.html][MEP game]]. Niibe?s work on GnuPG is financially supported by + g10^code. He is a founding member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] #+HTML:

@@ -104,7 +107,7 @@ Neal started to work on GnuPG in 2015 to support maintenance and development in all areas. We was full time employed by g10^code - from 2015 to 2017. + from 2015 to 2017. He is a founding member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] #+HTML:

@@ -116,8 +119,9 @@ /Enigmail hacker/ - Kai is working on the [[https://enigmail.net][Enigmail]] project since 2015. He was part time - employed by g10^code from 2015 to 2017. + Kai is working on the [[https://enigmail.net][Enigmail]] project since 2015. He was part + time employed by g10^code from 2015 to 2017. He is a founding + member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] #+HTML:

@@ -131,7 +135,7 @@ Justus started to work on GnuPG in 2015 to support maintenance and development in all areas. We was full time employed by g10^code - from 2015 to 2017. + from 2015 to 2017. He is a founding member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] #+HTML:

----------------------------------------------------------------------- Summary of changes: web/people/index.org | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 21 10:21:01 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 21 Sep 2017 10:21:01 +0200 Subject: [git] gnupg-doc - branch, master, updated. aa6437473cfbec02c55bbca90c2c9b2db1163087 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GnuPG website and other docs". The branch, master has been updated via aa6437473cfbec02c55bbca90c2c9b2db1163087 (commit) from db727ce8df78b95db3c66e521515feb428bb3bb4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit aa6437473cfbec02c55bbca90c2c9b2db1163087 Author: Werner Koch Date: Thu Sep 21 10:16:47 2017 +0200 web: Fix org-mode editor's too smart link handling in last commit diff --git a/web/people/index.org b/web/people/index.org index 960eb05..1f65d18 100644 --- a/web/people/index.org +++ b/web/people/index.org @@ -30,7 +30,7 @@ co-founder of the [[http://fsfe.org][FSFE]]. With the support of his brother he founded [[https://g10code.com][g10^code]] GmbH in 2001 to make GnuPG development his profession. Werner is full time employed by g10^code. He is a founding member - and the current chairperson of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] + and the current chairperson of the [[../verein/index.org][GnuPG e.V.]] #+HTML:

@@ -64,7 +64,7 @@ on GNU/Hurd, he also has a diploma degree in mathematics, and was part and full time employed by [[https://g10code.com][g10^code]] to work on GnuPG and related software from 2001 to 2012 and for 7 months in 2017. He is - a founding member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] + a founding member of the [[../verein/index.org][GnuPG e.V.]] #+HTML:

@@ -80,7 +80,7 @@ project in 2011 and soon took over the development of the smartcard related code. He is also the person behind the [[http://www.fsij.org/gnuk/][Gnuk Token]] and the [[http://www.gniibe.org/memo/development/gnuk/rng/please-more-and-more-mep.html][MEP game]]. Niibe?s work on GnuPG is financially supported by - g10^code. He is a founding member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] + g10^code. He is a founding member of the [[../verein/index.org][GnuPG e.V.]] #+HTML:

@@ -107,7 +107,7 @@ Neal started to work on GnuPG in 2015 to support maintenance and development in all areas. We was full time employed by g10^code - from 2015 to 2017. He is a founding member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] + from 2015 to 2017. He is a founding member of the [[../verein/index.org][GnuPG e.V.]] #+HTML:

@@ -121,7 +121,7 @@ Kai is working on the [[https://enigmail.net][Enigmail]] project since 2015. He was part time employed by g10^code from 2015 to 2017. He is a founding - member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] + member of the [[../verein/index.org][GnuPG e.V.]] #+HTML:

@@ -135,7 +135,7 @@ Justus started to work on GnuPG in 2015 to support maintenance and development in all areas. We was full time employed by g10^code - from 2015 to 2017. He is a founding member of the [[file:~/s/gnupg-doc/web/verein/index.org][GnuPG e.V.]] + from 2015 to 2017. He is a founding member of the [[../verein/index.org][GnuPG e.V.]] #+HTML:

----------------------------------------------------------------------- Summary of changes: web/people/index.org | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 21 14:40:49 2017 From: cvs at cvs.gnupg.org (by Ben McGinnes) Date: Thu, 21 Sep 2017 14:40:49 +0200 Subject: [git] GPGME - branch, ben/xml, updated. gpgme-1.6.0-20-g549c845 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, ben/xml has been updated via 549c845f9d8f540508b4c8e7513ec7b6ed63352d (commit) via 06e064d1d4766e7a1badf88fc1ee4cf68e3d7a51 (commit) from 6e9d5a5800fa8da96c706748bf60a8a074818af6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 549c845f9d8f540508b4c8e7513ec7b6ed63352d Author: Ben McGinnes Date: Thu Sep 21 22:33:38 2017 +1000 HTML. * Very basic descriptions and links to the schema, Relax-NG NS and DTDs. * Content of this directory can be uploaded to a relevant url on the webserver at some point and thus will allow setting a specific URL (to the end point in the .htaccess file) in the XML files subsrquently used. diff --git a/lang/xml-schemas/gpgmekeys.html b/lang/xml-schemas/gpgmekeys.html new file mode 100644 index 0000000..1820274 --- /dev/null +++ b/lang/xml-schemas/gpgmekeys.html @@ -0,0 +1,18 @@ + + + + XML Schema for GPGME Keys + + +

XML Schema and NS for GPGME Keys

+

XML Schema, Relax NG and DTDs for GPGMEKeys XML files.

+

XML Schema for GPGME Keys

+

GPGME Keys XML Schema.

+

Relax-NG NS for GPGME Keys

+

GPGME Keys NS.

+

Compact Relax-NG NS for GPGME Keys

+

GPGME Keys Compact NS.

+

DTD for GPGME Keys

+

GPGME Keys DTD.

+ + \ No newline at end of file commit 06e064d1d4766e7a1badf88fc1ee4cf68e3d7a51 Author: Ben McGinnes Date: Thu Sep 21 22:32:11 2017 +1000 redirect * 301 redirect so that hits to the schema or xmlns URL loads the wev page. diff --git a/lang/xml-schemas/.htaccess b/lang/xml-schemas/.htaccess new file mode 100644 index 0000000..5954fd3 --- /dev/null +++ b/lang/xml-schemas/.htaccess @@ -0,0 +1 @@ +redirect 301 gpgmekeys gpgmekeys.html ----------------------------------------------------------------------- Summary of changes: lang/xml-schemas/.htaccess | 1 + lang/xml-schemas/gpgmekeys.html | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 lang/xml-schemas/.htaccess create mode 100644 lang/xml-schemas/gpgmekeys.html hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 21 14:55:49 2017 From: cvs at cvs.gnupg.org (by Ben McGinnes) Date: Thu, 21 Sep 2017 14:55:49 +0200 Subject: [git] GPGME - branch, ben/xml, updated. gpgme-1.6.0-21-g3e01537 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, ben/xml has been updated via 3e01537c7c789d3231a1b8efc5de2bb82dbe522d (commit) from 549c845f9d8f540508b4c8e7513ec7b6ed63352d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3e01537c7c789d3231a1b8efc5de2bb82dbe522d Author: Ben McGinnes Date: Thu Sep 21 22:53:30 2017 +1000 Notes * Updated notes about generated documentation and deployment on the gnupg.org webserver (eventually). diff --git a/lang/xml-schemas/README.txt b/lang/xml-schemas/README.txt index 70975d8..43edea9 100644 --- a/lang/xml-schemas/README.txt +++ b/lang/xml-schemas/README.txt @@ -1,6 +1,6 @@ -=========== -XML Schemas -=========== +========================== +XML Schemas and Name Space +========================== The XML schemas in this directory are available under the same terms as GPGME (i.e. the GPL 2 or later or the LGPL 2.1 or later), or @@ -27,3 +27,15 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + +---------------------------- +Documentation and Deployment +---------------------------- + +Documentation generated from the schema as Docbook 5 XML output is in +the docs/ directly. this Docbook file was subsequently used to +generate XHTML documentation. + +Deployment ought to be in a new directory on the web server somewhere, +once a decision is made and bearing in mind that it must bepermanent. ----------------------------------------------------------------------- Summary of changes: lang/xml-schemas/README.txt | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Thu Sep 21 15:13:33 2017 From: cvs at cvs.gnupg.org (by Ben McGinnes) Date: Thu, 21 Sep 2017 15:13:33 +0200 Subject: [git] GPGME - branch, ben/xml, updated. gpgme-1.6.0-22-gc4531c9 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GnuPG Made Easy". The branch, ben/xml has been updated via c4531c92e378eb9ee62cc4012c32e30dc4252b2c (commit) from 3e01537c7c789d3231a1b8efc5de2bb82dbe522d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c4531c92e378eb9ee62cc4012c32e30dc4252b2c Author: Ben McGinnes Date: Thu Sep 21 23:11:16 2017 +1000 Text conv * Converted text or Markdown to Org-Mode, in line with the rest of the project. diff --git a/lang/xml-schemas/README.txt b/lang/xml-schemas/README.org similarity index 56% rename from lang/xml-schemas/README.txt rename to lang/xml-schemas/README.org index 43edea9..476bf99 100644 --- a/lang/xml-schemas/README.txt +++ b/lang/xml-schemas/README.org @@ -1,26 +1,23 @@ -========================== -XML Schemas and Name Space -========================== +* XML Schemas and Name Space -The XML schemas in this directory are available under the same terms -as GPGME (i.e. the GPL 2 or later or the LGPL 2.1 or later), or + +The XML schemas in this directory are available under the same terms as +GPGME (i.e. the GPL 2 or later or the LGPL 2.1 or later), or alternatively the Apache 2.0 license. The schemas were generated with oXygenXML Editor 17.1 (mentioning that isn't necessary, but might be helpful). --------------- -Apache license --------------- +* Apache license Copyright ? Benjamin D. McGinnes, 2016 -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at +Licensed under the Apache License, Version 2.0 (the "License"); you may +not use this file except in compliance with the License. You may obtain +a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + [[http://www.apache.org/licenses/LICENSE-2.0]] Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, @@ -29,13 +26,11 @@ See the License for the specific language governing permissions and limitations under the License. ----------------------------- -Documentation and Deployment ----------------------------- +* Documentation and Deployment Documentation generated from the schema as Docbook 5 XML output is in -the docs/ directly. this Docbook file was subsequently used to -generate XHTML documentation. +the docs/ directly. this Docbook file was subsequently used to generate +XHTML documentation. Deployment ought to be in a new directory on the web server somewhere, once a decision is made and bearing in mind that it must bepermanent. ----------------------------------------------------------------------- Summary of changes: lang/xml-schemas/{README.txt => README.org} | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) rename lang/xml-schemas/{README.txt => README.org} (56%) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Sun Sep 24 10:00:09 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Sun, 24 Sep 2017 10:00:09 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.1-2-g1e033aa Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via 1e033aa39009edcf5fe2d2bc65bdcf1cf062b38e (commit) from e1f04616e410dd31a0aa91d331817bd087093c8d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 1e033aa39009edcf5fe2d2bc65bdcf1cf062b38e Author: Werner Koch Date: Sun Sep 24 09:56:26 2017 +0200 po: Fix German translation. -- Reported-by: engelmarkus diff --git a/po/de.po b/po/de.po index 8174b34..e0f1aef 100644 --- a/po/de.po +++ b/po/de.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg-2.1.0\n" "Report-Msgid-Bugs-To: translations at gnupg.org\n" -"PO-Revision-Date: 2017-08-09 12:49+0200\n" +"PO-Revision-Date: 2017-09-24 09:55+0200\n" "Last-Translator: Werner Koch \n" "Language-Team: German \n" "Language: de\n" @@ -194,7 +194,7 @@ msgid "failed to create stream from socket: %s\n" msgstr "Das Erzeugen eines Datenstroms aus dem Socket schlug fehl: %s\n" msgid "Please insert the card with serial number" -msgstr "Die legen Sie die Karte mit der folgenden Seriennummer ein:" +msgstr "Bitte legen Sie die Karte mit der folgenden Seriennummer ein:" msgid "Please remove the current card and insert the one with serial number" msgstr "" ----------------------------------------------------------------------- Summary of changes: po/de.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 26 04:07:19 2017 From: cvs at cvs.gnupg.org (by NIIBE Yutaka) Date: Tue, 26 Sep 2017 04:07:19 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.0-13-g0a76611 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 0a76611294998ae34b9d9ebde484ef8ad3a9a3a6 (commit) from 9f5e50e7c85aa8b847d38010241ed570ac114fc3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 0a76611294998ae34b9d9ebde484ef8ad3a9a3a6 Author: NIIBE Yutaka Date: Tue Sep 26 11:02:05 2017 +0900 g10: Select a secret key by checking availability under gpg-agent. * g10/getkey.c (finish_lookup): Add WANT_SECRET argument to confirm by agent_probe_secret_key. (get_pubkey_fromfile, lookup): Supply WANT_SECRET argument. -- GnuPG-bug-id: 1967 Signed-off-by: NIIBE Yutaka diff --git a/g10/getkey.c b/g10/getkey.c index 852c532..486330a 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -144,7 +144,7 @@ static int lookup (ctrl_t ctrl, getkey_ctx_t ctx, int want_secret, kbnode_t *ret_keyblock, kbnode_t *ret_found_key); static kbnode_t finish_lookup (kbnode_t keyblock, unsigned int req_usage, int want_exact, - unsigned int *r_flags); + int want_secret, unsigned int *r_flags); static void print_status_key_considered (kbnode_t keyblock, unsigned int flags); @@ -1734,7 +1734,7 @@ get_pubkey_fromfile (ctrl_t ctrl, PKT_public_key *pk, const char *fname) /* Warning: node flag bits 0 and 1 should be preserved by * merge_selfsigs. FIXME: Check whether this still holds. */ merge_selfsigs (ctrl, keyblock); - found_key = finish_lookup (keyblock, pk->req_usage, 0, &infoflags); + found_key = finish_lookup (keyblock, pk->req_usage, 0, 0, &infoflags); print_status_key_considered (keyblock, infoflags); if (found_key) pk_from_block (pk, keyblock, found_key); @@ -3428,7 +3428,7 @@ merge_selfsigs (ctrl_t ctrl, kbnode_t keyblock) */ static kbnode_t finish_lookup (kbnode_t keyblock, unsigned int req_usage, int want_exact, - unsigned int *r_flags) + int want_secret, unsigned int *r_flags) { kbnode_t k; @@ -3570,6 +3570,13 @@ finish_lookup (kbnode_t keyblock, unsigned int req_usage, int want_exact, continue; } + if (want_secret && agent_probe_secret_key (NULL, pk)) + { + if (DBG_LOOKUP) + log_debug ("\tno secret key\n"); + continue; + } + if (DBG_LOOKUP) log_debug ("\tsubkey might be fine\n"); /* In case a key has a timestamp of 0 set, we make sure @@ -3757,7 +3764,7 @@ lookup (ctrl_t ctrl, getkey_ctx_t ctx, int want_secret, * merge_selfsigs. */ merge_selfsigs (ctrl, keyblock); found_key = finish_lookup (keyblock, ctx->req_usage, ctx->exact, - &infoflags); + want_secret, &infoflags); print_status_key_considered (keyblock, infoflags); if (found_key) { ----------------------------------------------------------------------- Summary of changes: g10/getkey.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 26 11:56:03 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 26 Sep 2017 11:56:03 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.1-3-g93a2b77 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via 93a2b7761297dc1d859126d7711abd35ba35d215 (commit) from 1e033aa39009edcf5fe2d2bc65bdcf1cf062b38e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 93a2b7761297dc1d859126d7711abd35ba35d215 Author: Werner Koch Date: Tue Sep 26 11:52:18 2017 +0200 po: Remove trailing colon from a German pinentry string. -- diff --git a/po/de.po b/po/de.po index e0f1aef..2f82d99 100644 --- a/po/de.po +++ b/po/de.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg-2.1.0\n" "Report-Msgid-Bugs-To: translations at gnupg.org\n" -"PO-Revision-Date: 2017-09-24 09:55+0200\n" +"PO-Revision-Date: 2017-09-26 11:51+0200\n" "Last-Translator: Werner Koch \n" "Language-Team: German \n" "Language: de\n" @@ -194,7 +194,7 @@ msgid "failed to create stream from socket: %s\n" msgstr "Das Erzeugen eines Datenstroms aus dem Socket schlug fehl: %s\n" msgid "Please insert the card with serial number" -msgstr "Bitte legen Sie die Karte mit der folgenden Seriennummer ein:" +msgstr "Bitte legen Sie die Karte mit der folgenden Seriennummer ein" msgid "Please remove the current card and insert the one with serial number" msgstr "" ----------------------------------------------------------------------- Summary of changes: po/de.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue Sep 26 12:32:08 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 26 Sep 2017 12:32:08 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.1-17-gcd2d758 Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via cd2d758f3f9e0007ecd6bae9d2ee0d631773e237 (commit) via 93a2b7761297dc1d859126d7711abd35ba35d215 (commit) via 1e033aa39009edcf5fe2d2bc65bdcf1cf062b38e (commit) via e1f04616e410dd31a0aa91d331817bd087093c8d (commit) via 355ca9e9498740fb6294eec451507b4891ae01ec (commit) via df692a6167be5486f9a29da003a00292fd895176 (commit) via 9588dd116c0118f31fc33dc09a1d08125ab8cdc9 (commit) via 50c8b6c88f5d9f4b6c4e9c03aee31fe29afa94b8 (commit) via 7f7f5d06fa5aa3a3c5ab8d2e59ee76207bfdeaa0 (commit) via a0035986a8615df056182bb9af775b8b7b22003d (commit) via 4e0696de897cac6a34d55a69d8889faf26f1a923 (commit) via 006ca124ed95845d43af8c14d7ab2bc085b47b4c (commit) via a821b4f5567d02c3329c2b94a73dcbe12e6699a2 (commit) via 332c9eaa2a3c7cae90b389cdaa2c149c5595fb4d (commit) via 8b5a2474f21dd4f1aa2a283e2f57d75e42742af5 (commit) via c65a7bba7331975d20910f90cf648b6ecc5410f0 (commit) via 7d15ee88980f88ca62fc7de9492dd08e54d0f0f1 (commit) via a172759b5088ae086c0caa2e7d4d0ea346b28a90 (commit) via 827abe01a72a50eab1cdcde78985b42a4a8480fb (commit) via 7089dcc54099a4909ce7d386c07ab87e1398e2eb (commit) via 9e3d41bf727fcf12f7cf05926890c687125c2902 (commit) from 0a76611294998ae34b9d9ebde484ef8ad3a9a3a6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit cd2d758f3f9e0007ecd6bae9d2ee0d631773e237 Merge: 0a76611 93a2b77 Author: Werner Koch Date: Tue Sep 26 12:00:03 2017 +0200 Merge branch 'STABLE-BRANCH-2-2' into master -- Signed-off-by: Werner Koch Conflicts: NEWS - include release info from 2.2.1 configure.ac - keep master. diff --cc NEWS index 37ebd3f,2dd4e53..6cf076d --- a/NEWS +++ b/NEWS @@@ -1,11 -1,28 +1,30 @@@ -Noteworthy changes in version 2.2.2 (unreleased) +Noteworthy changes in version 2.3.0 (unreleased) ------------------------------------------------ - -Noteworthy changes in version 2.2.1 (2017-09-19) ------------------------------------------------- ++ Changes also found in 2.2.1: - * Release dates of 2.2.x versions: - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Version 2.2.1 (unreleased) + * gpg: Fix formatting of the user id in batch mode key generation + if only "name-email" is given. + + * gpgv: Fix annoying "not suitable for" warnings. + + * wks: Convey only the newest user id to the provider. This is the + case if different names are used with the same addr-spec. + + * wks: Create a complying user id for provider policy mailbox-only. + + * wks: Add workaround for posteo.de. + + * scd: Fix the use of large ECC keys with an OpenPGP card. + + * dirmngr: Use system provided root certificates if no specific HKP + certificates are configured. If build with GNUTLS, this was + already the case. + ++ Release dates of 2.2.x versions: ++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ++ Version 2.2.1 (2017-09-19) + Noteworthy changes in version 2.2.0 (2017-08-28) ------------------------------------------------ ----------------------------------------------------------------------- Summary of changes: NEWS | 27 ++++- dirmngr/certcache.c | 18 +++- dirmngr/certcache.h | 3 + dirmngr/http-ntbtls.c | 6 ++ doc/wks.texi | 4 +- g10/gpgv.c | 1 + g10/keygen.c | 9 +- po/de.po | 4 +- po/el.po | 15 +-- tools/gpg-wks-client.c | 283 ++++++++++++++++++++++++++++++++++++++++--------- tools/gpg-wks-server.c | 50 ++++----- tools/gpg-wks.h | 18 +++- tools/mime-maker.c | 13 ++- tools/mime-maker.h | 2 + tools/wks-util.c | 174 +++++++++++++++++++++++++++--- 15 files changed, 513 insertions(+), 114 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 27 10:01:30 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 27 Sep 2017 10:01:30 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.1-20-gecbbafb Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via ecbbafb88d920e713439b6b1b8e1b41a6f8d0e38 (commit) via 76c80021d4da0755dbb04bd5d42f32015cba0b9a (commit) via 6aa4478c78cb34cf3d0ae5c752525110947bd247 (commit) from cd2d758f3f9e0007ecd6bae9d2ee0d631773e237 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ecbbafb88d920e713439b6b1b8e1b41a6f8d0e38 Author: Werner Koch Date: Wed Sep 27 09:42:13 2017 +0200 gpg: Prepare for a longer fingerprint * g10/card-util.c (change_cafpr): Use MAX_FINGERPRINT_LEN. * g10/cipher.c (write_header): Use snprintf. * g10/gpg.h (MAX_FINGERPRINT_LEN): Change to 32. (MAX_FORMATTED_FINGERPRINT_LEN): Change to 59 * g10/keyid.c (format_hexfingerprint): Add v5 fingerprint format. * g10/tofu.c (get_policy): Use MAX_FINGERPRINT_LEN for the buffer but keep the raw length for now. -- Note that this patch only increases the size of the buffer and adds a new formatting for v5 fingerprints. Moe work is required to fix internal data structures like those in trustdb.gpg and the tofu tables. Signed-off-by: Werner Koch diff --git a/g10/card-util.c b/g10/card-util.c index 62b2a67..790f95e 100644 --- a/g10/card-util.c +++ b/g10/card-util.c @@ -1121,7 +1121,8 @@ change_cafpr (int fprno) char *data; const char *s; int i, c, rc; - unsigned char fpr[20]; + unsigned char fpr[MAX_FINGERPRINT_LEN]; + int fprlen; data = cpr_get ("cardedit.change_cafpr", _("CA fingerprint: ")); if (!data) @@ -1129,7 +1130,7 @@ change_cafpr (int fprno) trim_spaces (data); cpr_kill_prompt (); - for (i=0, s=data; i < 20 && *s; ) + for (i=0, s=data; i < MAX_FINGERPRINT_LEN && *s; ) { while (spacep(s)) s++; @@ -1143,8 +1144,9 @@ change_cafpr (int fprno) fpr[i++] = c; s += 2; } + fprlen = i; xfree (data); - if (i != 20 || *s) + if ((fprlen != 20 && fprlen != 32) || *s) { tty_printf (_("Error: invalid formatted fingerprint.\n")); return -1; @@ -1152,7 +1154,7 @@ change_cafpr (int fprno) rc = agent_scd_setattr (fprno==1?"CA-FPR-1": fprno==2?"CA-FPR-2": - fprno==3?"CA-FPR-3":"x", fpr, 20, NULL ); + fprno==3?"CA-FPR-3":"x", fpr, fprlen, NULL ); if (rc) log_error ("error setting cafpr: %s\n", gpg_strerror (rc)); write_sc_op_status (rc); diff --git a/g10/cipher.c b/g10/cipher.c index 655937f..7031d93 100644 --- a/g10/cipher.c +++ b/g10/cipher.c @@ -66,7 +66,7 @@ write_header( cipher_filter_context_t *cfx, IOBUF a ) { char buf[20]; - sprintf (buf, "%d %d", ed.mdc_method, cfx->dek->algo); + snprintf (buf, sizeof buf, "%d %d", ed.mdc_method, cfx->dek->algo); write_status_text (STATUS_BEGIN_ENCRYPTION, buf); } diff --git a/g10/gpg.h b/g10/gpg.h index 9b8b77c..03fe384 100644 --- a/g10/gpg.h +++ b/g10/gpg.h @@ -38,14 +38,15 @@ #define MAX_EXTERN_MPI_BITS 16384 /* The maximum length of a binary fingerprints. This is used to - provide a static buffer and will be increased if we need to support - longer fingerprints. - Warning: At some places we still use 20 instead of this macro. */ -#define MAX_FINGERPRINT_LEN 20 + * provide a static buffer and will be increased if we need to support + * longer fingerprints. Warning: At some places we have some + * assumption on a 20 byte fingerprint. + * Watch out for FIXME(fingerprint) */ +#define MAX_FINGERPRINT_LEN 32 /* The maximum length of a formatted fingerprint as returned by - format_hexfingerprint(). */ -#define MAX_FORMATTED_FINGERPRINT_LEN 50 + * format_hexfingerprint(). */ +#define MAX_FORMATTED_FINGERPRINT_LEN 59 /* diff --git a/g10/keyid.c b/g10/keyid.c index de38580..78a5b0b 100644 --- a/g10/keyid.c +++ b/g10/keyid.c @@ -835,8 +835,22 @@ format_hexfingerprint (const char *fingerprint, char *buffer, size_t buflen) /* Half way through we add a second space. */ + 1); } + else if (hexlen == 64 || hexlen == 50) /* v5 fingerprint */ + { + /* The v5 fingerprint is commonly printed truncated to 25 + * octets. We accept the truncated as well as the full hex + * version here and format it like this: + * B2CCB6 838332 5D61BA C50F9F 5E CD21A8 0AC8C5 2565C8 C52565 + */ + hexlen = 50; + space = 8 * 6 + 2 + 8 + 1; + } else /* Other fingerprint versions - print as is. */ { + /* We truncated here so that we do not need to provide a buffer + * of a length which is in reality never used. */ + if (hexlen > MAX_FORMATTED_FINGERPRINT_LEN - 1) + hexlen = MAX_FORMATTED_FINGERPRINT_LEN - 1; space = hexlen + 1; } @@ -849,7 +863,7 @@ format_hexfingerprint (const char *fingerprint, char *buffer, size_t buflen) { for (i = 0, j = 0; i < 40; i ++) { - if (i && i % 4 == 0) + if (i && !(i % 4)) buffer[j ++] = ' '; if (i == 40 / 2) buffer[j ++] = ' '; @@ -859,9 +873,29 @@ format_hexfingerprint (const char *fingerprint, char *buffer, size_t buflen) buffer[j ++] = 0; log_assert (j == space); } + else if (hexlen == 50) /* v5 fingerprint */ + { + for (i=j=0; i < 24; i++) + { + if (i && !(i % 6)) + buffer[j++] = ' '; + buffer[j++] = fingerprint[i]; + } + buffer[j++] = ' '; + buffer[j++] = fingerprint[i++]; + buffer[j++] = fingerprint[i++]; + for (; i < 50; i++) + { + if (!((i-26) % 6)) + buffer[j++] = ' '; + buffer[j++] = fingerprint[i]; + } + buffer[j++] = 0; + log_assert (j == space); + } else { - strcpy (buffer, fingerprint); + mem2str (buffer, fingerprint, space); } return buffer; diff --git a/g10/keylist.c b/g10/keylist.c index 86d1c56..dccae91 100644 --- a/g10/keylist.c +++ b/g10/keylist.c @@ -1906,6 +1906,9 @@ print_card_serialno (const char *serialno) * pub dsa2048 2007-12-31 [SC] [expires: 2018-12-31] * 80615870F5BAD690333686D0F2AD85AC1E42B367 * + * pub rsa2048 2017-12-31 [SC] [expires: 2028-12-31] + * 80615870F5BAD690333686D0F2AD85AC1E42B3671122334455 + * * Some global options may result in a different output format. If * SECRET is set, "sec" or "ssb" is used instead of "pub" or "sub" and * depending on the value a flag character is shown: diff --git a/g10/sig-check.c b/g10/sig-check.c index 63c38a6..f8e366b 100644 --- a/g10/sig-check.c +++ b/g10/sig-check.c @@ -233,7 +233,7 @@ check_signature2 (ctrl_t ctrl, unsigned char *p, *buffer; size_t n, nbytes; int i; - char hashbuf[20]; + char hashbuf[20]; /* We use SHA-1 here. */ nbytes = 6; for (i=0; i < nsig; i++ ) diff --git a/g10/tdbdump.c b/g10/tdbdump.c index 5ea903f..37bf78b 100644 --- a/g10/tdbdump.c +++ b/g10/tdbdump.c @@ -129,7 +129,7 @@ import_ownertrust (ctrl_t ctrl, const char *fname ) char *p; size_t n, fprlen; unsigned int otrust; - byte fpr[20]; + byte fpr[MAX_FINGERPRINT_LEN]; int any = 0; int rc; @@ -171,7 +171,7 @@ import_ownertrust (ctrl_t ctrl, const char *fname ) continue; } fprlen = p - line; - if( fprlen != 32 && fprlen != 40 ) { + if( fprlen != 32 && fprlen != 40 && fprlen != 64) { log_error (_("error in '%s': %s\n"), fname, _("invalid fingerprint") ); continue; @@ -183,10 +183,12 @@ import_ownertrust (ctrl_t ctrl, const char *fname ) } if( !otrust ) continue; /* no otrust defined - no need to update or insert */ - /* convert the ascii fingerprint to binary */ - for(p=line, fprlen=0; fprlen < 20 && *p != ':'; p += 2 ) - fpr[fprlen++] = HEXTOBIN(p[0]) * 16 + HEXTOBIN(p[1]); - while (fprlen < 20) + /* Convert the ascii fingerprint to binary */ + for(p=line, fprlen=0; + fprlen < MAX_FINGERPRINT_LEN && *p != ':'; + p += 2 ) + fpr[fprlen++] = HEXTOBIN(p[0]) * 16 + HEXTOBIN(p[1]); + while (fprlen < MAX_FINGERPRINT_LEN) fpr[fprlen++] = 0; rc = tdbio_search_trust_byfpr (fpr, &rec); diff --git a/g10/tofu.c b/g10/tofu.c index c183fc6..ddd7f8c 100644 --- a/g10/tofu.c +++ b/g10/tofu.c @@ -2469,10 +2469,11 @@ get_policy (ctrl_t ctrl, tofu_dbs_t dbs, PKT_public_key *pk, /* See if the key is signed by an ultimately trusted key. */ { int fingerprint_raw_len = strlen (fingerprint) / 2; - char fingerprint_raw[20]; + char fingerprint_raw[MAX_FINGERPRINT_LEN]; int len = 0; - if (fingerprint_raw_len != sizeof fingerprint_raw + /* FIXME(fingerprint) */ + if (fingerprint_raw_len != 20 /*sizeof fingerprint_raw */ || ((len = hex2bin (fingerprint, fingerprint_raw, fingerprint_raw_len)) != strlen (fingerprint))) commit 76c80021d4da0755dbb04bd5d42f32015cba0b9a Author: Werner Koch Date: Wed Sep 27 09:33:14 2017 +0200 common: Add constant KEYGRIP_LEN. * common/util.h (KEYGRIP_LEN): New. * g10/call-agent.c (agent_probe_any_secret_key): Use that constant. * g10/keyid.c (keygrip_from_pk): Ditto. Signed-off-by: Werner Koch diff --git a/common/util.h b/common/util.h index c6d19c6..f372281 100644 --- a/common/util.h +++ b/common/util.h @@ -59,6 +59,11 @@ /* Hash function used with libksba. */ #define HASH_FNC ((void (*)(void *, const void*,size_t))gcry_md_write) +/* The length of the keygrip. This is a SHA-1 hash of the key + * parameters as generated by gcry_pk_get_keygrip. */ +#define KEYGRIP_LEN 20 + + /* Get all the stuff from jnlib. */ #include "../common/logging.h" #include "../common/argparse.h" diff --git a/g10/call-agent.c b/g10/call-agent.c index 3874ac1..684771b 100644 --- a/g10/call-agent.c +++ b/g10/call-agent.c @@ -1474,7 +1474,7 @@ agent_probe_any_secret_key (ctrl_t ctrl, kbnode_t keyblock) char *p; kbnode_t kbctx, node; int nkeys; - unsigned char grip[20]; + unsigned char grip[KEYGRIP_LEN]; err = start_agent (ctrl, 0); if (err) diff --git a/g10/keyid.c b/g10/keyid.c index c519bc5..de38580 100644 --- a/g10/keyid.c +++ b/g10/keyid.c @@ -959,18 +959,18 @@ gpg_error_t hexkeygrip_from_pk (PKT_public_key *pk, char **r_grip) { gpg_error_t err; - unsigned char grip[20]; + unsigned char grip[KEYGRIP_LEN]; *r_grip = NULL; err = keygrip_from_pk (pk, grip); if (!err) { - char * buf = xtrymalloc (20*2+1); + char * buf = xtrymalloc (KEYGRIP_LEN * 2 + 1); if (!buf) err = gpg_error_from_syserror (); else { - bin2hex (grip, 20, buf); + bin2hex (grip, KEYGRIP_LEN, buf); *r_grip = buf; } } commit 6aa4478c78cb34cf3d0ae5c752525110947bd247 Author: Werner Koch Date: Wed Sep 27 07:58:02 2017 +0200 gpg: Let --debug clock time sign and verify. * configure.ac (ENABLE_LOG_CLOCK): New ac_define and option. * common/logging.c (log_clock): Use ENABLE_LOG_CLOCK to enable timestamp printing. * g10/call-agent.c (agent_pksign): Time signing. * g10/sig-check.c (check_signature_end_simple): Time verification. -- Timing for verification is limited to data signatures because this is the most common thing to evaluate. We should consider to change log_clock to printf style so that we could print the signature class and other info. Signed-off-by: Werner Koch diff --git a/common/logging.c b/common/logging.c index c4eaca4..82b21e2 100644 --- a/common/logging.c +++ b/common/logging.c @@ -1039,11 +1039,11 @@ log_printsexp () {} is found in sexputils.c */ - +/* Print a microsecond timestamp followed by STRING. */ void log_clock (const char *string) { -#if 0 +#if ENABLE_LOG_CLOCK static unsigned long long initial; struct timespec tv; unsigned long long now; @@ -1060,10 +1060,10 @@ log_clock (const char *string) initial = now; log_debug ("[%6llu] %s", (now - initial)/1000, string); -#else - /* You need to link with -ltr to enable the above code. */ - log_debug ("[not enabled in the source] %s", string); -#endif +#else /*!ENABLE_LOG_CLOCK*/ + /* You may need to link with -ltr to use the above code. */ + log_debug ("[not enabled by configure] %s", string); +#endif /*!ENABLE_LOG_CLOCK*/ } diff --git a/configure.ac b/configure.ac index b43cb60..c479325 100644 --- a/configure.ac +++ b/configure.ac @@ -1680,6 +1680,21 @@ AC_ARG_ENABLE(optimization, fi]) # +# log_debug has certain requirements which might hamper portability. +# Thus we use an option to enable it. +# +AC_MSG_CHECKING([whether to enable log_clock]) +AC_ARG_ENABLE(log_clock, + AC_HELP_STRING([--enable-log-clock], + [enable log_clock timestamps]), + enable_log_clock=$enableval, enable_log_clock=no) +AC_MSG_RESULT($enable_log_clock) +if test "$enable_log_clock" = yes ; then + AC_DEFINE(ENABLE_LOG_CLOCK,1,[Defined to use log_clock timestamps]) +fi + + +# # Configure option --enable-all-tests # AC_MSG_CHECKING([whether "make check" shall run all tests]) diff --git a/g10/call-agent.c b/g10/call-agent.c index 545b244..3874ac1 100644 --- a/g10/call-agent.c +++ b/g10/call-agent.c @@ -1854,10 +1854,16 @@ agent_pksign (ctrl_t ctrl, const char *cache_nonce, snprintf (line, sizeof line, "PKSIGN%s%s", cache_nonce? " -- ":"", cache_nonce? cache_nonce:""); + + if (DBG_CLOCK) + log_clock ("enter signing"); err = assuan_transact (agent_ctx, line, put_membuf_cb, &data, default_inq_cb, &dfltparm, NULL, NULL); + if (DBG_CLOCK) + log_clock ("leave signing"); + if (err) xfree (get_membuf (&data, NULL)); else diff --git a/g10/sig-check.c b/g10/sig-check.c index 23af12b..63c38a6 100644 --- a/g10/sig-check.c +++ b/g10/sig-check.c @@ -510,7 +510,11 @@ check_signature_end_simple (PKT_public_key *pk, PKT_signature *sig, return GPG_ERR_GENERAL; /* Verify the signature. */ + if (DBG_CLOCK && sig->sig_class <= 0x01) + log_clock ("enter pk_verify"); rc = pk_verify( pk->pubkey_algo, result, sig->data, pk->pkey ); + if (DBG_CLOCK && sig->sig_class <= 0x01) + log_clock ("leave pk_verify"); gcry_mpi_release (result); if( !rc && sig->flags.unknown_critical ) ----------------------------------------------------------------------- Summary of changes: common/logging.c | 12 ++++++------ common/util.h | 5 +++++ configure.ac | 15 +++++++++++++++ g10/call-agent.c | 8 +++++++- g10/card-util.c | 10 ++++++---- g10/cipher.c | 2 +- g10/gpg.h | 13 +++++++------ g10/keyid.c | 44 +++++++++++++++++++++++++++++++++++++++----- g10/keylist.c | 3 +++ g10/sig-check.c | 6 +++++- g10/tdbdump.c | 14 ++++++++------ g10/tofu.c | 5 +++-- 12 files changed, 105 insertions(+), 32 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 27 17:24:03 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 27 Sep 2017 17:24:03 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.2.1-21-g98c260e Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, master has been updated via 98c260e057e7829580da99f0c8e0037a3896bfae (commit) from ecbbafb88d920e713439b6b1b8e1b41a6f8d0e38 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 98c260e057e7829580da99f0c8e0037a3896bfae Author: Werner Koch Date: Wed Sep 27 17:18:55 2017 +0200 doc: Make --check-sigs more prominent. -- It seems people are using --list-sigs instead of --check-sigs and do not realize that the signatures are not checked at all. We better highlight the use of --check-sigs to avoid this UI problem. Suggested-by: Andrew Gallagher Signed-off-by: Werner Koch diff --git a/doc/gpg.texi b/doc/gpg.texi index b6a9b2d..b14cb37 100644 --- a/doc/gpg.texi +++ b/doc/gpg.texi @@ -309,43 +309,36 @@ the key using the command @option{--export-secret-subkeys}). A @code{>} after these tags indicate that the key is stored on a smartcard. See also @option{--list-keys}. - at item --list-signatures - at opindex list-signatures - at itemx --list-sigs - at opindex list-sigs -Same as @option{--list-keys}, but the signatures are listed too. -This command has the same effect as -using @option{--list-keys} with @option{--with-sig-list}. - -For each signature listed, there are several flags in between the "sig" -tag and keyid. These flags give additional information about each -signature. From left to right, they are the numbers 1-3 for certificate -check level (see @option{--ask-cert-level}), "L" for a local or -non-exportable signature (see @option{--lsign-key}), "R" for a -nonRevocable signature (see the @option{--edit-key} command "nrsign"), -"P" for a signature that contains a policy URL (see - at option{--cert-policy-url}), "N" for a signature that contains a -notation (see @option{--cert-notation}), "X" for an eXpired signature -(see @option{--ask-cert-expire}), and the numbers 1-9 or "T" for 10 and -above to indicate trust signature levels (see the @option{--edit-key} -command "tsign"). - @item --check-signatures @opindex check-signatures @itemx --check-sigs @opindex check-sigs -Same as @option{--list-signatures}, but the signatures are verified. Note -that for performance reasons the revocation status of a signing key is -not shown. -This command has the same effect as +Same as @option{--list-keys}, but the key signatures are verified and +listed too. Note that for performance reasons the revocation status +of a signing key is not shown. This command has the same effect as using @option{--list-keys} with @option{--with-sig-check}. -The status of the verification is indicated by a flag directly following -the "sig" tag (and thus before the flags described above for - at option{--list-signatures}). A "!" indicates that the signature has been -successfully verified, a "-" denotes a bad signature and a "%" is used -if an error occurred while checking the signature (e.g. a non supported -algorithm). +The status of the verification is indicated by a flag directly +following the "sig" tag (and thus before the flags described below. A +"!" indicates that the signature has been successfully verified, a "-" +denotes a bad signature and a "%" is used if an error occurred while +checking the signature (e.g. a non supported algorithm). Signatures +where the public key is not availabale are not listed; to see their +keyids the command @option{--list-sigs} can be used. + +For each signature listed, there are several flags in between the +signature status flag and keyid. These flags give additional +information about each key signature. From left to right, they are +the numbers 1-3 for certificate check level (see + at option{--ask-cert-level}), "L" for a local or non-exportable +signature (see @option{--lsign-key}), "R" for a nonRevocable signature +(see the @option{--edit-key} command "nrsign"), "P" for a signature +that contains a policy URL (see @option{--cert-policy-url}), "N" for a +signature that contains a notation (see @option{--cert-notation}), "X" +for an eXpired signature (see @option{--ask-cert-expire}), and the +numbers 1-9 or "T" for 10 and above to indicate trust signature levels +(see the @option{--edit-key} command "tsign"). + @item --locate-keys @opindex locate-keys @@ -360,7 +353,7 @@ be used to locate a key. Only public keys are listed. List all keys (or the specified ones) along with their fingerprints. This is the same output as @option{--list-keys} but with the additional output of a line with the fingerprint. May also be -combined with @option{--list-signatures} or @option{--check-signatures}. If this +combined with @option{--check-signatures}. If this command is given twice, the fingerprints of all secondary keys are listed too. This command also forces pretty printing of fingerprints if the keyid format has been set to "none". @@ -1254,7 +1247,7 @@ Assume "no" on most questions. @opindex list-options This is a space or comma delimited string that gives options used when listing keys and signatures (that is, @option{--list-keys}, - at option{--list-signatures}, @option{--list-public-keys}, + at option{--check-signatures}, @option{--list-public-keys}, @option{--list-secret-keys}, and the @option{--edit-key} functions). Options can be prepended with a @option{no-} (after the two dashes) to give the opposite meaning. The options are: @@ -1263,7 +1256,7 @@ give the opposite meaning. The options are: @item show-photos @opindex list-options:show-photos - Causes @option{--list-keys}, @option{--list-signatures}, + Causes @option{--list-keys}, @option{--check-signatures}, @option{--list-public-keys}, and @option{--list-secret-keys} to display any photo IDs attached to the key. Defaults to no. See also @option{--photo-viewer}. Does not work with @option{--with-colons}: @@ -1279,7 +1272,7 @@ give the opposite meaning. The options are: @item show-policy-urls @opindex list-options:show-policy-urls - Show policy URLs in the @option{--list-signatures} or @option{--check-signatures} + Show policy URLs in the @option{--check-signatures} listings. Defaults to no. @item show-notations @@ -1289,11 +1282,11 @@ give the opposite meaning. The options are: @opindex list-options:show-std-notations @opindex list-options:show-user-notations Show all, IETF standard, or user-defined signature notations in the - @option{--list-signatures} or @option{--check-signatures} listings. Defaults to no. + @option{--check-signatures} listings. Defaults to no. @item show-keyserver-urls @opindex list-options:show-keyserver-urls - Show any preferred keyserver URL in the @option{--list-signatures} or + Show any preferred keyserver URL in the @option{--check-signatures} listings. Defaults to no. @item show-uid-validity @@ -1316,7 +1309,7 @@ give the opposite meaning. The options are: @item show-sig-expire @opindex list-options:show-sig-expire - Show signature expiration dates (if any) during @option{--list-signatures} or + Show signature expiration dates (if any) during @option{--check-signatures} listings. Defaults to no. @item show-sig-subpackets @@ -1325,7 +1318,7 @@ give the opposite meaning. The options are: optional argument list of the subpackets to list. If no argument is passed, list all subpackets. Defaults to no. This option is only meaningful when using @option{--with-colons} along with - @option{--list-signatures} or @option{--check-signatures}. + @option{--check-signatures}. @end table @@ -3224,6 +3217,16 @@ verification is not needed. Print key listings delimited by colons (like @option{--with-colons}) and print the public key data. + at item --list-signatures + at opindex list-signatures + at itemx --list-sigs + at opindex list-sigs +Same as @option{--list-keys}, but the signatures are listed too. This +command has the same effect as using @option{--list-keys} with + at option{--with-sig-list}. Note that in contrast to + at option{--check-signatures} the key signatures are not verified. + + @item --fast-list-mode @opindex fast-list-mode Changes the output of the list commands to work faster; this is achieved ----------------------------------------------------------------------- Summary of changes: doc/gpg.texi | 81 +++++++++++++++++++++++++++++++----------------------------- 1 file changed, 42 insertions(+), 39 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed Sep 27 17:28:13 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 27 Sep 2017 17:28:13 +0200 Subject: [git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.1-4-ge725c4d Message-ID: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The GNU Privacy Guard". The branch, STABLE-BRANCH-2-2 has been updated via e725c4d65335d18dea6b855726ee7c57afd4a60a (commit) from 93a2b7761297dc1d859126d7711abd35ba35d215 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit e725c4d65335d18dea6b855726ee7c57afd4a60a Author: Werner Koch Date: Wed Sep 27 17:18:55 2017 +0200 doc: Make --check-sigs more prominent. -- It seems people are using --list-sigs instead of --check-sigs and do not realize that the signatures are not checked at all. We better highlight the use of --check-sigs to avoid this UI problem. Suggested-by: Andrew Gallagher Signed-off-by: Werner Koch diff --git a/doc/gpg.texi b/doc/gpg.texi index b6a9b2d..b14cb37 100644 --- a/doc/gpg.texi +++ b/doc/gpg.texi @@ -309,43 +309,36 @@ the key using the command @option{--export-secret-subkeys}). A @code{>} after these tags indicate that the key is stored on a smartcard. See also @option{--list-keys}. - at item --list-signatures - at opindex list-signatures - at itemx --list-sigs - at opindex list-sigs -Same as @option{--list-keys}, but the signatures are listed too. -This command has the same effect as -using @option{--list-keys} with @option{--with-sig-list}. - -For each signature listed, there are several flags in between the "sig" -tag and keyid. These flags give additional information about each -signature. From left to right, they are the numbers 1-3 for certificate -check level (see @option{--ask-cert-level}), "L" for a local or -non-exportable signature (see @option{--lsign-key}), "R" for a -nonRevocable signature (see the @option{--edit-key} command "nrsign"), -"P" for a signature that contains a policy URL (see - at option{--cert-policy-url}), "N" for a signature that contains a -notation (see @option{--cert-notation}), "X" for an eXpired signature -(see @option{--ask-cert-expire}), and the numbers 1-9 or "T" for 10 and -above to indicate trust signature levels (see the @option{--edit-key} -command "tsign"). - @item --check-signatures @opindex check-signatures @itemx --check-sigs @opindex check-sigs -Same as @option{--list-signatures}, but the signatures are verified. Note -that for performance reasons the revocation status of a signing key is -not shown. -This command has the same effect as +Same as @option{--list-keys}, but the key signatures are verified and +listed too. Note that for performance reasons the revocation status +of a signing key is not shown. This command has the same effect as using @option{--list-keys} with @option{--with-sig-check}. -The status of the verification is indicated by a flag directly following -the "sig" tag (and thus before the flags described above for - at option{--list-signatures}). A "!" indicates that the signature has been -successfully verified, a "-" denotes a bad signature and a "%" is used -if an error occurred while checking the signature (e.g. a non supported -algorithm). +The status of the verification is indicated by a flag directly +following the "sig" tag (and thus before the flags described below. A +"!" indicates that the signature has been successfully verified, a "-" +denotes a bad signature and a "%" is used if an error occurred while +checking the signature (e.g. a non supported algorithm). Signatures +where the public key is not availabale are not listed; to see their +keyids the command @option{--list-sigs} can be used. + +For each signature listed, there are several flags in between the +signature status flag and keyid. These flags give additional +information about each key signature. From left to right, they are +the numbers 1-3 for certificate check level (see + at option{--ask-cert-level}), "L" for a local or non-exportable +signature (see @option{--lsign-key}), "R" for a nonRevocable signature +(see the @option{--edit-key} command "nrsign"), "P" for a signature +that contains a policy URL (see @option{--cert-policy-url}), "N" for a +signature that contains a notation (see @option{--cert-notation}), "X" +for an eXpired signature (see @option{--ask-cert-expire}), and the +numbers 1-9 or "T" for 10 and above to indicate trust signature levels +(see the @option{--edit-key} command "tsign"). + @item --locate-keys @opindex locate-keys @@ -360,7 +353,7 @@ be used to locate a key. Only public keys are listed. List all keys (or the specified ones) along with their fingerprints. This is the same output as @option{--list-keys} but with the additional output of a line with the fingerprint. May also be -combined with @option{--list-signatures} or @option{--check-signatures}. If this +combined with @option{--check-signatures}. If this command is given twice, the fingerprints of all secondary keys are listed too. This command also forces pretty printing of fingerprints if the keyid format has been set to "none". @@ -1254,7 +1247,7 @@ Assume "no" on most questions. @opindex list-options This is a space or comma delimited string that gives options used when listing keys and signatures (that is, @option{--list-keys}, - at option{--list-signatures}, @option{--list-public-keys}, + at option{--check-signatures}, @option{--list-public-keys}, @option{--list-secret-keys}, and the @option{--edit-key} functions). Options can be prepended with a @option{no-} (after the two dashes) to give the opposite meaning. The options are: @@ -1263,7 +1256,7 @@ give the opposite meaning. The options are: @item show-photos @opindex list-options:show-photos - Causes @option{--list-keys}, @option{--list-signatures}, + Causes @option{--list-keys}, @option{--check-signatures}, @option{--list-public-keys}, and @option{--list-secret-keys} to display any photo IDs attached to the key. Defaults to no. See also @option{--photo-viewer}. Does not work with @option{--with-colons}: @@ -1279,7 +1272,7 @@ give the opposite meaning. The options are: @item show-policy-urls @opindex list-options:show-policy-urls - Show policy URLs in the @option{--list-signatures} or @option{--check-signatures} + Show policy URLs in the @option{--check-signatures} listings. Defaults to no. @item show-notations @@ -1289,11 +1282,11 @@ give the opposite meaning. The options are: @opindex list-options:show-std-notations @opindex list-options:show-user-notations Show all, IETF standard, or user-defined signature notations in the - @option{--list-signatures} or @option{--check-signatures} listings. Defaults to no. + @option{--check-signatures} listings. Defaults to no. @item show-keyserver-urls @opindex list-options:show-keyserver-urls - Show any preferred keyserver URL in the @option{--list-signatures} or + Show any preferred keyserver URL in the @option{--check-signatures} listings. Defaults to no. @item show-uid-validity @@ -1316,7 +1309,7 @@ give the opposite meaning. The options are: @item show-sig-expire @opindex list-options:show-sig-expire - Show signature expiration dates (if any) during @option{--list-signatures} or + Show signature expiration dates (if any) during @option{--check-signatures} listings. Defaults to no. @item show-sig-subpackets @@ -1325,7 +1318,7 @@ give the opposite meaning. The options are: optional argument list of the subpackets to list. If no argument is passed, list all subpackets. Defaults to no. This option is only meaningful when using @option{--with-colons} along with - @option{--list-signatures} or @option{--check-signatures}. + @option{--check-signatures}. @end table @@ -3224,6 +3217,16 @@ verification is not needed. Print key listings delimited by colons (like @option{--with-colons}) and print the public key data. + at item --list-signatures + at opindex list-signatures + at itemx --list-sigs + at opindex list-sigs +Same as @option{--list-keys}, but the signatures are listed too. This +command has the same effect as using @option{--list-keys} with + at option{--with-sig-list}. Note that in contrast to + at option{--check-signatures} the key signatures are not verified. + + @item --fast-list-mode @opindex fast-list-mode Changes the output of the list commands to work faster; this is achieved ----------------------------------------------------------------------- Summary of changes: doc/gpg.texi | 81 +++++++++++++++++++++++++++++++----------------------------- 1 file changed, 42 insertions(+), 39 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org