From cvs at cvs.gnupg.org Tue May 2 09:47:07 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 02 May 2017 09:47:07 +0200 Subject: [git] gnupg-doc - branch, master, updated. 7fd7f497302b09fa2cd9712a4ef37fa31804a9b9 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 7fd7f497302b09fa2cd9712a4ef37fa31804a9b9 (commit) from 7c3501ad6a01da2e7dbbc15da4eea9f5cf5de023 (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 7fd7f497302b09fa2cd9712a4ef37fa31804a9b9 Author: Werner Koch Date: Tue May 2 09:43:59 2017 +0200 web: Update the list of donations diff --git a/web/donate/kudos.org b/web/donate/kudos.org index f8d3b1a..bc16540 100644 --- a/web/donate/kudos.org +++ b/web/donate/kudos.org @@ -6,7 +6,7 @@ * Donation Summary -*** This year +*** Individual donations this year #+BEGIN_HTML @@ -16,39 +16,56 @@ *** Previous years -| Year | # | \EUR | net \EUR | -| | | | | -|------+------+--------+----------| -| 2015 | 5846 | 295405 | 283537 | -| 2014 | 801 | 34700 | 30305 | -| 2013 | 148 | 5041 | 4145 | -| 2012 | 53 | 5991 | 4963 | -| 2011 | 21 | 553 | 465 | -|------+------+--------+----------| -| | | 341690 | 323415 | -#+TBLFM: $LR3=vsum(@I.. at II)::$LR4=vsum(@I.. at II) +| Year | # | Indi. | Corp. | Total \EUR | +| | | | | | +|------+------+--------+--------+------------| +| 2016 | 271 | 9615 | 146759 | 156374 | +| 2015 | 5847 | 205560 | 144262 | 337954 | +| 2014 | 801 | 34700 | | 30305 | +| 2013 | 148 | 37682 | | 31470 | +| 2012 | 53 | 5991 | | 4963 | +| 2011 | 21 | 553 | | 465 | +|------+------+--------+--------+------------| +| | | 351305 | 351305 | 323415 | +#+TBLFM: $LR3=vsum(@I.. at II)::$LR4=vsum(@I.. at II)::$LR5=vsum(@I.. at II) #+HTML:
-The "net" column gives the actual value without taxes and banking fees.\\ -#+HTML:
- -The [[https://gnupg.org/blog/20140512-rewards-sent.html][Goteo crowdfunding]] campaign raised an additional -32641\thinsp\euro (27429 net) in December 2013. -# Goteo transferred that money in March 2014 in 6 chunks: -# 11423, 6000, 5000, 5000, 5218 = 32641 - -# About 2014: -# Some of the 801 donations from 2014 have been hold back by Stripe -# over the end of the year and thus VAT was only payable in 2015. -# That VAT is not included in the net amount for 2014. The net amount -# received from individual donations in 2014 have been 2525, 919, 541, -# 26320 Euro per quarter. - -# About 2015: -# | Individual Donations in 2015 | 5844 | 205560 | 193692 | -# | Facebook+Stripe in 2015 | 2 | 89845 | 89845 | -# |------------------------------+------+--------+--------| -# | | 5846 | 295405 | 283537 | +/Indi./ lists individual donations, /Corp./ lists large corporate +donations and grants, and /Total/ gives the net value without taxes +and banking fees. Note that this list has been updated on 2017-05-02 +to include the Linux Foundation grant. The /Total/ for 2016 is +preliminary. + +About 2016:\\ +| Individual Donations | 268 | 9615 | | +| Facebook | 1 | 44715 | 44715 | +| Stripe | 1 | 47824 | 47824 | +| Linux Foundation | 1 | 54220 | 54220 | +|----------------------+-----+--------+--------| +| | 271 | 156374 | 146759 | + +About 2015:\\ +| Individual Donations | 5844 | 205560 | 193692 | +| Facebook | 1 | 44213 | 44213 | +| Stripe | 1 | 45633 | 45633 | +| Linux Foundation | 1 | 54416 | 54416 | +|----------------------+------+--------+--------| +| | 5847 | 349822 | 337954 | + +About 2014:\\ +Some of the 801 donations from 2014 have been hold back by Stripe +over the end of the year and thus VAT was only payable in 2015. +That VAT is not included in the net amount for 2014. The net amount +received from individual donations in 2014 have been 2525, 919, 541, +26320 Euro per quarter. + +About 2013:\\ +The [[https://gnupg.org/blog/20140512-rewards-sent.html][Goteo crowdfunding]] campaign raised 32641 Euro (27429 net) in +December 2013. Goteo transferred that money in March 2014 in 6 +chunks: 11423, 6000, 5000, 5000, 5218. The total amount is +however listed for 2013 along with 148 individual donations of 5041 +Euro (4041 net) received before the start of the Goteo Campaign. +#+HTML: * List of Donors ----------------------------------------------------------------------- Summary of changes: web/donate/kudos.org | 81 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 49 insertions(+), 32 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue May 2 11:59:48 2017 From: cvs at cvs.gnupg.org (by Daniel Kahn Gillmor) Date: Tue, 02 May 2017 11:59:48 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-102-g201f868 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 201f86803017c1db373023f7b506d4a0dc644bbc (commit) from 5c8fe5480964c282540c051b538e812851988422 (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 201f86803017c1db373023f7b506d4a0dc644bbc Author: Daniel Kahn Gillmor Date: Mon Apr 17 10:51:55 2017 -0400 g10: Remove skeleton options files. * build-aux/speed/w32/inst.nsi: stop installing skeleton files. * doc/gpg.texi: stop documenting skeleton files. * g10/Makefile.am: stop installing skeleton files. * g10/openfile.c (copy_options_file): Remove. (try_make_homedir): do not call copy_options_file. -- The defaults for gpg and dirmngr are good. Both programs should work fine for the simple case without any config file. The skeleton config files were being copied at first use (when the defaults are fine). But when the user needs to fiddle with them (after they've become sophisticated users), they're likely out of date because gpg has been upgraded since then. So they're used for documentation, but they're stale documentation, which is probably worse than a clean empty file. GnuPG-bug-id: 3086 Signed-off-by: Daniel Kahn Gillmor diff --git a/build-aux/speedo/w32/inst.nsi b/build-aux/speedo/w32/inst.nsi index b4d6994..7716f7f 100644 --- a/build-aux/speedo/w32/inst.nsi +++ b/build-aux/speedo/w32/inst.nsi @@ -608,8 +608,6 @@ Section "GnuPG" SEC_gnupg Rename /REBOOTOK scdaemon.exe.tmp scdaemon.exe SetOutPath "$INSTDIR\share\gnupg" - File "share/gnupg/gpg-conf.skel" - File "share/gnupg/dirmngr-conf.skel" File "share/gnupg/distsigkey.gpg" File "share/gnupg/sks-keyservers.netCA.pem" diff --git a/doc/gpg.texi b/doc/gpg.texi index c0d7cc4..aa55cb8 100644 --- a/doc/gpg.texi +++ b/doc/gpg.texi @@ -3480,10 +3480,6 @@ files; They all live in the current home directory (@pxref{option You should backup all files in this directory and take care to keep this backup closed away. - @item @value{DATADIR}/options.skel - @efindex options.skel - The skeleton options file. - @end table Operation is further controlled by a few environment variables: diff --git a/g10/Makefile.am b/g10/Makefile.am index 4b806ec..e6a173d 100644 --- a/g10/Makefile.am +++ b/g10/Makefile.am @@ -18,7 +18,7 @@ ## Process this file with automake to produce Makefile.in -EXTRA_DIST = options.skel dirmngr-conf.skel distsigkey.gpg \ +EXTRA_DIST = distsigkey.gpg \ ChangeLog-2011 gpg-w32info.rc \ gpg.w32-manifest.in test.c t-keydb-keyring.kbx \ t-keydb-get-keyblock.gpg t-stutter-data.asc @@ -240,18 +240,12 @@ install-exec-hook: install-data-local: $(mkinstalldirs) $(DESTDIR)$(pkgdatadir) - $(INSTALL_DATA) $(srcdir)/options.skel \ - $(DESTDIR)$(pkgdatadir)/gpg-conf.skel - $(INSTALL_DATA) $(srcdir)/dirmngr-conf.skel \ - $(DESTDIR)$(pkgdatadir)/dirmngr-conf.skel $(INSTALL_DATA) $(srcdir)/distsigkey.gpg \ $(DESTDIR)$(pkgdatadir)/distsigkey.gpg # NB: For uninstalling gpg and gpgv we use -local because there is # no need for a specific order the targets need to be run. uninstall-local: - - at rm $(DESTDIR)$(pkgdatadir)/gpg-conf.skel - - at rm $(DESTDIR)$(pkgdatadir)/dirmngr-conf.skel - at rm $(DESTDIR)$(pkgdatadir)/distsigkey.gpg - at files=`for p in $(gpg2_hack_uninst); do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ diff --git a/g10/dirmngr-conf.skel b/g10/dirmngr-conf.skel deleted file mode 100644 index e2885e6..0000000 --- a/g10/dirmngr-conf.skel +++ /dev/null @@ -1,73 +0,0 @@ -# dirmngr-conf.skel - Skeleton to create dirmngr.conf. -# (Note that the first three lines are not copied.) -# -# dirmngr.conf - Options for Dirmngr -# Written in 2015 by The GnuPG Project -# -# To the extent possible under law, the authors have dedicated all -# copyright and related and neighboring rights to this file to the -# public domain worldwide. This file is distributed without any -# warranty. You should have received a copy of the CC0 Public Domain -# Dedication along with this file. If not, see -# . -# -# -# Unless you specify which option file to use (with the command line -# option "--options filename"), the file ~/.gnupg/dirmngr.conf is used -# by dirmngr. The file can contain any long options which are valid -# for Dirmngr. If the first non white space character of a line is a -# '#', the line is ignored. Empty lines are also ignored. See the -# dirmngr man page or the manual for a list of options. -# - -# --keyserver URI -# -# GPG can send and receive keys to and from a keyserver. These -# servers can be HKP, Email, or LDAP (if GnuPG is built with LDAP -# support). -# -# Example HKP keyservers: -# hkp://keys.gnupg.net -# -# Example HKP keyserver using a Tor OnionBalance service -# hkp://jirk5u4osbsr34t5.onion -# -# Example HKPS keyservers (see --hkp-cacert below): -# hkps://hkps.pool.sks-keyservers.net -# -# Example LDAP keyservers: -# ldap://pgp.surfnet.nl:11370 -# -# Regular URL syntax applies, and you can set an alternate port -# through the usual method: -# hkp://keyserver.example.net:22742 -# -# Note that most servers (with the notable exception of -# ldap://keyserver.pgp.com) synchronize changes with each other. Note -# also that a single server name may actually point to multiple -# servers via DNS round-robin or service records. -# -# If exactly two keyservers are configured and only one is a Tor hidden -# service, Dirmngr selects the keyserver to use depending on whether -# Tor is locally running or not (on a per session base). Example: -# -# keyserver hkp://jirk5u4osbsr34t5.onion -# keyserver hkps://hkps.pool.sks-keyservers.net -# -# If no keyserver is specified GnuPG uses -# hkps://hkps.pool.sks-keyservers.net - - -# --hkp-cacert FILENAME -# -# For the "hkps" scheme (keyserver access over TLS), Dirmngr needs to -# know the root certificates for verification of the TLS certificates -# used for the connection. Enter the full name of a file with the -# root certificates here. If that file is in PEM format a ".pem" -# suffix is expected. This option may be given multiple times to add -# more root certificates. Tilde expansion is supported. -# This is not required when the default server -# hkps://hkps.pool.sks-keyservers.net -# is used. - -#hkp-cacert /path/to/CA/sks-keyservers.netCA.pem diff --git a/g10/openfile.c b/g10/openfile.c index 80d86cf..78f4dbb 100644 --- a/g10/openfile.c +++ b/g10/openfile.c @@ -36,12 +36,6 @@ #include "../common/status.h" #include "../common/i18n.h" -#ifdef USE_ONLY_8DOT3 -#define SKELEXT ".skl" -#else -#define SKELEXT EXTSEP_S "skel" -#endif - #ifdef HAVE_W32_SYSTEM #define NAME_OF_DEV_NULL "nul" #else @@ -373,93 +367,6 @@ open_sigfile (const char *sigfilename, progress_filter_context_t *pfx) } -/**************** - * Copy the option file skeleton for NAME to the given directory. - * Returns true if the new option file has any option. - */ -static int -copy_options_file (const char *destdir, const char *name) -{ - const char *datadir = gnupg_datadir (); - char *fname; - FILE *src, *dst; - int linefeeds=0; - int c; - mode_t oldmask; - int esc = 0; - int any_option = 0; - - if (opt.dry_run) - return 0; - - fname = xstrconcat (datadir, DIRSEP_S, name, "-conf", SKELEXT, NULL); - src = fopen (fname, "r"); - if (src && is_secured_file (fileno (src))) - { - fclose (src); - src = NULL; - gpg_err_set_errno (EPERM); - } - if (!src) - { - log_info (_("can't open '%s': %s\n"), fname, strerror(errno)); - xfree(fname); - return 0; - } - xfree (fname); - fname = xstrconcat (destdir, DIRSEP_S, name, EXTSEP_S, "conf", NULL); - - oldmask = umask (077); - if (is_secured_filename (fname)) - { - dst = NULL; - gpg_err_set_errno (EPERM); - } - else - dst = fopen( fname, "w" ); - umask (oldmask); - - if (!dst) - { - log_info (_("can't create '%s': %s\n"), fname, strerror(errno) ); - fclose (src); - xfree (fname); - return 0; - } - - while ((c = getc (src)) != EOF) - { - if (linefeeds < 3) - { - if (c == '\n') - linefeeds++; - } - else - { - putc (c, dst); - if (c== '\n') - esc = 1; - else if (esc == 1) - { - if (c == ' ' || c == '\t') - ; - else if (c == '#') - esc = 2; - else - any_option = 1; - } - } - } - - fclose (dst); - fclose (src); - - log_info (_("new configuration file '%s' created\n"), fname); - xfree (fname); - return any_option; -} - - void try_make_homedir (const char *fname) { @@ -489,15 +396,6 @@ try_make_homedir (const char *fname) fname, strerror(errno) ); else if (!opt.quiet ) log_info ( _("directory '%s' created\n"), fname ); - - /* Note that we also copy a dirmngr.conf file here. This is - because gpg is likely the first invoked tool and thus creates - the directory. */ - copy_options_file (fname, DIRMNGR_NAME); - if (copy_options_file (fname, GPG_NAME)) - log_info (_("WARNING: options in '%s'" - " are not yet active during this run\n"), - fname); } } diff --git a/g10/options.skel b/g10/options.skel deleted file mode 100644 index 87fc627..0000000 --- a/g10/options.skel +++ /dev/null @@ -1,139 +0,0 @@ -# These first three lines are not copied to the gpg.conf file in -# the users home directory. -# $Id$ -# Options for GnuPG -# Copyright 1998-2003, 2010 Free Software Foundation, Inc. -# Copyright 1998-2003, 2010 Werner Koch -# -# This file is free software; as a special exception the author gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# This file is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Unless you specify which option file to use (with the command line -# option "--options filename"), GnuPG uses the file ~/.gnupg/gpg.conf -# by default. -# -# An options file can contain any long options which are available in -# GnuPG. If the first non white space character of a line is a '#', -# this line is ignored. Empty lines are also ignored. -# -# See the gpg man page for a list of options. - - -# If you have more than 1 secret key in your keyring, you may want to -# uncomment the following option and set your preferred keyid. - -#default-key 621CC013 - - -# If you do not pass a recipient to gpg, it will ask for one. Using -# this option you can encrypt to a default key. Key validation will -# not be done in this case. The second form uses the default key as -# default recipient. - -#default-recipient some-user-id -#default-recipient-self - - -# Group names may be defined like this: -# group mynames = paige 0x12345678 joe patti -# -# Any time "mynames" is a recipient (-r or --recipient), it will be -# expanded to the names "paige", "joe", and "patti", and the key ID -# "0x12345678". Note there is only one level of expansion - you -# cannot make an group that points to another group. Note also that -# if there are spaces in the recipient name, this will appear as two -# recipients. In these cases it is better to use the key ID. - -#group mynames = paige 0x12345678 joe patti - - -# GnuPG can automatically locate and retrieve keys as needed using -# this option. This happens when encrypting to an email address (in -# the "user@@example.com" form) and there are no keys matching -# "user at example.com" in the local keyring. This option takes any -# number mechanisms which are tried in the given order. The default -# is "--auto-key-locate local" to search for keys only in the local -# key database. Uncomment the next line to locate a missing key using -# two DNS based mechanisms. - -#auto-key-locate local,pka,dane - - -# Common options for keyserver functions: -# (Note that the --keyserver option has been moved to dirmngr.conf) -# -# include-disabled = when searching, include keys marked as "disabled" -# on the keyserver (not all keyservers support this). -# -# no-include-revoked = when searching, do not include keys marked as -# "revoked" on the keyserver. -# -# verbose = show more information as the keys are fetched. -# Can be used more than once to increase the amount -# of information shown. -# -# auto-key-retrieve = automatically fetch keys as needed from the keyserver -# when verifying signatures or when importing keys that -# have been revoked by a revocation key that is not -# present on the keyring. -# -# no-include-attributes = do not include attribute IDs (aka "photo IDs") -# when sending keys to the keyserver. - -#keyserver-options auto-key-retrieve - - -# Uncomment this line to display photo user IDs in key listings and -# when a signature from a key with a photo is verified. - -#show-photos - - -# Use this program to display photo user IDs -# -# %i is expanded to a temporary file that contains the photo. -# %I is the same as %i, but the file isn't deleted afterwards by GnuPG. -# %k is expanded to the key ID of the key. -# %K is expanded to the long OpenPGP key ID of the key. -# %t is expanded to the extension of the image (e.g. "jpg"). -# %T is expanded to the MIME type of the image (e.g. "image/jpeg"). -# %f is expanded to the fingerprint of the key. -# %% is %, of course. -# -# If %i or %I are not present, then the photo is supplied to the -# viewer on standard input. If your platform supports it, standard -# input is the best way to do this as it avoids the time and effort in -# generating and then cleaning up a secure temp file. -# -# The default program is "xloadimage -fork -quiet -title 'KeyID 0x%k' stdin" -# On Mac OS X and Windows, the default is to use your regular JPEG image -# viewer. -# -# Some other viewers: -# photo-viewer "qiv %i" -# photo-viewer "ee %i" -# photo-viewer "display -title 'KeyID 0x%k'" -# -# This one saves a copy of the photo ID in your home directory: -# photo-viewer "cat > ~/photoid-for-key-%k.%t" -# -# Use your MIME handler to view photos: -# photo-viewer "metamail -q -d -b -c %T -s 'KeyID 0x%k' -f GnuPG" - - -# Because some mailers change lines starting with "From " to ">From " -# it is good to handle such lines in a special way when creating -# cleartext signatures; all other PGP versions do it this way too. -# To enable full OpenPGP compliance you may want to use this option. - -#no-escape-from-lines - - -# Uncomment the following option to get rid of the copyright notice - -#no-greeting ----------------------------------------------------------------------- Summary of changes: build-aux/speedo/w32/inst.nsi | 2 - doc/gpg.texi | 4 -- g10/Makefile.am | 8 +-- g10/dirmngr-conf.skel | 73 ---------------------- g10/openfile.c | 102 ------------------------------- g10/options.skel | 139 ------------------------------------------ 6 files changed, 1 insertion(+), 327 deletions(-) delete mode 100644 g10/dirmngr-conf.skel delete mode 100644 g10/options.skel hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Tue May 2 15:24:21 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 02 May 2017 15:24:21 +0200 Subject: [git] gnupg-doc - branch, master, updated. cfd38b44f761922cfacdeabca994f692c52a9f5b 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 cfd38b44f761922cfacdeabca994f692c52a9f5b (commit) from 7fd7f497302b09fa2cd9712a4ef37fa31804a9b9 (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 cfd38b44f761922cfacdeabca994f692c52a9f5b Author: Werner Koch Date: Tue May 2 15:21:19 2017 +0200 web: Use prose instead of tables to explain the donations. diff --git a/web/donate/kudos.org b/web/donate/kudos.org index bc16540..e776ed0 100644 --- a/web/donate/kudos.org +++ b/web/donate/kudos.org @@ -29,41 +29,47 @@ | | | 351305 | 351305 | 323415 | #+TBLFM: $LR3=vsum(@I.. at II)::$LR4=vsum(@I.. at II)::$LR5=vsum(@I.. at II) #+HTML:
-/Indi./ lists individual donations, /Corp./ lists large corporate -donations and grants, and /Total/ gives the net value without taxes -and banking fees. Note that this list has been updated on 2017-05-02 -to include the Linux Foundation grant. The /Total/ for 2016 is -preliminary. - -About 2016:\\ -| Individual Donations | 268 | 9615 | | -| Facebook | 1 | 44715 | 44715 | -| Stripe | 1 | 47824 | 47824 | -| Linux Foundation | 1 | 54220 | 54220 | -|----------------------+-----+--------+--------| -| | 271 | 156374 | 146759 | - -About 2015:\\ -| Individual Donations | 5844 | 205560 | 193692 | -| Facebook | 1 | 44213 | 44213 | -| Stripe | 1 | 45633 | 45633 | -| Linux Foundation | 1 | 54416 | 54416 | -|----------------------+------+--------+--------| -| | 5847 | 349822 | 337954 | - -About 2014:\\ -Some of the 801 donations from 2014 have been hold back by Stripe -over the end of the year and thus VAT was only payable in 2015. -That VAT is not included in the net amount for 2014. The net amount -received from individual donations in 2014 have been 2525, 919, 541, -26320 Euro per quarter. - -About 2013:\\ -The [[https://gnupg.org/blog/20140512-rewards-sent.html][Goteo crowdfunding]] campaign raised 32641 Euro (27429 net) in -December 2013. Goteo transferred that money in March 2014 in 6 -chunks: 11423, 6000, 5000, 5000, 5218. The total amount is -however listed for 2013 along with 148 individual donations of 5041 -Euro (4041 net) received before the start of the Goteo Campaign. +Legend: ?Indi.? indicates individual donations, ?Corp.? lists large +corporate donations and grants, and ?Total? gives the net value +without taxes and banking fees. Note that this list has been updated +on 2017-05-02 to include the Linux Foundation grant. Note further +that the ?Total? for 2016 is preliminary. + +# About 2016:\\ +# | Individual Donations | 268 | 9615 | | +# | Facebook | 1 | 44715 | 44715 | +# | Stripe | 1 | 47824 | 47824 | +# | Linux Foundation | 1 | 54220 | 54220 | +# |----------------------+-----+--------+--------| +# | | 271 | 156374 | 146759 | +In 2016 we had 268 individual donations summing up to 9615 Euro, we +received 50000 USD each from Facebook and Stripe resulting in 92539 +Euro, and 60000 USD (54220 Euro) from the Linux Foundation. + +# About 2015:\\ +# | Individual Donations | 5844 | 205560 | 193692 | +# | Facebook | 1 | 44213 | 44213 | +# | Stripe | 1 | 45633 | 45633 | +# | Linux Foundation | 1 | 54416 | 54416 | +# |----------------------+------+--------+--------| +# | | 5847 | 349822 | 337954 | +In 2015 we had 5844 individual donations summing up to 205560 Euro +(193692 net), we received 50000 USD each from Facebook and Stripe +resulting in 89846 Euro, and 60000 USD (54416 Euro) from the Linux +Foundation. + +In 2014 we had 901 individual donations dumming up to 34700 Euro +(30305 net). Some of the donations have been hold back by Stripe over +the end of the year and thus VAT was only payable in 2015. That VAT +is not included in the net amount for 2014. The net amount received +from individual donations in 2014 have been 2525, 919, 541, 26320 Euro +per quarter. + +In 2013 the [[https://gnupg.org/blog/20140512-rewards-sent.html][Goteo]] campaign raised 32641 Euro (27429 net) in December. +Goteo transferred that money in March 2014 in 6 chunks: 11423, 6000, +5000, 5000, 5218. The total amount is however listed for 2013 along +with 148 individual donations of 5041 Euro (4041 net) received before +the start of the Goteo campaign. #+HTML:
----------------------------------------------------------------------- Summary of changes: web/donate/kudos.org | 76 ++++++++++++++++++++++++++++------------------------ 1 file changed, 41 insertions(+), 35 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Tue May 2 16:27:10 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Tue, 02 May 2017 16:27:10 +0200 Subject: [git] gnupg-doc - branch, master, updated. 5580a638b4f265e8d957289b59dc6656a33b9d50 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 5580a638b4f265e8d957289b59dc6656a33b9d50 (commit) from cfd38b44f761922cfacdeabca994f692c52a9f5b (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 5580a638b4f265e8d957289b59dc6656a33b9d50 Author: Werner Koch Date: Tue May 2 16:24:11 2017 +0200 web: Fix totals of the donation table I forgot to hit C-c C-c to update the spreadsheet. diff --git a/web/donate/kudos.org b/web/donate/kudos.org index e776ed0..f819cb9 100644 --- a/web/donate/kudos.org +++ b/web/donate/kudos.org @@ -26,8 +26,9 @@ | 2012 | 53 | 5991 | | 4963 | | 2011 | 21 | 553 | | 465 | |------+------+--------+--------+------------| -| | | 351305 | 351305 | 323415 | +| | | 294101 | 291021 | 561531 | #+TBLFM: $LR3=vsum(@I.. at II)::$LR4=vsum(@I.. at II)::$LR5=vsum(@I.. at II) + #+HTML:
Legend: ?Indi.? indicates individual donations, ?Corp.? lists large corporate donations and grants, and ?Total? gives the net value ----------------------------------------------------------------------- Summary of changes: web/donate/kudos.org | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 3 12:13:39 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Wed, 03 May 2017 12:13:39 +0200 Subject: [git] Pinentry - branch, master, updated. pinentry-1.0.0-20-g4101806 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 standard pinentry collection". The branch, master has been updated via 4101806bf73caf25c8ce4e455b154901da1fe788 (commit) via 8bf41fe086438de9fa223ccf4162ed9d98e54646 (commit) from 5c3f796798d655b5583257f9dfc81ae9c1427fb3 (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 4101806bf73caf25c8ce4e455b154901da1fe788 Author: Andre Heinecke Date: Wed May 3 11:49:09 2017 +0200 qt: Improve width of pinentryconfirm * qt/pinentryconfirm.cpp (PinentryConfirm::showEvent): Add spacer item for text width. -- This fixes a pinentry-qt4 bug where part of the text might have been hidden. And improves the layout for pinentry-qt5 where the fingerprint will no longer be wordwrapped. Needs to be done in the show event because only there we have the icon available. diff --git a/qt/pinentryconfirm.cpp b/qt/pinentryconfirm.cpp index 8b59d9d..50c19a4 100644 --- a/qt/pinentryconfirm.cpp +++ b/qt/pinentryconfirm.cpp @@ -19,6 +19,9 @@ #include "pinentryconfirm.h" #include "pinentrydialog.h" #include +#include +#include +#include PinentryConfirm::PinentryConfirm(Icon icon, int timeout, const QString &title, const QString &desc, StandardButtons buttons, QWidget *parent) : @@ -44,6 +47,18 @@ bool PinentryConfirm::timedOut() const void PinentryConfirm::showEvent(QShowEvent *event) { + static bool resized; + if (!resized) { + QGridLayout* lay = dynamic_cast (layout()); + if (lay) { + QSize textSize = fontMetrics().size(Qt::TextExpandTabs, text(), fontMetrics().maxWidth()); + QSpacerItem* horizontalSpacer = new QSpacerItem(textSize.width() + iconPixmap().width(), + 0, QSizePolicy::Minimum, QSizePolicy::Expanding); + lay->addItem(horizontalSpacer, lay->rowCount(), 1, 1, lay->columnCount() - 1); + } + resized = true; + } + QDialog::showEvent(event); raiseWindow(this); } commit 8bf41fe086438de9fa223ccf4162ed9d98e54646 Author: Andre Heinecke Date: Wed May 3 11:48:16 2017 +0200 qt: Fix build with Qt4 * qt/main.cpp (main): Don't use Q_NULLPTR. diff --git a/qt/main.cpp b/qt/main.cpp index 40d0a5b..7d1a264 100644 --- a/qt/main.cpp +++ b/qt/main.cpp @@ -312,7 +312,7 @@ main(int argc, char *argv[]) { pinentry_init("pinentry-qt"); - QApplication *app = Q_NULLPTR; + QApplication *app = NULL; #ifdef FALLBACK_CURSES if (!pinentry_have_display(argc, argv)) { ----------------------------------------------------------------------- Summary of changes: qt/main.cpp | 2 +- qt/pinentryconfirm.cpp | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) hooks/post-receive -- The standard pinentry collection http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 3 13:39:00 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 03 May 2017 13:39:00 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 99318e6ea1fa5c07c4f8829cd71ae92344d1c144 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, preview has been updated via 99318e6ea1fa5c07c4f8829cd71ae92344d1c144 (commit) from df62925eb36ad7d2908a9d1f991703d33a530816 (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 99318e6ea1fa5c07c4f8829cd71ae92344d1c144 Author: Werner Koch Date: Wed May 3 13:36:02 2017 +0200 web: Add hack to allow creating a plain page. Not tested! diff --git a/web/donate/index.org b/web/donate/index.org index b1b383c..de59bf1 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -5,49 +5,21 @@ # 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. +# Note: These special comments are used +# custom-head-section - Neither a meta tag for a stylesheet is +# inserted nor the and . +# disable-menu - No menu is generated. +#+BEGIN_HTML + -* Donate - - Maintaining and improving GnuPG is costly. For more than a decade, - [[https://g10code.com][g10^code]] GmbH, a company owned and headed by GnuPG's principal - author Werner Koch, is bearing the majority of these costs. To help - them carry on this work, they need your support. Note that despite - GnuPG carries an [[https://www.fsf.org][FSF]] copyright notice, they never funded the - development or hosting costs. - - If you are using [[../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. - -** Ways to donate - - Paying using a credit card is currently our preferred choice. If - you have a Paypal account you may use that too. - - Because the GnuPG project is not tax exempted, we are not able to - send you a respective donation receipt. If you can benefit from a - donation receipt by a Germany charity you may donate to the GnuPG - account at the [[https://www.wauland.de/en/donation.html#61][Wau Holland Stiftung]]; they will use the money raised - to pay for development work on GnuPG and Enigmail. If you want to - be listed on our [[https://www.gnupg.org/donate/kudos.html][thank you]] page you should indicate this by adding a - comment of the form =List me as: NAME= to your donation. - - If you like to donate Bitcoins you may use the [[https://www.wauland.de/en/donation.html#61][Wau Holland Stiftung]] - account too. - - If you represent a company, you may also enter into a support - contract with [[https://g10code.com][g10^code]] or ask for other service options. - -** Donation form - To process your donation we need to collect some information. This - information is only used for the purpose of the donation and no data - will ever be send to any entity not directly involved in the - donation process. Not giving a name makes the donation ?anonymous? - in that the name won?t be listed on the public [[https://www.gnupg.org/donate/kudos.html][thank you]] page. + -#+BEGIN_HTML
@@ -169,6 +141,8 @@
+ + #+END_HTML ** Recent donors diff --git a/web/share/gpgweb.el b/web/share/gpgweb.el index d992d55..46bbcdd 100644 --- a/web/share/gpgweb.el +++ b/web/share/gpgweb.el @@ -81,10 +81,14 @@ if not available." - +") +(goto-char (point-min)) +(unless (search-forward "" nil t) + (goto point-max) + (insert " -")) +"))) (defconst gpgweb-gnupg-menu-alist '(("/index.html" @@ -399,7 +403,9 @@ to create the previous and Next links for an entry." (title (gpgweb-publish-find-title orgfile))) ;; Insert header, menu, and footer. (gpgweb-insert-header title committed-at) - (gpgweb-insert-menu fname-2) + (goto-char (point-min)) + (unless (search-forward "" nil t) + (gpgweb-insert-menu fname-2)) (if blogmode (gpgweb-fixup-blog plist (file-name-nondirectory orgfile) ----------------------------------------------------------------------- Summary of changes: web/donate/index.org | 52 +++++++++++++--------------------------------------- web/share/gpgweb.el | 12 +++++++++--- 2 files changed, 22 insertions(+), 42 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 3 14:50:14 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Wed, 03 May 2017 14:50:14 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-103-gcacfd4b 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 cacfd4bce94704b531f68ee76fb40789e44fde67 (commit) from 201f86803017c1db373023f7b506d4a0dc644bbc (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 cacfd4bce94704b531f68ee76fb40789e44fde67 Author: Andre Heinecke Date: Wed May 3 14:40:16 2017 +0200 speedo,w32: Allow installation as normal user * build-aux/speedo/w32/g4wihelp.c (ENV_HK_USER, ENV_REG_USER): New defines. (path_add): Handle is_user_install variable. Don't abort if Path reg key does not exist. Fix crash if Path reg key does not contain a semicolon. (path_remove): Handle is_user_install variable. Fix crash if Path reg key does not exist. * build-aux/speedo/w32/inst.nsi: Remove obsolete HAVE_STARTMENU this was double guarded with WITH_GUI. Add Multiuser plugin and defines for this. Use SHCTX instead of HKLM / HKCU. (PrintNonAdminWarning): Only Warn and don't abort. -- The default is still to install as Adminstrator system wide but the user now has the option to explicitly install GnuPG without Administrator rights. A warning will be shown in that case but a user may continue. A per user install is by default under %LOCALAPPDATA%\GnuPG Related Task: T2971 Signed-off-by: Andre Heinecke diff --git a/build-aux/speedo/w32/g4wihelp.c b/build-aux/speedo/w32/g4wihelp.c index 012e4af..d62d036 100644 --- a/build-aux/speedo/w32/g4wihelp.c +++ b/build-aux/speedo/w32/g4wihelp.c @@ -964,10 +964,8 @@ read_w32_registry_string (HKEY root, const char *dir, const char *name) #define ENV_REG "SYSTEM\\CurrentControlSet\\Control\\" \ "Session Manager\\Environment" /* The following setting can be used for a per-user setting. */ -#if 0 -#define ENV_HK HKEY_CURRENT_USER -#define ENV_REG "Environment" -#endif +#define ENV_HK_USER HKEY_CURRENT_USER +#define ENV_REG_USER "Environment" /* Due to a bug in Windows7 (kb 2685893) we better put a lower limit than 8191 on the maximum length of the PATH variable. Note, that depending on the used toolchain we used to had a 259 byte limit in @@ -979,12 +977,16 @@ path_add (HWND hwndParent, int string_size, char *variables, stack_t **stacktop, extra_parameters_t *extra) { char dir[PATH_LENGTH_LIMIT]; + char is_user_install[2]; char *path; char *path_new; int path_new_size; char *comp; const char delims[] = ";"; + int is_user; HKEY key_handle = 0; + HKEY root_key; + const char *env_reg; g_hwndParent = hwndParent; EXDLL_INIT(); @@ -997,13 +999,26 @@ path_add (HWND hwndParent, int string_size, char *variables, if (popstring (dir, sizeof (dir))) return; -/* MessageBox (g_hwndParent, "XXX 2", 0, MB_OK); */ + /* The expected stack layout: HKEY component. */ + if (popstring (is_user_install, sizeof (is_user_install))) + return; + + if (!strcmp(is_user_install, "1")) + { + root_key = ENV_HK_USER; + env_reg = ENV_REG_USER; + } + else + { + root_key = ENV_HK; + env_reg = ENV_REG; + } + + path = read_w32_registry_string (root_key, env_reg, "Path"); - path = read_w32_registry_string (ENV_HK, ENV_REG, "Path"); if (! path) { - MessageBox (g_hwndParent, "No PATH variable found", 0, MB_OK); - return; + path = strdup (""); } /* MessageBox (g_hwndParent, "XXX 3", 0, MB_OK); */ @@ -1041,6 +1056,8 @@ path_add (HWND hwndParent, int string_size, char *variables, do { /* MessageBox (g_hwndParent, comp, 0, MB_OK); */ + if (!comp) + break; if (!strcmp (comp, dir)) { @@ -1053,10 +1070,8 @@ path_add (HWND hwndParent, int string_size, char *variables, while (comp); free (path); -/* MessageBox (g_hwndParent, "XXX 8", 0, MB_OK); */ - - /* Set a key for our CLSID. */ - RegCreateKey (ENV_HK, ENV_REG, &key_handle); + /* Update the path key. */ + RegCreateKey (root_key, env_reg, &key_handle); RegSetValueEx (key_handle, "Path", 0, REG_EXPAND_SZ, path_new, path_new_size); RegCloseKey (key_handle); @@ -1074,6 +1089,7 @@ path_remove (HWND hwndParent, int string_size, char *variables, stack_t **stacktop, extra_parameters_t *extra) { char dir[PATH_LENGTH_LIMIT]; + char is_user_install[2]; char *path; char *path_new; int path_new_size; @@ -1082,6 +1098,8 @@ path_remove (HWND hwndParent, int string_size, char *variables, HKEY key_handle = 0; int changed = 0; int count = 0; + HKEY root_key; + const char *env_reg; g_hwndParent = hwndParent; EXDLL_INIT(); @@ -1092,7 +1110,25 @@ path_remove (HWND hwndParent, int string_size, char *variables, if (popstring (dir, sizeof (dir))) return; - path = read_w32_registry_string (ENV_HK, ENV_REG, "Path"); + /* The expected stack layout: HKEY component. */ + if (popstring (is_user_install, sizeof (is_user_install))) + return; + + if (!strcmp(is_user_install, "1")) + { + root_key = ENV_HK_USER; + env_reg = ENV_REG_USER; + } + else + { + root_key = ENV_HK; + env_reg = ENV_REG; + } + + path = read_w32_registry_string (root_key, env_reg, "Path"); + + if (!path) + return; /* Old path plus semicolon plus dir plus terminating nul. */ path_new_size = strlen (path) + 1; path_new = malloc (path_new_size); @@ -1126,7 +1162,7 @@ path_remove (HWND hwndParent, int string_size, char *variables, return; /* Set a key for our CLSID. */ - RegCreateKey (ENV_HK, ENV_REG, &key_handle); + RegCreateKey (root_key, env_reg, &key_handle); RegSetValueEx (key_handle, "Path", 0, REG_EXPAND_SZ, path_new, path_new_size); RegCloseKey (key_handle); diff --git a/build-aux/speedo/w32/inst.nsi b/build-aux/speedo/w32/inst.nsi index 7716f7f..297ef06 100644 --- a/build-aux/speedo/w32/inst.nsi +++ b/build-aux/speedo/w32/inst.nsi @@ -1,5 +1,6 @@ # inst.nsi - Installer for GnuPG on Windows. -*- coding: latin-1; -*- # Copyright (C) 2005, 2014 g10 Code GmbH +# 2017 Intevation GmbH # # This file is part of GnuPG. # @@ -42,7 +43,7 @@ !define PRETTY_PACKAGE "GNU Privacy Guard" !define PRETTY_PACKAGE_SHORT "GnuPG" !define COMPANY "The GnuPG Project" -!define COPYRIGHT "Copyright (C) 2015 The GnuPG Project" +!define COPYRIGHT "Copyright (C) 2017 The GnuPG Project" !define DESCRIPTION "GnuPG: The GNU Privacy Guard for Windows" !define INSTALL_DIR "GnuPG" @@ -80,9 +81,6 @@ SetCompressor lzma # SetCompressorDictSize 8 !endif -# Include the generic parts. -!define HAVE_STARTMENU - # We use the modern UI. !include "MUI.nsh" @@ -90,6 +88,17 @@ SetCompressor lzma !include "LogicLib.nsh" !include "x64.nsh" +# We support user mode installation but prefer system wide +!define MULTIUSER_EXECUTIONLEVEL Highest +!define MULTIUSER_MUI +!define MULTIUSER_INSTALLMODE_COMMANDLINE +!define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_KEY "Software\${PACKAGE_SHORT}" +!define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_VALUENAME "" +!define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_KEY "Software\${PACKAGE_SHORT}" +!define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME "Install Directory" +!define MULTIUSER_INSTALLMODE_INSTDIR "${PACKAGE_SHORT}" +!include "MultiUser.nsh" + # Set the package name. Note that this name should not be suffixed # with the version because this would get displayed in the start menu. # Given that a slash in the name troubles Windows startmenu creation @@ -109,9 +118,6 @@ OutFile "${NAME}-${VERSION}_${BUILD_DATESTR}.exe" !endif InstallDir "$PROGRAMFILES\${INSTALL_DIR}" -InstallDirRegKey HKLM "Software\${PACKAGE_SHORT}" "Install Directory" - - # Add version information to the file properties. VIProductVersion "${PROD_VERSION}" VIAddVersionKey "ProductName" "${PRETTY_PACKAGE_SHORT} (${VERSION})" @@ -161,7 +167,7 @@ VIAddVersionKey "FileVersion" "${PROD_VERSION}" # We don't have MUI_PAGE_DIRECTORY -!ifdef HAVE_STARTMENU +!ifdef WITH_GUI Page custom CustomPageOptions @@ -169,7 +175,7 @@ Var STARTMENU_FOLDER !define MUI_PAGE_CUSTOMFUNCTION_PRE CheckIfStartMenuWanted !define MUI_STARTMENUPAGE_NODISABLE -!define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKCU" +!define MUI_STARTMENUPAGE_REGISTRY_ROOT "SHCTX" !define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\GnuPG" !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder" # We need to set the Startmenu name explicitly because a slash in the @@ -354,6 +360,8 @@ FunctionEnd # OS version without the need for an Administrator is in use. Print a # diagnostic if this is not the case and abort installation. Function PrintNonAdminWarning + Var /GLOBAL is_user_install + StrCpy $is_user_install "0" ClearErrors UserInfo::GetName IfErrors leave @@ -361,9 +369,11 @@ Function PrintNonAdminWarning UserInfo::GetAccountType Pop $1 StrCmp $1 "Admin" leave +1 - MessageBox MB_OK "$(T_AdminNeeded)" - Quit - + MessageBox MB_YESNO "$(T_AdminWanted)" IDNO exit + StrCpy $is_user_install "1" + goto leave + exit: + Quit leave: FunctionEnd @@ -446,24 +456,30 @@ LangString T_FoundExistingVersion ${LANG_GERMAN} \ eine neuere oder dieselbe Version handelt.)" LangString T_FoundExistingVersionB ${LANG_ENGLISH} \ "A version of GnuPG has already been installed on the system. \ - There will be no problem installing and thus overwriting this \ - Version. $\r$\n\ + $\r$\n\ $\r$\n\ Do you want to continue installing GnuPG?" LangString T_FoundExistingVersionB ${LANG_GERMAN} \ "Eine Version von GnuPG ist hier bereits installiert. \ - Es ist problemlos m?glich, die Installation fortzuf?hren. $\r$\n\ + $\r$\n\ $\r$\n\ M?chten die die Installation von GnuPG fortf?hren?" # From Function PrintNonAdminWarning -LangString T_AdminNeeded ${LANG_ENGLISH} \ - "Warning: Administrator permissions required for a successful installation" -LangString T_AdminNeeded ${LANG_GERMAN} \ - "Achtung: F?r eine erfolgreiche Installation werden \ - Administratorrechte ben?tigt." +LangString T_AdminWanted ${LANG_ENGLISH} \ + "Warning: It is recommended to install GnuPG system-wide with \ + administrator rights. \ + $\r$\n\ + $\r$\n\ + Do you want to continue installing GnuPG without administrator rights?" +LangString T_AdminWanted ${LANG_GERMAN} \ + "Achtung: Es wird empfohlen GnuPG systemweit mit \ + Administratorrechten zu installieren. \ + $\r$\n\ + $\r$\n\ + M?chten die die Installation von GnuPG ohne Administratorrechte fortf?hren?" # From Function PrintCloseOtherApps LangString T_CloseOtherApps ${LANG_ENGLISH} \ @@ -505,7 +521,7 @@ FunctionEnd # Input - head of the stack Function AddToPath Exch $0 - g4wihelp::path_add "$0" + g4wihelp::path_add "$0" $is_user_install StrCmp $R5 "0" add_to_path_done SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000 add_to_path_done: @@ -516,8 +532,24 @@ FunctionEnd # RemoveFromPath - Remove a given dir from the path # Input: head of the stack Function un.RemoveFromPath + ClearErrors + UserInfo::GetName + IfErrors remove_admin + Pop $0 + UserInfo::GetAccountType + Pop $1 + StrCmp $1 "Admin" remove_admin remove_user + +remove_admin: + Exch $0 + g4wihelp::path_remove "$0" "0" + goto remove_done +remove_user: Exch $0 - g4wihelp::path_remove "$0" + g4wihelp::path_remove "$0" "1" + goto remove_done + +remove_done: StrCmp $R5 "0" remove_from_path_done SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000 remove_from_path_done: @@ -540,7 +572,7 @@ Section "-gnupginst" FileWrite $0 "${VERSION}$\r$\n" FileClose $0 - WriteRegStr HKLM "Software\GnuPG" "Install Directory" $INSTDIR + WriteRegStr SHCTX "Software\GnuPG" "Install Directory" $INSTDIR # If we are reinstalling, try to kill a possible running gpa using # an already installed gpa. @@ -1381,7 +1413,7 @@ Section "-un.gnupginst" RMDir "$INSTDIR" # Clean the registry. - DeleteRegValue HKLM "Software\GNU\GnuPG" "Install Directory" + DeleteRegValue SHCTX "Software\GNU\GnuPG" "Install Directory" SectionEnd @@ -1409,8 +1441,25 @@ Function .onInit !insertmacro MUI_INSTALLOPTIONS_EXTRACT "${W32_SRCDIR}/inst-options.ini" #Call CalcDepends + + Var /GLOBAL changed_dir + # Check if the install directory was modified on the command line + StrCmp "$INSTDIR" "$PROGRAMFILES\${INSTALL_DIR}" unmodified 0 + # It is modified. Save that value. + StrCpy $changed_dir "$INSTDIR" + + # MULITUSER_INIT overwrites directory setting from command line + !insertmacro MULTIUSER_INIT + StrCpy $INSTDIR "$changed_dir" + goto initDone +unmodified: + !insertmacro MULTIUSER_INIT +initDone: FunctionEnd +Function "un.onInit" + !insertmacro MULTIUSER_UNINIT +FunctionEnd #Function .onInstFailed # Delete $TEMP\gpgspltmp.wav @@ -1439,13 +1488,6 @@ FunctionEnd !ifdef WITH_GUI Section "-startmenu" -!ifdef HAVE_STARTMENU - # Make sure that the context of the automatic variables has been set to - # the "all users" shell folder. This guarantees that the menu gets written - # for all users. We have already checked that we are running as Admin; or - # we printed a warning that installation will not succeed. - SetShellVarContext all - # Check if the start menu entries where requested. !insertmacro MUI_INSTALLOPTIONS_READ $R0 "${W32_SRCDIR}/inst-options.ini" \ "Field 2" "State" @@ -1517,7 +1559,6 @@ no_gpa_quicklaunch: no_quick_launch: -!endif SectionEnd !endif @@ -1533,30 +1574,23 @@ Section # Windows Add/Remove Programs support StrCpy $MYTMP "Software\Microsoft\Windows\CurrentVersion\Uninstall\GnuPG" - WriteRegExpandStr HKLM $MYTMP "UninstallString" '"$INSTDIR\gnupg-uninstall.exe"' - WriteRegExpandStr HKLM $MYTMP "InstallLocation" "$INSTDIR" - WriteRegStr HKLM $MYTMP "DisplayName" "${PRETTY_PACKAGE}" + WriteRegExpandStr SHCTX $MYTMP "UninstallString" '"$INSTDIR\gnupg-uninstall.exe"' + WriteRegExpandStr SHCTX $MYTMP "InstallLocation" "$INSTDIR" + WriteRegStr SHCTX $MYTMP "DisplayName" "${PRETTY_PACKAGE}" !ifdef WITH_GUI - WriteRegStr HKLM $MYTMP "DisplayIcon" "$INSTDIR\bin\gpa.exe,0" + WriteRegStr SHCTX $MYTMP "DisplayIcon" "$INSTDIR\bin\gpa.exe,0" +!else + WriteRegStr SHCTX $MYTMP "DisplayIcon" "$INSTDIR\bin\gpg.exe,0" !endif - WriteRegStr HKLM $MYTMP "DisplayVersion" "${VERSION}" - WriteRegStr HKLM $MYTMP "Publisher" "The GnuPG Project" - WriteRegStr HKLM $MYTMP "URLInfoAbout" "https://gnupg.org" - WriteRegDWORD HKLM $MYTMP "NoModify" "1" - WriteRegDWORD HKLM $MYTMP "NoRepair" "1" + WriteRegStr SHCTX $MYTMP "DisplayVersion" "${VERSION}" + WriteRegStr SHCTX $MYTMP "Publisher" "The GnuPG Project" + WriteRegStr SHCTX $MYTMP "URLInfoAbout" "https://gnupg.org" + WriteRegDWORD SHCTX $MYTMP "NoModify" "1" + WriteRegDWORD SHCTX $MYTMP "NoRepair" "1" SectionEnd - Section Uninstall - !ifdef WITH_GUI -!ifdef HAVE_STARTMENU - # Make sure that the context of the automatic variables has been set to - # the "all users" shell folder. This guarantees that the menu gets written - # for all users. We have already checked that we are running as Admin; or - # we printed a warning that installation will not succeed. - SetShellVarContext all - #--------------------------------------------------- # Delete the menu entries and any empty parent menus #--------------------------------------------------- @@ -1574,7 +1608,7 @@ Section Uninstall StrCmp $MYTMP $SMPROGRAMS startMenuDeleteLoopDone startMenuDeleteLoop startMenuDeleteLoopDone: - DeleteRegValue HKLM "Software\GNU\GnuPG" "Start Menu Folder" + DeleteRegValue SHCTX "Software\GNU\GnuPG" "Start Menu Folder" # Delete Desktop links. Delete "$DESKTOP\GPA.lnk" @@ -1587,14 +1621,13 @@ Section Uninstall no_quick_launch_uninstall: !endif -!endif Delete "$INSTDIR\gnupg-uninstall.exe" RMDir "$INSTDIR" # Clean the registry. - DeleteRegValue HKLM "Software\GnuPG" "Install Directory" - DeleteRegKey /ifempty HKLM "Software\GnuPG" + DeleteRegValue SHCTX "Software\GnuPG" "Install Directory" + DeleteRegKey /ifempty SHCTX "Software\GnuPG" # Remove Windows Add/Remove Programs support. - DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\GnuPG" + DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\GnuPG" SectionEnd ----------------------------------------------------------------------- Summary of changes: build-aux/speedo/w32/g4wihelp.c | 64 ++++++++++++++---- build-aux/speedo/w32/inst.nsi | 143 ++++++++++++++++++++++++---------------- 2 files changed, 138 insertions(+), 69 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 3 15:40:30 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Wed, 03 May 2017 15:40:30 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-105-g8a168a6 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 8a168a6d4052ec31fed77c79bb96ffdd32bf9646 (commit) via 9c6407d17e0cb9f4a370b1b83e7816577ec7d29d (commit) from cacfd4bce94704b531f68ee76fb40789e44fde67 (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 8a168a6d4052ec31fed77c79bb96ffdd32bf9646 Author: Justus Winter Date: Thu Apr 6 11:52:36 2017 +0200 gpgscm: Create and re-use frame objects. * tests/gpgscm/scheme-private.h (struct scheme): New field 'frame_freelist'. * tests/gpgscm/scheme.c (enum scheme_types): New type 'T_FRAME'. (type_to_string): Handle new type. (settype): New macro. (gc_disable): Make sure there is at least one frame in the free list. (mark): Handle frame objects. (finalize_cell): Likewise. (dump_stack_initialize): Initialize free list. (dump_stack_free): Simplify. (frame_length): New variable. (dump_stack_make_frame): New function. (frame_slots): Likewise. (frame_payload): New macro. (dump_stack_allocate_frame): New function. (dump_stack_deallocate_frame): Likewise. (dump_stack_preallocate_frame): Likewise. (_s_return): Unpack frame object and deallocate it. (s_save): Wrap state in an frame object. (dump_stack_mark): Mark the free list. -- TinySCHEME being a SECD-machine needs to push frames onto the dump stack. Previously, the dump stack was a list. This required four cells for the spine, as well as up to one additional cell to encode the current opcode. This was quite inefficient despite the fact that we recovered the spine as well as the integer cell. We introduce frame objects, which are a special variant of vectors of length four. Since the length is fixed, this frees up the length field of the vector object to store the unboxed opcode. A frame object now fits in two cells. Saving two or three cells is a mere byproduct, the performance gain comes from increased locality, unboxed opcode representation, and the ability to easily put the objects in a free list, keeping the garbage collector out of the continuous motion of the virtual machine. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h index 0ba9a53..7f92bda 100644 --- a/tests/gpgscm/scheme-private.h +++ b/tests/gpgscm/scheme-private.h @@ -122,6 +122,7 @@ pointer args; /* register for arguments of function */ pointer envir; /* stack register for current environment */ pointer code; /* register for current code */ pointer dump; /* stack register for next evaluation */ +pointer frame_freelist; #if USE_HISTORY struct history history; /* we keep track of the call history for diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 47051f2..26bb5a5 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -139,7 +139,8 @@ enum scheme_types { T_NIL = 17 << 1 | 1, T_EOF_OBJ = 18 << 1 | 1, T_SINK = 19 << 1 | 1, - T_LAST_SYSTEM_TYPE = 19 << 1 | 1 + T_FRAME = 20 << 1 | 1, + T_LAST_SYSTEM_TYPE = 20 << 1 | 1 }; static const char * @@ -166,6 +167,7 @@ type_to_string (enum scheme_types typ) case T_NIL: return "nil"; case T_EOF_OBJ: return "eof object"; case T_SINK: return "sink"; + case T_FRAME: return "frame"; } assert (! "not reached"); } @@ -174,6 +176,7 @@ type_to_string (enum scheme_types typ) #define TYPE_BITS 6 #define ADJ (1 << TYPE_BITS) #define T_MASKTYPE (ADJ - 1) + /* 0000000000111111 */ #define T_TAGGED 1024 /* 0000010000000000 */ #define T_FINALIZE 2048 /* 0000100000000000 */ #define T_SYNTAX 4096 /* 0001000000000000 */ @@ -211,6 +214,7 @@ static const struct num num_one = { 1, {1} }; /* macros for cell operations */ #define typeflag(p) ((p)->_flag) #define type(p) (typeflag(p)&T_MASKTYPE) +#define settype(p, typ) (typeflag(p) = (typeflag(p) & ~T_MASKTYPE) | (typ)) INTERFACE INLINE int is_string(pointer p) { return (type(p)==T_STRING); } #define strvalue(p) ((p)->_object._string._svalue) @@ -299,6 +303,9 @@ INTERFACE INLINE int is_promise(pointer p) { return (type(p)==T_PROMISE); } INTERFACE INLINE int is_environment(pointer p) { return (type(p)==T_ENVIRONMENT); } #define setenvironment(p) typeflag(p) = T_ENVIRONMENT +INTERFACE INLINE int is_frame(pointer p) { return (type(p) == T_FRAME); } +#define setframe(p) settype(p, T_FRAME) + #define is_atom(p) (typeflag(p)&T_ATOM) #define setatom(p) typeflag(p) |= T_ATOM #define clratom(p) typeflag(p) &= CLRATOM @@ -436,6 +443,7 @@ static pointer mk_continuation(scheme *sc, pointer d); static pointer reverse(scheme *sc, pointer term, pointer list); static pointer reverse_in_place(scheme *sc, pointer term, pointer list); static pointer revappend(scheme *sc, pointer a, pointer b); +static void dump_stack_preallocate_frame(scheme *sc); static void dump_stack_mark(scheme *); struct op_code_info { char name[31]; /* strlen ("call-with-current-continuation") + 1 */ @@ -867,7 +875,8 @@ gc_reservation_failure(struct scheme *sc) "insufficient reservation\n") #else fprintf(stderr, - "insufficient reservation in line %d\n", + "insufficient %s reservation in line %d\n", + sc->frame_freelist == sc->NIL ? "frame" : "cell", sc->reserved_lineno); #endif abort(); @@ -893,7 +902,15 @@ _gc_disable(struct scheme *sc, size_t reserve, int lineno) sc->inhibit_gc += 1; } #define gc_disable(sc, reserve) \ - _gc_disable (sc, reserve, __LINE__) + do { \ + if (sc->frame_freelist == sc->NIL) { \ + if (gc_enabled(sc)) \ + dump_stack_preallocate_frame(sc); \ + else \ + gc_reservation_failure(sc); \ + } \ + _gc_disable (sc, reserve, __LINE__); \ + } while (0) /* Enable the garbage collector. */ #define gc_enable(sc) \ @@ -917,7 +934,12 @@ _gc_disable(struct scheme *sc, size_t reserve, int lineno) #else /* USE_GC_LOCKING */ -#define gc_disable(sc, reserve) (void) 0 +#define gc_reservation_failure(sc) (void) 0 +#define gc_disable(sc, reserve) \ + do { \ + if (sc->frame_freelist == sc->NIL) \ + dump_stack_preallocate_frame(sc); \ + } while (0) #define gc_enable(sc) (void) 0 #define gc_enabled(sc) 1 #define gc_consume(sc) (void) 0 @@ -1284,8 +1306,6 @@ INTERFACE pointer mk_character(scheme *sc, int c) { #if USE_SMALL_INTEGERS -/* s_save assumes that all opcodes can be expressed as a small - * integer. */ static const struct cell small_integers[] = { #define DEFINE_INTEGER(n) { T_NUMBER | T_ATOM | MARK, {{ 1, {n}}}}, #include "small-integers.h" @@ -1599,6 +1619,9 @@ static pointer mk_sharp_const(scheme *sc, char *name) { /* ========== garbage collector ========== */ +const int frame_length; +static void dump_stack_deallocate_frame(scheme *sc, pointer frame); + /*-- * We use algorithm E (Knuth, The Art of Computer Programming Vol.1, * sec. 2.3.5), the Schorr-Deutsch-Waite link-inversion algorithm, @@ -1611,9 +1634,10 @@ static void mark(pointer a) { p = a; E2: if (! is_mark(p)) setmark(p); - if(is_vector(p)) { + if (is_vector(p) || is_frame(p)) { int i; - for (i = 0; i < vector_length(p); i++) { + int len = is_vector(p) ? vector_length(p) : frame_length; + for (i = 0; i < len; i++) { mark(p->_object._vector._elements[i]); } } @@ -1783,8 +1807,12 @@ finalize_cell(scheme *sc, pointer a) sc->free_cell = p; sc->fcells += 1; } - break; } while (0); + break; + + case T_FRAME: + dump_stack_deallocate_frame(sc, a); + return 0; /* Do not free cell. */ } return 1; /* Free cell. */ @@ -2985,17 +3013,73 @@ static INLINE void dump_stack_reset(scheme *sc) static INLINE void dump_stack_initialize(scheme *sc) { dump_stack_reset(sc); + sc->frame_freelist = sc->NIL; } static void dump_stack_free(scheme *sc) { - sc->dump = sc->NIL; + dump_stack_initialize(sc); +} + +const int frame_length = 4; + +static pointer +dump_stack_make_frame(scheme *sc) +{ + pointer frame; + + frame = mk_vector(sc, frame_length); + if (! sc->no_memory) + setframe(frame); + + return frame; +} + +static INLINE pointer * +frame_slots(pointer frame) +{ + return &frame->_object._vector._elements[0]; +} + +#define frame_payload vector_length + +static pointer +dump_stack_allocate_frame(scheme *sc) +{ + pointer frame = sc->frame_freelist; + if (frame == sc->NIL) { + if (gc_enabled(sc)) + frame = dump_stack_make_frame(sc); + else + gc_reservation_failure(sc); + } else + sc->frame_freelist = *frame_slots(frame); + return frame; +} + +static void +dump_stack_deallocate_frame(scheme *sc, pointer frame) +{ + pointer *p = frame_slots(frame); + *p++ = sc->frame_freelist; + *p++ = sc->NIL; + *p++ = sc->NIL; + *p++ = sc->NIL; + sc->frame_freelist = frame; +} + +static void +dump_stack_preallocate_frame(scheme *sc) +{ + pointer frame = dump_stack_make_frame(sc); + if (! sc->no_memory) + dump_stack_deallocate_frame(sc, frame); } static enum scheme_opcodes _s_return(scheme *sc, pointer a, int enable_gc) { pointer dump = sc->dump; - pointer op; + pointer *p; unsigned long v; enum scheme_opcodes next_op; sc->value = (a); @@ -3003,37 +3087,38 @@ _s_return(scheme *sc, pointer a, int enable_gc) { gc_enable(sc); if (dump == sc->NIL) return OP_QUIT; - free_cons(sc, dump, &op, &dump); - v = (unsigned long) ivalue_unchecked(op); + v = frame_payload(dump); next_op = (int) (v & S_OP_MASK); sc->flags = v & S_FLAG_MASK; -#ifdef USE_SMALL_INTEGERS - if (v < MAX_SMALL_INTEGER) { - /* This is a small integer, we must not free it. */ - } else - /* Normal integer. Recover the cell. */ -#endif - free_cell(sc, op); - free_cons(sc, dump, &sc->args, &dump); - free_cons(sc, dump, &sc->envir, &dump); - free_cons(sc, dump, &sc->code, &sc->dump); + p = frame_slots(dump); + sc->args = *p++; + sc->envir = *p++; + sc->code = *p++; + sc->dump = *p++; + dump_stack_deallocate_frame(sc, dump); return next_op; } static void s_save(scheme *sc, enum scheme_opcodes op, pointer args, pointer code) { -#define s_save_allocates 5 +#define s_save_allocates 0 pointer dump; - unsigned long v = sc->flags | ((unsigned long) op); + pointer *p; gc_disable(sc, gc_reservations (s_save)); - dump = cons(sc, sc->envir, cons(sc, (code), sc->dump)); - dump = cons(sc, (args), dump); - sc->dump = cons(sc, mk_integer(sc, (long) v), dump); + dump = dump_stack_allocate_frame(sc); + frame_payload(dump) = (size_t) (sc->flags | (unsigned long) op); + p = frame_slots(dump); + *p++ = args; + *p++ = sc->envir; + *p++ = code; + *p++ = sc->dump; + sc->dump = dump; gc_enable(sc); } static INLINE void dump_stack_mark(scheme *sc) { mark(sc->dump); + mark(sc->frame_freelist); } commit 9c6407d17e0cb9f4a370b1b83e7816577ec7d29d Author: Justus Winter Date: Wed Apr 5 17:30:44 2017 +0200 gpgscm: Merge opexe_0. * tests/gpgscm/scheme-private.h (struct scheme): Remove field 'op'. * tests/gpgscm/scheme.c (opexe_0): Inline into 'Eval_Cycle'. (_Error_1): Return the opcode to evaluate next. (Error_1): Do not return, but set the opcode and goto dispatch. (Error_0): Likewise. (s_goto): Likewise. (s_return): Likewise. (s_return_enable_gc): Likewise. (s_thread_to): Remove superfluous cast. (_s_return): Return the opcode to evaluate next. (scheme_init_custom_alloc): Adapt to removal of field 'op'. Signed-off-by: Justus Winter diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h index bc0269a..0ba9a53 100644 --- a/tests/gpgscm/scheme-private.h +++ b/tests/gpgscm/scheme-private.h @@ -196,7 +196,6 @@ FILE *tmpfp; int tok; int print_flag; pointer value; -int op; unsigned int flags; void *ext_data; /* For the benefit of foreign functions */ diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 811c51f..47051f2 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -437,7 +437,6 @@ static pointer reverse(scheme *sc, pointer term, pointer list); static pointer reverse_in_place(scheme *sc, pointer term, pointer list); static pointer revappend(scheme *sc, pointer a, pointer b); static void dump_stack_mark(scheme *); -static pointer opexe_0(scheme *sc, enum scheme_opcodes op); struct op_code_info { char name[31]; /* strlen ("call-with-current-continuation") + 1 */ unsigned char min_arity; @@ -2834,7 +2833,8 @@ static INLINE pointer slot_value_in_env(pointer slot) /* ========== Evaluation Cycle ========== */ -static pointer _Error_1(scheme *sc, const char *s, pointer a) { +static enum scheme_opcodes +_Error_1(scheme *sc, const char *s, pointer a) { const char *str = s; pointer history; #if USE_ERROR_HOOK @@ -2892,8 +2892,7 @@ static pointer _Error_1(scheme *sc, const char *s, pointer a) { sc->code = cons(sc, mk_string(sc, str), sc->code); setimmutable(car(sc->code)); sc->code = cons(sc, slot_value_in_env(x), sc->code); - sc->op = (int)OP_EVAL; - return sc->T; + return OP_EVAL; } #endif @@ -2904,11 +2903,10 @@ static pointer _Error_1(scheme *sc, const char *s, pointer a) { } sc->args = cons(sc, mk_string(sc, str), sc->args); setimmutable(car(sc->args)); - sc->op = (int)OP_ERR0; - return sc->T; + return OP_ERR0; } -#define Error_1(sc,s, a) return _Error_1(sc,s,a) -#define Error_0(sc,s) return _Error_1(sc,s,0) +#define Error_1(sc,s, a) { op = _Error_1(sc,s,a); goto dispatch; } +#define Error_0(sc,s) { op = _Error_1(sc,s,0); goto dispatch; } /* Too small to turn into function */ # define BEGIN do { @@ -2949,9 +2947,7 @@ static pointer _Error_1(scheme *sc, const char *s, pointer a) { /* Bounce back to Eval_Cycle and execute A. */ -#define s_goto(sc,a) BEGIN \ - sc->op = (int)(a); \ - return sc->T; END +#define s_goto(sc, a) { op = (a); goto dispatch; } #if USE_THREADED_CODE @@ -2959,7 +2955,7 @@ static pointer _Error_1(scheme *sc, const char *s, pointer a) { * to it. */ #define s_thread_to(sc, a) \ BEGIN \ - op = (int) (a); \ + op = (a); \ goto a; \ END @@ -2975,11 +2971,11 @@ static pointer _Error_1(scheme *sc, const char *s, pointer a) { /* Return to the previous frame on the dump stack, setting the current * value to A. */ -#define s_return(sc, a) return _s_return(sc, a, 0) +#define s_return(sc, a) s_goto(sc, _s_return(sc, a, 0)) /* Return to the previous frame on the dump stack, setting the current * value to A, and re-enable the garbage collector. */ -#define s_return_enable_gc(sc, a) return _s_return(sc, a, 1) +#define s_return_enable_gc(sc, a) s_goto(sc, _s_return(sc, a, 1)) static INLINE void dump_stack_reset(scheme *sc) { @@ -2996,18 +2992,20 @@ static void dump_stack_free(scheme *sc) sc->dump = sc->NIL; } -static pointer _s_return(scheme *sc, pointer a, int enable_gc) { +static enum scheme_opcodes +_s_return(scheme *sc, pointer a, int enable_gc) { pointer dump = sc->dump; pointer op; unsigned long v; + enum scheme_opcodes next_op; sc->value = (a); if (enable_gc) gc_enable(sc); if (dump == sc->NIL) - return sc->NIL; + return OP_QUIT; free_cons(sc, dump, &op, &dump); v = (unsigned long) ivalue_unchecked(op); - sc->op = (int) (v & S_OP_MASK); + next_op = (int) (v & S_OP_MASK); sc->flags = v & S_FLAG_MASK; #ifdef USE_SMALL_INTEGERS if (v < MAX_SMALL_INTEGER) { @@ -3019,7 +3017,7 @@ static pointer _s_return(scheme *sc, pointer a, int enable_gc) { free_cons(sc, dump, &sc->args, &dump); free_cons(sc, dump, &sc->envir, &dump); free_cons(sc, dump, &sc->code, &sc->dump); - return sc->T; + return next_op; } static void s_save(scheme *sc, enum scheme_opcodes op, pointer args, pointer code) { @@ -3357,7 +3355,10 @@ int list_length(scheme *sc, pointer a) { #define s_retbool(tf) s_return(sc,(tf) ? sc->T : sc->F) -static pointer opexe_0(scheme *sc, enum scheme_opcodes op) { +/* kernel of this interpreter */ +static void +Eval_Cycle(scheme *sc, enum scheme_opcodes op) { + for (;;) { pointer x, y; pointer callsite; num v; @@ -3365,6 +3366,21 @@ static pointer opexe_0(scheme *sc, enum scheme_opcodes op) { double dd; #endif int (*comp_func)(num, num) = NULL; + const struct op_code_info *pcd = &dispatch_table[op]; + + dispatch: + if (pcd->name[0] != 0) { /* if built-in function, check arguments */ + char msg[STRBUFFSIZE]; + if (! check_arguments (sc, pcd, msg, sizeof msg)) { + s_goto(sc, _Error_1(sc, msg, 0)); + } + } + + if(sc->no_memory) { + fprintf(stderr,"No memory!\n"); + exit(1); + } + ok_to_freely_gc(sc); switch (op) { CASE(OP_LOAD): /* load */ @@ -4693,7 +4709,7 @@ static pointer opexe_0(scheme *sc, enum scheme_opcodes op) { if(sc->interactive_repl) { s_thread_to(sc,OP_T0LVL); } else { - return sc->NIL; + return; } } @@ -4760,7 +4776,7 @@ static pointer opexe_0(scheme *sc, enum scheme_opcodes op) { if(is_pair(sc->args)) { sc->retcode=ivalue(car(sc->args)); } - return (sc->NIL); + return; CASE(OP_GC): /* gc */ gc(sc, sc->NIL, sc->NIL); @@ -5206,7 +5222,7 @@ static pointer opexe_0(scheme *sc, enum scheme_opcodes op) { snprintf(sc->strbuff,STRBUFFSIZE,"%d: illegal operator", op); Error_0(sc,sc->strbuff); } - return sc->T; /* NOTREACHED */ + } } typedef int (*test_predicate)(pointer); @@ -5335,31 +5351,6 @@ check_arguments (scheme *sc, const struct op_code_info *pcd, char *msg, size_t m return ok; } -/* kernel of this interpreter */ -static void Eval_Cycle(scheme *sc, enum scheme_opcodes op) { - sc->op = op; - for (;;) { - const struct op_code_info *pcd=dispatch_table+sc->op; - if (pcd->name[0] != 0) { /* if built-in function, check arguments */ - char msg[STRBUFFSIZE]; - if (! check_arguments (sc, pcd, msg, sizeof msg)) { - if(_Error_1(sc,msg,0)==sc->NIL) { - return; - } - pcd=dispatch_table+sc->op; - } - } - ok_to_freely_gc(sc); - if (opexe_0(sc, (enum scheme_opcodes)sc->op) == sc->NIL) { - return; - } - if(sc->no_memory) { - fprintf(stderr,"No memory!\n"); - exit(1); - } - } -} - /* ========== Initialization of internal keywords ========== */ /* Symbols representing syntax are tagged with (OP . '()). */ @@ -5551,7 +5542,6 @@ int scheme_init_custom_alloc(scheme *sc, func_alloc malloc, func_dealloc free) { dump_stack_initialize(sc); sc->code = sc->NIL; sc->tracing=0; - sc->op = -1; sc->flags = 0; /* init sc->NIL */ ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/scheme-private.h | 2 +- tests/gpgscm/scheme.c | 227 ++++++++++++++++++++++++++++-------------- 2 files changed, 152 insertions(+), 77 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 3 15:54:52 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 03 May 2017 15:54:52 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 8f5607a7768f76cddf8bf66056b35e582601d52a 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, preview has been updated via 8f5607a7768f76cddf8bf66056b35e582601d52a (commit) from 99318e6ea1fa5c07c4f8829cd71ae92344d1c144 (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 8f5607a7768f76cddf8bf66056b35e582601d52a Author: Werner Koch Date: Wed May 3 15:51:49 2017 +0200 web: Fix hack and insert even less boiler plate diff --git a/web/donate/index.org b/web/donate/index.org index de59bf1..0dfc064 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -5,21 +5,14 @@ # 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. -# Note: These special comments are used -# custom-head-section - Neither a meta tag for a stylesheet is -# inserted nor the and . -# disable-menu - No menu is generated. #+BEGIN_HTML - - - -
@@ -143,11 +136,8 @@
-#+END_HTML - -** Recent donors +

Recent donors

-#+BEGIN_HTML
    @@ -158,6 +148,10 @@ : 

    + + + + #+END_HTML # eof # diff --git a/web/share/gpgweb.el b/web/share/gpgweb.el index 46bbcdd..892eab5 100644 --- a/web/share/gpgweb.el +++ b/web/share/gpgweb.el @@ -57,11 +57,11 @@ 'noerror))))) -(defun gpgweb-insert-header (title committed-at) +(defun gpgweb-insert-header (title committed-at custom) "Insert the header. COMMITTED-AT is the commit date string of the source file or nil -if not available." +if not available. If CUSTOM is true only a minimal header is set." (goto-char (point-min)) (insert " ") -(goto-char (point-min)) -(unless (search-forward "" nil t) - (goto point-max) +(unless custom (insert " @@ -379,6 +377,17 @@ buffer into read-write mode so that it works with read-only files." title))))) +(defun gpgweb-want-custom-page-p () + "Return true if the current buffer indicated that it wants to +be a custom page." + (let ((savepoint (point)) + (result)) + (goto-char (point-min)) + (setq result (not (not (search-forward "" nil t)))) + (goto-char savepoint) + result)) + + (defun gpgweb-postprocess-html (plist orgfile htmlfile blogmode) "Post-process the generated HTML file @@ -400,17 +409,19 @@ to create the previous and Next links for an entry." (fname-2 (replace-regexp-in-string ".*/gnupg-doc-stage/web/\\(.*\\)$" "\\1" htmlfile t)) - (title (gpgweb-publish-find-title orgfile))) + (title (gpgweb-publish-find-title orgfile)) + (custom (gpgweb-want-custom-page-p))) ;; Insert header, menu, and footer. - (gpgweb-insert-header title committed-at) - (goto-char (point-min)) - (unless (search-forward "" nil t) - (gpgweb-insert-menu fname-2)) - (if blogmode - (gpgweb-fixup-blog plist - (file-name-nondirectory orgfile) - blogmode)) - (gpgweb-insert-footer fname-2 committed-at blogmode) + (gpgweb-insert-header title committed-at custom) + (unless custom + (goto-char (point-min)) + (unless (search-forward "" nil t) + (gpgweb-insert-menu fname-2)) + (if blogmode + (gpgweb-fixup-blog plist + (file-name-nondirectory orgfile) + blogmode)) + (gpgweb-insert-footer fname-2 committed-at blogmode)) ; Fixup the sitemap (when (string-equal fname "sitemap.html") ----------------------------------------------------------------------- Summary of changes: web/donate/index.org | 18 ++++++------------ web/share/gpgweb.el | 41 ++++++++++++++++++++++++++--------------- 2 files changed, 32 insertions(+), 27 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 3 16:29:49 2017 From: cvs at cvs.gnupg.org (by Andre Heinecke) Date: Wed, 03 May 2017 16:29:49 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-106-gd378cc3 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 d378cc34a8d3d5053cf0c5ac7aa731c1bcefee22 (commit) from 8a168a6d4052ec31fed77c79bb96ffdd32bf9646 (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 d378cc34a8d3d5053cf0c5ac7aa731c1bcefee22 Author: Andre Heinecke Date: Wed May 3 16:28:24 2017 +0200 speedo,w32: Fix silent user mode installation * build-aux/speedo/w32/inst.nsi (AddToPath): Move account check here. (PrintNonAdminWarning): Remove is_user_install variable. -- The PrintNonAdminWarning is not called in silent mode so the variable was never set. Signed-off-by: Andre Heinecke diff --git a/build-aux/speedo/w32/inst.nsi b/build-aux/speedo/w32/inst.nsi index 297ef06..b89876e 100644 --- a/build-aux/speedo/w32/inst.nsi +++ b/build-aux/speedo/w32/inst.nsi @@ -360,8 +360,6 @@ FunctionEnd # OS version without the need for an Administrator is in use. Print a # diagnostic if this is not the case and abort installation. Function PrintNonAdminWarning - Var /GLOBAL is_user_install - StrCpy $is_user_install "0" ClearErrors UserInfo::GetName IfErrors leave @@ -370,7 +368,6 @@ Function PrintNonAdminWarning Pop $1 StrCmp $1 "Admin" leave +1 MessageBox MB_YESNO "$(T_AdminWanted)" IDNO exit - StrCpy $is_user_install "1" goto leave exit: Quit @@ -520,8 +517,24 @@ FunctionEnd # AddToPath - Adds the given dir to the search path. # Input - head of the stack Function AddToPath + ClearErrors + UserInfo::GetName + IfErrors add_admin + Pop $0 + UserInfo::GetAccountType + Pop $1 + StrCmp $1 "Admin" add_admin add_user + +add_admin: Exch $0 - g4wihelp::path_add "$0" $is_user_install + g4wihelp::path_add "$0" "0" + goto add_done +add_user: + Exch $0 + g4wihelp::path_add "$0" "1" + goto add_done + +add_done: StrCmp $R5 "0" add_to_path_done SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000 add_to_path_done: ----------------------------------------------------------------------- Summary of changes: build-aux/speedo/w32/inst.nsi | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 3 20:38:01 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 03 May 2017 20:38:01 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 709a3e2edeff2552e84fd6d51a1f255d8ed6b944 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, preview has been updated via 709a3e2edeff2552e84fd6d51a1f255d8ed6b944 (commit) from 8f5607a7768f76cddf8bf66056b35e582601d52a (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 709a3e2edeff2552e84fd6d51a1f255d8ed6b944 Author: Werner Koch Date: Wed May 3 20:35:02 2017 +0200 web: Add simple select box to select recurring donations. diff --git a/web/donate/index.org b/web/donate/index.org index 0dfc064..fe13ab3 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -53,6 +53,18 @@ + + Recurring: + + + +   Pay using: ----------------------------------------------------------------------- Summary of changes: web/donate/index.org | 12 ++++++++++++ 1 file changed, 12 insertions(+) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 4 08:36:04 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 04 May 2017 08:36:04 +0200 Subject: [git] gnupg-doc - branch, preview, updated. fc824d465626d1c504578b00b418b7cd24bb7113 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, preview has been updated via fc824d465626d1c504578b00b418b7cd24bb7113 (commit) from 709a3e2edeff2552e84fd6d51a1f255d8ed6b944 (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 fc824d465626d1c504578b00b418b7cd24bb7113 Author: Werner Koch Date: Thu May 4 08:33:01 2017 +0200 web: Set a default viewport diff --git a/web/share/gpgweb.el b/web/share/gpgweb.el index 892eab5..110cea8 100644 --- a/web/share/gpgweb.el +++ b/web/share/gpgweb.el @@ -69,7 +69,8 @@ if not available. If CUSTOM is true only a minimal header is set." " title " -\n") + +") (when (and committed-at (>= (length committed-at) 10)) (insert "\n")) @@ -81,6 +82,7 @@ if not available. If CUSTOM is true only a minimal header is set." + ") (unless custom (insert " ----------------------------------------------------------------------- Summary of changes: web/share/gpgweb.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 4 09:01:41 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 04 May 2017 09:01:41 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 7322ee29adae530d80e8965fbca51e91e4728916 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, preview has been updated via 7322ee29adae530d80e8965fbca51e91e4728916 (commit) via 5580a638b4f265e8d957289b59dc6656a33b9d50 (commit) via cfd38b44f761922cfacdeabca994f692c52a9f5b (commit) via 7fd7f497302b09fa2cd9712a4ef37fa31804a9b9 (commit) via 7c3501ad6a01da2e7dbbc15da4eea9f5cf5de023 (commit) via 2f3a353d4a327cc0f0629d43911db60579ecb260 (commit) via 9c504b531be386a895496fec02385a2a54aeb4d2 (commit) via 8630a81c45b2890fd5a398565c9e5e875ba1a7a0 (commit) via 1106e2a424afd7bf68850fe0e3560b615a6dd694 (commit) via 619135c390c52fa1c2c9fb86777f93ff8b8812e6 (commit) via 4d585593e209518ac00301d0024e683dea8bf943 (commit) via 2070774a8025daa5b1836016b5b7bda650dc3457 (commit) via f558d66878641b1956c164a38422ca229034ee4b (commit) via 25a44e820e31809c2919db98e5b455aca7311b82 (commit) from fc824d465626d1c504578b00b418b7cd24bb7113 (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 7322ee29adae530d80e8965fbca51e91e4728916 Merge: fc824d4 5580a63 Author: Werner Koch Date: Thu May 4 08:57:41 2017 +0200 Merge branch 'master' into preview ----------------------------------------------------------------------- Summary of changes: cgi/config.rc | 4 ++ cgi/procdonate.cgi | 2 + misc/jenkins/bin/build.bash | 37 ++++++++++++++++++- tools/build-website.sh | 86 +++++++++++++++++++++++++++++++++++++++++-- web/documentation/sites.org | 8 +++- web/donate/checkout-cc.org | 2 +- web/donate/kudos.org | 88 ++++++++++++++++++++++++++++---------------- web/people/neal.png | Bin 183 -> 38681 bytes web/roadmap.org | 7 ---- web/verein/index.org | 2 +- 10 files changed, 190 insertions(+), 46 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 4 10:09:06 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 04 May 2017 10:09:06 +0200 Subject: [git] gnupg-doc - branch, preview, updated. dc2082d1e6da874f3170a4b6e2176dd049185bf9 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, preview has been updated via dc2082d1e6da874f3170a4b6e2176dd049185bf9 (commit) from 7322ee29adae530d80e8965fbca51e91e4728916 (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 dc2082d1e6da874f3170a4b6e2176dd049185bf9 Author: Werner Koch Date: Thu May 4 10:06:07 2017 +0200 web: Move donation form to donate.org and adjust procdonate. diff --git a/cgi/procdonate.cgi b/cgi/procdonate.cgi index 650f803..c0894af 100755 --- a/cgi/procdonate.cgi +++ b/cgi/procdonate.cgi @@ -39,6 +39,7 @@ my $paytype = ""; my $stripeamount = ""; my $euroamount = ""; my $currency = ""; +my $recur = ""; my $name = ""; my $mail = ""; my $message = ""; @@ -77,6 +78,10 @@ sub write_template ($) { my $sel_usd = ''; my $sel_gbp = ''; my $sel_jpy = ''; + my $recur_none = ''; + my $recur_month = ''; + my $recur_quarter = ''; + my $recur_year = ''; my $message_fmt; my $publishname; my $check_paytype = 'none'; @@ -85,6 +90,7 @@ sub write_template ($) { $amount =~ s/\x22/\x27/g; $stripeamount =~ s/\x22/\x27/g; $currency =~ s/\x22/\x27/g; + $recur =~ s/\x22/\x27/g; $name =~ s/\x22/\x27/g; $mail =~ s/\x22/\x27/g; $message =~ s/\x22/\x27/g; @@ -95,6 +101,7 @@ sub write_template ($) { $amount =~ s//$sel_usd>/ || s/(/$sel_gbp>/ || s/(/$sel_jpy>/ + || s/(/$recur_none>/ + || s/(/$recur_month>/ + || s/(/$recur_quarter>/ + || s/(/$recur_year>/ || s//$publishname/ || s//$separef/ || s//$errorstr/ @@ -298,7 +319,7 @@ sub write_main_page () { print $q->header(-type=>'text/html', -charset=>'utf-8'); print "\n"; - write_template("donate/index.html"); + write_template("donate/donate.html"); } @@ -337,7 +358,7 @@ sub check_donation () my %sepa; my $anyerr = 0; - # Note: When re-displaying the page we always use amount other + # Note: When re-displaying the page we always use amount "other" # because that is easier to implement than figuring out which # amount and currency was used and check the appropriate radio # button. @@ -349,21 +370,24 @@ sub check_donation () $currency = 'EUR'; } + $recur = $q->param("recur"); $name = $q->param("name"); $name = 'Anonymous' if $name eq ''; $mail = $q->param("mail"); $message = $q->param("message"); $stripeamount = "0"; - # Check the amount. + # Check the amount and the recurring value $data{"Amount"} = $amount; $data{"Currency"} = $currency; + $data{"Recur"} = $recur; if (not payproc ('CHECKAMOUNT', \%data )) { $errdict{"amount"} = $data{"ERR_Description"}; $anyerr = 1; } $stripeamount = $data{"_amount"}; $amount = $data{"Amount"}; + $recur = $data{"Recur"}; $currency = $data{"Currency"}; $euroamount = $data{"Euro"}; @@ -433,6 +457,7 @@ sub resend_main_page () payproc ('SESSION get ' . $sessid, \%data) or fail $data{"ERR_Description"}; $amount = $data{"Amount"}; $currency = $data{"Currency"}; + $recur = $data{"Recur"}; $paytype = $data{"Paytype"}; $stripeamount = $data{"Stripeamount"}; $euroamount = $data{"Euroamount"}; diff --git a/web/donate/index.org b/web/donate/donate.org similarity index 93% copy from web/donate/index.org copy to web/donate/donate.org index fe13ab3..f645796 100644 --- a/web/donate/index.org +++ b/web/donate/donate.org @@ -56,7 +56,7 @@ Recurring: - @@ -148,20 +148,6 @@ -

    Recent donors

    - -

    -

    Donations received in - -:  - -

    - - #+END_HTML diff --git a/web/donate/index.org b/web/donate/index.org index fe13ab3..d34a02b 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -12,141 +12,18 @@ +
    +

    +Arguing that you don't care about the right to privacy +because you have nothing to hide is no different from +saying you don't care about free speech because you have +nothing to say. – Edward Snowden +

    +
    - - -
    - -

    Keep this field clear: -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    How much do you want to donate?
    - (choosing ?other? allows - to donate in other currencies)
    Amount: - - - - - - -
    - other: - - - -
    Recurring: - -
     
    Pay using: - - -
    - -
    - -
     
    - If you want to be listed on the - list of donors, - please enter your name as it shall appear there. -
    - (optional) - -
    - In case of payment problems we may want to contact you, thus please - enter your e-mail address. -
    - (optional) - -
    - If you want to leave a message for us, please enter it here: -
    - -
    -
    - -
    -
    -
    - +

    +Please donate". +

    Recent donors

    ----------------------------------------------------------------------- Summary of changes: cgi/procdonate.cgi | 31 +++++++- web/donate/{index.org => donate.org} | 16 +--- web/donate/index.org | 145 +++-------------------------------- 3 files changed, 40 insertions(+), 152 deletions(-) copy web/donate/{index.org => donate.org} (93%) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 4 14:26:07 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Thu, 04 May 2017 14:26:07 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-107-geab0138 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 eab0138e3179f247180a639a91570e5ee2c6ad0e (commit) from d378cc34a8d3d5053cf0c5ac7aa731c1bcefee22 (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 eab0138e3179f247180a639a91570e5ee2c6ad0e Author: Justus Winter Date: Thu May 4 14:24:50 2017 +0200 tests: Add function to dump packets. * tests/openpgp/defs.scm (gpg-dump-packets): New function. Signed-off-by: Justus Winter diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm index 9e681bf..8d7caed 100644 --- a/tests/openpgp/defs.scm +++ b/tests/openpgp/defs.scm @@ -299,6 +299,12 @@ (pipe:spawn `(, at GPG --dearmor)) (pipe:write-to sink-name (logior O_WRONLY O_CREAT O_BINARY) #o600))) +(define (gpg-dump-packets source-name sink-name) + (pipe:do + (pipe:open source-name (logior O_RDONLY O_BINARY)) + (pipe:spawn `(, at GPG --list-packets)) + (pipe:write-to sink-name (logior O_WRONLY O_CREAT O_BINARY) #o600))) + ;; ;; Support for test environment creation and teardown. ;; ----------------------------------------------------------------------- Summary of changes: tests/openpgp/defs.scm | 6 ++++++ 1 file changed, 6 insertions(+) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 4 15:24:00 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Thu, 04 May 2017 15:24:00 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-108-gd6b4646 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 d6b46462f8c5c705ffb7cf8af03465a926aa11d3 (commit) from eab0138e3179f247180a639a91570e5ee2c6ad0e (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 d6b46462f8c5c705ffb7cf8af03465a926aa11d3 Author: Justus Winter Date: Thu May 4 15:12:49 2017 +0200 tests: Support tests that are expected to fail. * tests/gpgscm/tests.scm (test-pool): Rework reporting. Filter using the computed test status instead of the return value. Also print the new categories 'failed expectedly' and 'passed unexpectedly'. (test): If a test ends with a bang (!), it is expected to fail. Adapt status, status-string, and xml accordingly. -- Allow tests to be marked as being expected to fail by appending a bang (!) to the tests name. If such a test fails, it will not be counted as failure, but will still be prominently displayed in the report. If it succeeds unexpectedly, this is counted as a failure. Fixes T3134. GnuPG-bug-id: 3134 Signed-off-by: Justus Winter diff --git a/tests/gpgscm/tests.scm b/tests/gpgscm/tests.scm index c6c887f..e5ec5c7 100644 --- a/tests/gpgscm/tests.scm +++ b/tests/gpgscm/tests.scm @@ -521,31 +521,29 @@ (map pid->test pids) (wait-processes (map stringify names) pids #t))))) (current-environment)) - (define (passed) - (filter (lambda (p) (= 0 p::retcode)) procs)) - (define (skipped) - (filter (lambda (p) (= 77 p::retcode)) procs)) - (define (hard-errored) - (filter (lambda (p) (= 99 p::retcode)) procs)) - (define (failed) - (filter (lambda (p) - (not (or (= 0 p::retcode) (= 77 p::retcode) - (= 99 p::retcode)))) - procs)) + (define (filter-tests status) + (filter (lambda (p) (eq? status (p::status))) procs)) (define (report) (define (print-tests tests message) (unless (null? tests) (apply echo (cons message (map (lambda (t) t::name) tests))))) - (let ((failed' (failed)) (skipped' (skipped))) + (let ((failed (filter-tests 'FAIL)) + (xfailed (filter-tests 'XFAIL)) + (xpassed (filter-tests 'XPASS)) + (skipped (filter-tests 'SKIP))) (echo (length procs) "tests run," - (length (passed)) "succeeded," - (length failed') "failed," - (length skipped') "skipped.") - (print-tests failed' "Failed tests:") - (print-tests skipped' "Skipped tests:") - (length failed'))) + (length (filter-tests 'PASS)) "succeeded," + (length failed) "failed," + (length xfailed) "failed expectedly," + (length xpassed) "succeeded unexpectedly," + (length skipped) "skipped.") + (print-tests failed "Failed tests:") + (print-tests xfailed "Expectedly failed tests:") + (print-tests xpassed "Unexpectedly passed tests:") + (print-tests skipped "Skipped tests:") + (+ (length failed) (length xpassed)))) (define (xml) (xx::document @@ -580,24 +578,34 @@ ":" (substring t 13 15))) + ;; If a tests name ends with a bang (!), it is expected to fail. + (define (expect-failure? name) + (string-suffix? name "!")) + ;; Strips the bang (if any). + (define (test-name name) + (if (expect-failure? name) + (substring name 0 (- (string-length name) 1)) + name)) + (package (define (scm setup name path . args) ;; Start the process. (define (spawn-scm args' in out err) (spawn-process-fd `(,*argv0* ,@(verbosity (*verbose*)) - ,(locate-test path) + ,(locate-test (test-name path)) ,@(if setup (force setup) '()) , at args' , at args) in out err)) - (new name #f spawn-scm #f #f CLOSED_FD)) + (new name #f spawn-scm #f #f CLOSED_FD (expect-failure? name))) (define (binary setup name path . args) ;; Start the process. (define (spawn-binary args' in out err) - (spawn-process-fd `(,path ,@(if setup (force setup) '()) , at args' , at args) + (spawn-process-fd `(,(test-name path) + ,@(if setup (force setup) '()) , at args' , at args) in out err)) - (new name #f spawn-binary #f #f CLOSED_FD)) + (new name #f spawn-binary #f #f CLOSED_FD (expect-failure? name))) - (define (new name directory spawn pid retcode logfd) + (define (new name directory spawn pid retcode logfd expect-failure) (package ;; XXX: OO glue. @@ -653,13 +661,18 @@ (set! logfd log)) (current-environment)) (define (status) - (let ((t (assoc retcode '((0 PASS) (77 SKIP) (99 ERROR))))) - (if (not t) 'FAIL (cadr t)))) + (let* ((t' (assoc retcode '((0 PASS) (77 SKIP) (99 ERROR)))) + (t (if (not t') 'FAIL (cadr t')))) + (if expect-failure + (case t ((PASS) 'XPASS) ((FAIL) 'XFAIL) (else t)) + t))) (define (status-string) (cadr (assoc (status) '((PASS "PASS") (SKIP "SKIP") (ERROR "ERROR") - (FAIL "FAIL"))))) + (FAIL "FAIL") + (XPASS "XPASS") + (XFAIL "XFAIL"))))) (define (report) (unless (= logfd CLOSED_FD) (seek logfd 0 SEEK_SET) @@ -686,7 +699,7 @@ (classname ,(string-translate (dirname name) "/" ".")) (time ,(- end-time start-time))) `(,@(case (status) - ((PASS) '()) + ((PASS XFAIL) '()) ((SKIP) (list (xx::tag 'skipped))) ((ERROR) (list (xx::tag 'error '((message "Unknown error."))))) ----------------------------------------------------------------------- Summary of changes: tests/gpgscm/tests.scm | 67 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 40 insertions(+), 27 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon May 8 14:36:34 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 08 May 2017 14:36:34 +0200 Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-112-g2273943 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 22739433e98be80e46fe7d01d52a9627c1aebaae (commit) via 692208fd6c1547cc7dd2062a1d1c9499bc0a8be4 (commit) via 38b48eb11b77b45c9d0292270f83e26e308f68e4 (commit) via 6fdeef5b61c814ba0e475bfc36655e4fe69d7c41 (commit) from d6b46462f8c5c705ffb7cf8af03465a926aa11d3 (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 22739433e98be80e46fe7d01d52a9627c1aebaae Author: Justus Winter Date: Mon May 8 14:24:00 2017 +0200 gpg: Properly account for ring trust packets. * g10/keyring.c (keyring_get_keyblock): Use the parser's packet count instead of counting ourself. * g10/packet.h (struct parse_packet_ctx_s): New field 'n_parsed_packets'. (init_parse_packet): Initialize new field. * g10/parse-packet.c (parse): Count packets. -- The 'keyring' keystore depends on the number of packets for delete and update operations. With the rework of the ring trust packets, the trust packets were no longer properly accounted for leading to keyring corruptions. The 'keybox' store was not affected. GnuPG-bug-id: 3123 GnuPG-bug-id: 3135 GnuPG-bug-id: 3144 Fixes-commit: a8895c99a7d0750132477d80cd66caaf3a709113 Signed-off-by: Justus Winter diff --git a/g10/keyring.c b/g10/keyring.c index e223f0f..50f1b82 100644 --- a/g10/keyring.c +++ b/g10/keyring.c @@ -409,11 +409,11 @@ keyring_get_keyblock (KEYRING_HANDLE hd, KBNODE *ret_kb) pkt = xmalloc (sizeof *pkt); init_packet (pkt); init_parse_packet (&parsectx, a); - hd->found.n_packets = 0;; + hd->found.n_packets = 0; lastnode = NULL; save_mode = set_packet_list_mode(0); while ((rc=parse_packet (&parsectx, pkt)) != -1) { - hd->found.n_packets++; + hd->found.n_packets = parsectx.n_parsed_packets; if (gpg_err_code (rc) == GPG_ERR_UNKNOWN_PACKET) { free_packet (pkt, &parsectx); init_packet (pkt); diff --git a/g10/packet.h b/g10/packet.h index d42510d..cf2121c 100644 --- a/g10/packet.h +++ b/g10/packet.h @@ -624,6 +624,7 @@ struct parse_packet_ctx_s struct packet_struct last_pkt; /* The last parsed packet. */ int free_last_pkt; /* Indicates that LAST_PKT must be freed. */ int skip_meta; /* Skip ring trust packets. */ + unsigned int n_parsed_packets; /* Number of parsed packets. */ }; typedef struct parse_packet_ctx_s *parse_packet_ctx_t; @@ -633,6 +634,7 @@ typedef struct parse_packet_ctx_s *parse_packet_ctx_t; (a)->last_pkt.pkt.generic= NULL;\ (a)->free_last_pkt = 0; \ (a)->skip_meta = 0; \ + (a)->n_parsed_packets = 0; \ } while (0) #define deinit_parse_packet(a) do { \ diff --git a/g10/parse-packet.c b/g10/parse-packet.c index fa44f83..dbb7af8 100644 --- a/g10/parse-packet.c +++ b/g10/parse-packet.c @@ -764,6 +764,9 @@ parse (parse_packet_ctx_t ctx, PACKET *pkt, int onlykeypkts, off_t * retpos, partial? (new_ctb ? " partial" : " indeterminate") :"", new_ctb? " new-ctb":""); + /* Count it. */ + ctx->n_parsed_packets++; + pkt->pkttype = pkttype; rc = GPG_ERR_UNKNOWN_PACKET; /* default error */ switch (pkttype) commit 692208fd6c1547cc7dd2062a1d1c9499bc0a8be4 Author: Justus Winter Date: Mon May 8 13:52:39 2017 +0200 gpg: Fix typo. -- Signed-off-by: Justus Winter diff --git a/g10/packet.h b/g10/packet.h index a10495c..d42510d 100644 --- a/g10/packet.h +++ b/g10/packet.h @@ -623,7 +623,7 @@ struct parse_packet_ctx_s iobuf_t inp; /* The input stream with the packets. */ struct packet_struct last_pkt; /* The last parsed packet. */ int free_last_pkt; /* Indicates that LAST_PKT must be freed. */ - int skip_meta; /* Skip right trust packets. */ + int skip_meta; /* Skip ring trust packets. */ }; typedef struct parse_packet_ctx_s *parse_packet_ctx_t; commit 38b48eb11b77b45c9d0292270f83e26e308f68e4 Author: Justus Winter Date: Mon May 8 12:37:20 2017 +0200 tests: Clarify comments. -- Signed-off-by: Justus Winter diff --git a/tests/openpgp/delete-keys.scm b/tests/openpgp/delete-keys.scm index 76cd424..16bde5f 100755 --- a/tests/openpgp/delete-keys.scm +++ b/tests/openpgp/delete-keys.scm @@ -58,13 +58,16 @@ (call-check `(, at gpg --delete-secret-keys ,subkey::fpr)) (assert (have-public-key? key)) (assert (have-public-key? subkey)) - ;; JW: Deleting the secret subkey also deletes the secret key. + ;; JW: Deleting the secret subkey also deletes the secret key. This + ;; is a deliberate design choice, and currently there is no way to + ;; delete the subkey without using --edit-key. ;; XXX (assert (have-secret-key? key)) ;; XXX (assert (have-secret-key-file? key)) (assert (not (have-secret-key? subkey))) (assert (not (have-secret-key-file? subkey))) ;; Then, delete the secret key. + ;; JW: We already deleted the key. See above. ;; XXX (call-check `(, at gpg --delete-secret-keys ,key::fpr)) (assert (have-public-key? key)) (assert (have-public-key? subkey)) @@ -75,11 +78,14 @@ ;; Now, delete the public subkey. (call-check `(, at gpg --delete-keys ,subkey::fpr)) - ;; JW: Deleting the subkey also deletes the key. + ;; JW: Deleting the subkey also deletes the key. This + ;; is a deliberate design choice, and currently there is no way to + ;; delete the subkey without using --edit-key. ;; XXX (assert (have-public-key? key)) (assert (not (have-public-key? subkey))) ;; Now, delete the public key. + ;; JW: We already deleted the key. See above. ;; XXX (call-check `(, at gpg --delete-keys ,key::fpr)) (assert (not (have-public-key? key))) (assert (not (have-public-key? subkey)))) commit 6fdeef5b61c814ba0e475bfc36655e4fe69d7c41 Author: Justus Winter Date: Mon May 8 12:18:19 2017 +0200 doc: Fix documentation. -- Fixes-commit: da4db172f6f8fb254b770e59770c531a488e2400 Signed-off-by: Justus Winter diff --git a/doc/gpg.texi b/doc/gpg.texi index aa55cb8..1a0ea55 100644 --- a/doc/gpg.texi +++ b/doc/gpg.texi @@ -393,7 +393,7 @@ functionality is also available as the subcommand "passwd" with the @option{--edit-card} command. @item --delete-keys @code{name} - at itemx --delete-keys @code{name} + at opindex delete-keys Remove key from the public keyring. In batch mode either @option{--yes} is required or the key must be specified by fingerprint. This is a safeguard against accidental deletion of multiple keys. ----------------------------------------------------------------------- Summary of changes: doc/gpg.texi | 2 +- g10/keyring.c | 4 ++-- g10/packet.h | 4 +++- g10/parse-packet.c | 3 +++ tests/openpgp/delete-keys.scm | 10 ++++++++-- 5 files changed, 17 insertions(+), 6 deletions(-) hooks/post-receive -- The GNU Privacy Guard http://git.gnupg.org From cvs at cvs.gnupg.org Mon May 8 15:24:50 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 08 May 2017 15:24:50 +0200 Subject: [git] gnupg-doc - branch, master, updated. 3092e9211c9bf6498778640b7208a80146d023da 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 3092e9211c9bf6498778640b7208a80146d023da (commit) via 34f8183f294e2000c9c0b26d3629b4fe42cdcaf9 (commit) from 5580a638b4f265e8d957289b59dc6656a33b9d50 (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 3092e9211c9bf6498778640b7208a80146d023da Author: Justus Winter Date: Mon May 8 15:24:25 2017 +0200 jenkins: avoid using build artifacts during builds diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash index 3155f63..eb17834 100755 --- a/misc/jenkins/bin/build.bash +++ b/misc/jenkins/bin/build.bash @@ -33,7 +33,18 @@ fi # Setup important envars PREFIX=$HOME/prefix/$XTARGET ORIGINAL_PREFIX=$HOME/prefix/$XTARGET -export PATH=$PREFIX/bin:$PATH + +# hackhackhack +# +# Copy all *-config scripts into a separate directory and put that +# into PATH. We want configure to pick them up, but we do not +# necessarily want to use all the other tools from $PREFIX/bin, +# because then we would have to point LD_LIBRARY_PATH to $PREFIX/lib, +# which we want to avoid at all costs. +mkdir -p $PREFIX/bin-config +cp $PREFIX/bin/*-config $PREFIX/bin-config +export PATH=$PREFIX/bin-config:$PATH +# kcahkcahkcah # Tweak the prefix we're installing this project into. For gnupg-1.4 # and friends. commit 34f8183f294e2000c9c0b26d3629b4fe42cdcaf9 Author: Justus Winter Date: Mon May 8 15:23:16 2017 +0200 jenkins: use default XTARGET for testing with simpler setups diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash index 0e9a698..3155f63 100755 --- a/misc/jenkins/bin/build.bash +++ b/misc/jenkins/bin/build.bash @@ -8,6 +8,8 @@ renice -n 10 -p $$ # Configuration. MAKE=make +XTARGET="${XTARGET:-native}" + # Platform-specific configuration. case "$(uname)" in OpenBSD) ----------------------------------------------------------------------- Summary of changes: misc/jenkins/bin/build.bash | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Mon May 8 15:48:38 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Mon, 08 May 2017 15:48:38 +0200 Subject: [git] gnupg-doc - branch, master, updated. c253cb3fca4d37df3002184367183fa8c010d63f 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 c253cb3fca4d37df3002184367183fa8c010d63f (commit) from 3092e9211c9bf6498778640b7208a80146d023da (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 c253cb3fca4d37df3002184367183fa8c010d63f Author: Justus Winter Date: Mon May 8 15:48:34 2017 +0200 git.gnupg.org: use phabricators clone for access over https diff --git a/misc/git.gnupg.org/index.html b/misc/git.gnupg.org/index.html index c53c961..0909b73 100644 --- a/misc/git.gnupg.org/index.html +++ b/misc/git.gnupg.org/index.html @@ -119,7 +119,7 @@ Here is a list of shortcuts to often used repositories: For actual work you should clone a repository; use

    -  git clone https://git.gnupg.org/foo.git
    +  git clone https://dev.gnupg.org/source/foo.git
     

    or

    
    -----------------------------------------------------------------------
    
    Summary of changes:
     misc/git.gnupg.org/index.html | 2 +-
     1 file changed, 1 insertion(+), 1 deletion(-)
    
    
    hooks/post-receive
    -- 
    The GnuPG website and other docs
    http://git.gnupg.org
    
    
    
    From cvs at cvs.gnupg.org  Mon May  8 15:59:14 2017
    From: cvs at cvs.gnupg.org (by Justus Winter)
    Date: Mon, 08 May 2017 15:59:14 +0200
    Subject: [git] gnupg-doc - branch, master,
     updated. e85064eb86522a0a5a635f1c4e48b62bcabd8a6b
    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  e85064eb86522a0a5a635f1c4e48b62bcabd8a6b (commit)
          from  c253cb3fca4d37df3002184367183fa8c010d63f (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 e85064eb86522a0a5a635f1c4e48b62bcabd8a6b
    Author: Justus Winter 
    Date:   Mon May 8 15:59:08 2017 +0200
    
        jenkins: include local bin directory in PATH
    
    diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash
    index eb17834..17e561a 100755
    --- a/misc/jenkins/bin/build.bash
    +++ b/misc/jenkins/bin/build.bash
    @@ -30,6 +30,11 @@ if ccache --version >/dev/null; then
         export CXX="ccache ${CXX:-g++}"
     fi
     
    +# Include local bin directory in PATH.
    +if [ -e "$HOME/bin" ]; then
    +    export PATH="$HOME/bin:$PATH"
    +fi
    +
     # Setup important envars
     PREFIX=$HOME/prefix/$XTARGET
     ORIGINAL_PREFIX=$HOME/prefix/$XTARGET
    
    -----------------------------------------------------------------------
    
    Summary of changes:
     misc/jenkins/bin/build.bash | 5 +++++
     1 file changed, 5 insertions(+)
    
    
    hooks/post-receive
    -- 
    The GnuPG website and other docs
    http://git.gnupg.org
    
    
    
    From cvs at cvs.gnupg.org  Mon May  8 16:47:41 2017
    From: cvs at cvs.gnupg.org (by Justus Winter)
    Date: Mon, 08 May 2017 16:47:41 +0200
    Subject: [git] gnupg-doc - branch, master,
     updated. 0a6069b00f02aa63adf284bfa9dd1148cd12fc5e
    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  0a6069b00f02aa63adf284bfa9dd1148cd12fc5e (commit)
          from  e85064eb86522a0a5a635f1c4e48b62bcabd8a6b (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 0a6069b00f02aa63adf284bfa9dd1148cd12fc5e
    Author: Justus Winter 
    Date:   Mon May 8 16:47:36 2017 +0200
    
        jenkins: add PREFIX/bin to the test environment
    
    diff --git a/misc/jenkins/bin/build.bash b/misc/jenkins/bin/build.bash
    index 17e561a..2390fb6 100755
    --- a/misc/jenkins/bin/build.bash
    +++ b/misc/jenkins/bin/build.bash
    @@ -193,6 +193,9 @@ esac
     #
     # KCAHKCAHKCAH
     
    +# And add $PREFIX/bin to PATH for the tests.
    +test_environment="$test_environment PATH=$ORIGINAL_PREFIX/bin:$PATH"
    +
     # We build on the "obj" subdir.
     abs_configure="$(pwd)/configure"
     mkdir -p obj
    
    -----------------------------------------------------------------------
    
    Summary of changes:
     misc/jenkins/bin/build.bash | 3 +++
     1 file changed, 3 insertions(+)
    
    
    hooks/post-receive
    -- 
    The GnuPG website and other docs
    http://git.gnupg.org
    
    
    
    From cvs at cvs.gnupg.org  Wed May 10 04:14:32 2017
    From: cvs at cvs.gnupg.org (by NIIBE Yutaka)
    Date: Wed, 10 May 2017 04:14:32 +0200
    Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-114-g0ce94a9
    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  0ce94a9698104d9bfc73d5a37478189564c96eb4 (commit)
           via  98b759119c81c5b39f34f8a9a7b6a57e91ad6470 (commit)
          from  22739433e98be80e46fe7d01d52a9627c1aebaae (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 0ce94a9698104d9bfc73d5a37478189564c96eb4
    Author: NIIBE Yutaka 
    Date:   Wed May 10 11:01:15 2017 +0900
    
        g10, sm, dirmngr, common: Add comment for fall through.
        
        * common/b64dec.c (b64dec_proc): Comment to clarify.
        * dirmngr/cdblib.c (cdb_make_put): Use same pattern to clarify.
        * dirmngr/dirmngr-client.c (read_pem_certificate): Likewise.
        * dirmngr/ks-engine-hkp.c (ks_hkp_get): Likewise.
        * g10/armor.c (unarmor_pump): Likewise.
        * g10/gpg.c (main): Likewise.
        * g10/import.c (read_block): Likewise.
        * g10/keygen.c (make_backsig): Likewise.
        * g10/pkclist.c (check_signatures_trust):  Likewise.
        * sm/gpgsm.c (main): Likewise.
        
        Signed-off-by: NIIBE Yutaka 
    
    diff --git a/common/b64dec.c b/common/b64dec.c
    index 74cf933..6af494b 100644
    --- a/common/b64dec.c
    +++ b/common/b64dec.c
    @@ -118,6 +118,7 @@ b64dec_proc (struct b64state *state, void *buffer, size_t length,
               break;
             case s_init:
               ds = s_lfseen;
    +          /* fall through */
             case s_lfseen:
               if (*s != "-----BEGIN "[pos])
                 {
    diff --git a/dirmngr/cdblib.c b/dirmngr/cdblib.c
    index c04690f..827399f 100644
    --- a/dirmngr/cdblib.c
    +++ b/dirmngr/cdblib.c
    @@ -617,7 +617,7 @@ cdb_make_put(struct cdb_make *cdbmp,
     	else
     	  r = 1;
           }
    -      /* fall */
    +      /* fall through */
     
         case CDB_PUT_ADD:
           rl = cdbmp->cdb_rec[hval&255];
    diff --git a/dirmngr/dirmngr-client.c b/dirmngr/dirmngr-client.c
    index c1ff635..4dc64bf 100644
    --- a/dirmngr/dirmngr-client.c
    +++ b/dirmngr/dirmngr-client.c
    @@ -517,7 +517,7 @@ read_pem_certificate (const char *fname, unsigned char **rbuf, size_t *rbuflen)
                 }
               break;
             case s_init:
    -          state = s_lfseen;
    +          state = s_lfseen; /* fall through */
             case s_lfseen:
               if (c != "-----BEGIN "[pos])
                 state = s_idle;
    diff --git a/dirmngr/ks-engine-hkp.c b/dirmngr/ks-engine-hkp.c
    index 1592fab..ddb8549 100644
    --- a/dirmngr/ks-engine-hkp.c
    +++ b/dirmngr/ks-engine-hkp.c
    @@ -1515,6 +1515,7 @@ ks_hkp_get (ctrl_t ctrl, parsed_uri_t uri, const char *keyspec, estream_t *r_fp)
     
         case KEYDB_SEARCH_MODE_FPR16:
           log_error ("HKP keyservers do not support v3 fingerprints\n");
    +      /* fall through */
         default:
           return gpg_error (GPG_ERR_INV_USER_ID);
         }
    diff --git a/g10/armor.c b/g10/armor.c
    index 7fb9a89..cc80968 100644
    --- a/g10/armor.c
    +++ b/g10/armor.c
    @@ -1440,7 +1440,7 @@ unarmor_pump (UnarmorPump x, int c)
             break;
           case STA_first_dash: /* just need for initialization */
             x->pos = 0;
    -        x->state = STA_compare_header;
    +        x->state = STA_compare_header; /* fall through */
           case STA_compare_header:
             if ( "-----BEGIN PGP SIGNATURE-----"[++x->pos] == c ) {
                 if ( x->pos == 28 )
    @@ -1521,7 +1521,7 @@ unarmor_pump (UnarmorPump x, int c)
             /* assume that we are at the next line */
             x->state = STA_read_crc;
             x->pos = 0;
    -        x->mycrc = 0;
    +        x->mycrc = 0; /* fall through */
           case STA_read_crc:
             if( (c = asctobin[c]) == 255 ) {
                 rval = -1; /* ready */
    diff --git a/g10/gpg.c b/g10/gpg.c
    index ecddb20..80e5197 100644
    --- a/g10/gpg.c
    +++ b/g10/gpg.c
    @@ -4303,9 +4303,9 @@ main (int argc, char **argv)
     	break;
     
           case aCheckKeys:
    -	opt.check_sigs = 1;
    +	opt.check_sigs = 1; /* fall through */
           case aListSigs:
    -	opt.list_sigs = 1;
    +	opt.list_sigs = 1; /* fall through */
           case aListKeys:
     	sl = NULL;
     	for( ; argc; argc--, argv++ )
    @@ -4468,7 +4468,7 @@ main (int argc, char **argv)
     	break;
     
           case aFastImport:
    -        opt.import_options |= IMPORT_FAST;
    +        opt.import_options |= IMPORT_FAST; /* fall through */
           case aImport:
     	import_keys (ctrl, argc? argv:NULL, argc, NULL, opt.import_options);
     	break;
    @@ -4930,7 +4930,7 @@ main (int argc, char **argv)
             if (!opt.quiet)
               log_info (_("WARNING: no command supplied."
                           "  Trying to guess what you mean ...\n"));
    -        /*FALLTHU*/
    +        /*FALLTHRU*/
           case aListPackets:
     	if( argc > 1 )
     	    wrong_args("[filename]");
    diff --git a/g10/import.c b/g10/import.c
    index a942c2e..d9d658b 100644
    --- a/g10/import.c
    +++ b/g10/import.c
    @@ -868,7 +868,7 @@ read_block( IOBUF a, int with_meta,
     		pkt = NULL;
     		goto ready;
                   }
    -	    in_cert = 1;
    +	    in_cert = 1; /* fall through */
     	  default:
               x_default:
     	    if (in_cert && valid_keyblock_packet (pkt->pkttype))
    diff --git a/g10/keygen.c b/g10/keygen.c
    index 2db37bf..0dfed63 100644
    --- a/g10/keygen.c
    +++ b/g10/keygen.c
    @@ -910,10 +910,10 @@ make_backsig (ctrl_t ctrl, PKT_signature *sig, PKT_public_key *pk,
     		case 2:
     		  pktlen  = (size_t)buf[mark++] << 24;
     		  pktlen |= buf[mark++] << 16;
    -
    +		  /* fall through */
     		case 1:
     		  pktlen |= buf[mark++] << 8;
    -
    +		  /* fall through */
     		case 0:
     		  pktlen |= buf[mark++];
     		}
    diff --git a/g10/pkclist.c b/g10/pkclist.c
    index e65da25..ab024d9 100644
    --- a/g10/pkclist.c
    +++ b/g10/pkclist.c
    @@ -632,7 +632,7 @@ check_signatures_trust (ctrl_t ctrl, PKT_signature *sig)
                   log_info (_("trustlevel adjusted to FULL"
                               " due to valid PKA info\n"));
                 }
    -          /* (fall through) */
    +          /* fall through */
             case TRUST_FULLY:
               if (!okay)
                 {
    diff --git a/sm/gpgsm.c b/sm/gpgsm.c
    index bcf479a..cb181e8 100644
    --- a/sm/gpgsm.c
    +++ b/sm/gpgsm.c
    @@ -1855,7 +1855,7 @@ main ( int argc, char **argv)
     
         case aListChain:
         case aDumpChain:
    -       ctrl.with_chain = 1;
    +       ctrl.with_chain = 1; /* fall through */
         case aListKeys:
         case aDumpKeys:
         case aListExternalKeys:
    
    commit 98b759119c81c5b39f34f8a9a7b6a57e91ad6470
    Author: NIIBE Yutaka 
    Date:   Wed May 10 10:58:31 2017 +0900
    
        g10: Stop compiler warning for t-stutter.
        
        * g10/t-stutter.c (do_test): Refer current_test_group_failed.
        
        --
        
        Since this test does not follow the framework of TEST/TEST_P/ABORT,
        the variable is not used.
        
        Signed-off-by: NIIBE Yutaka 
    
    diff --git a/g10/t-stutter.c b/g10/t-stutter.c
    index 8fe242d..503a920 100644
    --- a/g10/t-stutter.c
    +++ b/g10/t-stutter.c
    @@ -381,6 +381,7 @@ do_test (int argc, char *argv[])
       byte *raw_data;
       int raw_data_len;
     
    +  (void)current_test_group_failed;
       for (i = 1; i < argc; i ++)
         {
           if (strcmp (argv[i], "--debug") == 0)
    
    -----------------------------------------------------------------------
    
    Summary of changes:
     common/b64dec.c          | 1 +
     dirmngr/cdblib.c         | 2 +-
     dirmngr/dirmngr-client.c | 2 +-
     dirmngr/ks-engine-hkp.c  | 1 +
     g10/armor.c              | 4 ++--
     g10/gpg.c                | 8 ++++----
     g10/import.c             | 2 +-
     g10/keygen.c             | 4 ++--
     g10/pkclist.c            | 2 +-
     g10/t-stutter.c          | 1 +
     sm/gpgsm.c               | 2 +-
     11 files changed, 16 insertions(+), 13 deletions(-)
    
    
    hooks/post-receive
    -- 
    The GNU Privacy Guard
    http://git.gnupg.org
    
    
    
    From cvs at cvs.gnupg.org  Wed May 10 05:18:00 2017
    From: cvs at cvs.gnupg.org (by NIIBE Yutaka)
    Date: Wed, 10 May 2017 05:18:00 +0200
    Subject: [git] GnuPG - branch, master, updated. gnupg-2.1.20-115-g70ee7cd
    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  70ee7cd11b70694edb800da738c3423b3f1ff295 (commit)
          from  0ce94a9698104d9bfc73d5a37478189564c96eb4 (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 70ee7cd11b70694edb800da738c3423b3f1ff295
    Author: NIIBE Yutaka 
    Date:   Wed May 10 12:15:23 2017 +0900
    
        Register DCO for Ineiev.
        
        --
        
        Real name is confirmed by private mail.
        
        Signed-off-by: NIIBE Yutaka 
    
    diff --git a/AUTHORS b/AUTHORS
    index 8f1e27b..ec4b742 100644
    --- a/AUTHORS
    +++ b/AUTHORS
    @@ -180,6 +180,9 @@ Daniel Kahn Gillmor 
     Hans of Guardian 
     2013-06-26:D84473D7-F3F7-43D5-A9CE-16580B88D574 at guardianproject.info:
     
    +Ineiev 
    +2017-05-09:20170509121611.GH25850 at gnu.org:
    +
     Jonas Borgstr?m 
     2013-08-29:521F1E7A.5080602 at borgstrom.se:
     
    
    -----------------------------------------------------------------------
    
    Summary of changes:
     AUTHORS | 3 +++
     1 file changed, 3 insertions(+)
    
    
    hooks/post-receive
    -- 
    The GNU Privacy Guard
    http://git.gnupg.org
    
    
    
    From cvs at cvs.gnupg.org  Wed May 10 07:20:07 2017
    From: cvs at cvs.gnupg.org (by Ineiev)
    Date: Wed, 10 May 2017 07:20:07 +0200
    Subject: [git] GnuPG - branch, STABLE-BRANCH-1-4,
     updated. gnupg-1.4.21-6-g2c2121f
    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  2c2121ff3c2b90f21b75dd56c981b4d9e6d1c0e2 (commit)
          from  bb61191aad98c3dbb487c1f76dd1552d44a52fe3 (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 2c2121ff3c2b90f21b75dd56c981b4d9e6d1c0e2
    Author: Ineiev 
    Date:   Thu Apr 14 15:42:25 2016 +0000
    
        g10: Fix secmem leak.
        
        * g10/keygen.c (proc_parameter_file): Fix secmem leak.
        
        --
        
        proc_parameter_file adds certain parameters to the list in the PARA
        argument; however, these new entries are leaked because they
        are added to head, while the PARA list is released by the caller
        of proc_parameter_file.
        
        GnuPG-bug-id: 1371
        Signed-off-by: Ineiev 
    
    diff --git a/g10/keygen.c b/g10/keygen.c
    index 268fce5..dc6696a 100644
    --- a/g10/keygen.c
    +++ b/g10/keygen.c
    @@ -2329,8 +2329,8 @@ proc_parameter_file( struct para_data_s *para, const char *fname,
           r = xmalloc_clear(sizeof(*r));
           r->key = pKEYUSAGE;
           r->u.usage = openpgp_pk_algo_usage(algo);
    -      r->next = para;
    -      para = r;
    +      r->next = para->next;
    +      para->next = r;
         }
       else if (err == -1)
         return -1;
    @@ -2363,8 +2363,8 @@ proc_parameter_file( struct para_data_s *para, const char *fname,
     	  r = xmalloc_clear (sizeof(*r));
     	  r->key = pSUBKEYUSAGE;
     	  r->u.usage = openpgp_pk_algo_usage (algo);
    -	  r->next = para;
    -	  para = r;
    +	  r->next = para->next;
    +	  para->next = r;
     	}
           else if (err == -1)
     	return -1;
    @@ -2400,8 +2400,8 @@ proc_parameter_file( struct para_data_s *para, const char *fname,
     	    p = stpcpy(stpcpy(stpcpy(p," ("), s2 ),")");
     	  if( s3 )
     	    p = stpcpy(stpcpy(stpcpy(p," <"), s3 ),">");
    -	  r->next = para;
    -	  para = r;
    +	  r->next = para->next;
    +	  para->next = r;
     	  have_user_id=1;
     	}
         }
    @@ -2460,13 +2460,13 @@ proc_parameter_file( struct para_data_s *para, const char *fname,
         r = xmalloc_clear( sizeof *r );
         r->key = pPASSPHRASE_S2K;
         r->u.s2k = s2k;
    -    r->next = para;
    -    para = r;
    +    r->next = para->next;
    +    para->next = r;
         r = xmalloc_clear( sizeof *r );
         r->key = pPASSPHRASE_DEK;
         r->u.dek = dek;
    -    r->next = para;
    -    para = r;
    +    r->next = para->next;
    +    para->next = r;
       }
     
       /* Make KEYCREATIONDATE from Creation-Date.  */
    @@ -2504,8 +2504,8 @@ proc_parameter_file( struct para_data_s *para, const char *fname,
           r = xmalloc_clear( sizeof *r + 20 );
           r->key = pSUBKEYEXPIRE;
           r->u.expire = seconds;
    -      r->next = para;
    -      para = r;
    +      r->next = para->next;
    +      para->next = r;
         }
     
       if( !!outctrl->pub.newfname ^ !!outctrl->sec.newfname ) {
    
    -----------------------------------------------------------------------
    
    Summary of changes:
     g10/keygen.c | 24 ++++++++++++------------
     1 file changed, 12 insertions(+), 12 deletions(-)
    
    
    hooks/post-receive
    -- 
    The GNU Privacy Guard
    http://git.gnupg.org
    
    
    
    From cvs at cvs.gnupg.org  Wed May 10 10:26:38 2017
    From: cvs at cvs.gnupg.org (by Andre Heinecke)
    Date: Wed, 10 May 2017 10:26:38 +0200
    Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-34-g5e27bf9
    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  5e27bf98b4c48cf6a239bcc94b7b67515ff339e7 (commit)
           via  cc2ef3d07c0d261bb9e8e8c0f2706e1a08e4ec53 (commit)
           via  b56f398eff4e3e70dea714c3174a5512dd9bcf33 (commit)
           via  df4eb611e33dcab7bebf07b13734c7db7ccf40da (commit)
          from  28734240e2a2ce67b64df55364f35e1648376311 (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 5e27bf98b4c48cf6a239bcc94b7b67515ff339e7
    Author: Andre Heinecke 
    Date:   Wed May 10 10:24:18 2017 +0200
    
        qt: Add a missing include 
        
        * lang/qt/src/qgpgmenewcryptoconfig.cpp: Include functional.
        
        --
        This is intended to fix compilation against the c++ stdlib from
        Gentoo / GCC 7.
        
        Patch provided by Martin V?th.
        GnuPG-Bug-Id: T3151
    
    diff --git a/lang/qt/src/qgpgmenewcryptoconfig.cpp b/lang/qt/src/qgpgmenewcryptoconfig.cpp
    index d413126..ba028a9 100644
    --- a/lang/qt/src/qgpgmenewcryptoconfig.cpp
    +++ b/lang/qt/src/qgpgmenewcryptoconfig.cpp
    @@ -49,6 +49,7 @@
     
     #include 
     #include 
    +#include 
     #include 
     #include 
     
    
    commit cc2ef3d07c0d261bb9e8e8c0f2706e1a08e4ec53
    Author: Andre Heinecke 
    Date:   Wed May 10 10:22:23 2017 +0200
    
        qt: Undeprecate API that I find useful
        
        * lang/qt/src/decryptjob.h,
        lang/qt/src/decryptverifyjob.h,
        lang/qt/src/signencryptjob.h,
        lang/qt/src/verifydetachedjob.h,
        lang/qt/src/verifyopaquejob.h: Undeprecate ByteArray based API.
        
        --
        While an IODevice may be more performant the ByteArray API is
        a very easy way to get started with QGpgME as it allows you
        basically to encrypt / decrypt any QString.
        
        This also fixes a ton of deprecation warnings in KDE where this
        API is used all over the place.
    
    diff --git a/lang/qt/src/decryptjob.h b/lang/qt/src/decryptjob.h
    index 11584db..7753e18 100644
    --- a/lang/qt/src/decryptjob.h
    +++ b/lang/qt/src/decryptjob.h
    @@ -76,7 +76,7 @@ public:
            Starts the decryption operation. \a cipherText is the data to
            decrypt.
         */
    -    virtual QGPGME_DEPRECATED_EXPORT GpgME::Error start(const QByteArray &cipherText) = 0;
    +    virtual GpgME::Error start(const QByteArray &cipherText) = 0;
     
         /*!
           \overload
    diff --git a/lang/qt/src/decryptverifyjob.h b/lang/qt/src/decryptverifyjob.h
    index c3fcf02..e5c4346 100644
    --- a/lang/qt/src/decryptverifyjob.h
    +++ b/lang/qt/src/decryptverifyjob.h
    @@ -77,7 +77,7 @@ public:
            Starts the combined decryption and verification operation.
            \a cipherText is the data to decrypt and later verify.
         */
    -    virtual QGPGME_DEPRECATED_EXPORT GpgME::Error start(const QByteArray &cipherText) = 0;
    +    virtual GpgME::Error start(const QByteArray &cipherText) = 0;
     
         /*!
           \overload
    diff --git a/lang/qt/src/signencryptjob.h b/lang/qt/src/signencryptjob.h
    index 86e0a9d..61ab5c6 100644
    --- a/lang/qt/src/signencryptjob.h
    +++ b/lang/qt/src/signencryptjob.h
    @@ -95,7 +95,7 @@ public:
            \em recipient keys will not be performed, but full validity
            assumed for all \em recipient keys without further checks.
         */
    -    virtual QGPGME_DEPRECATED_EXPORT GpgME::Error start(const std::vector &signers,
    +    virtual GpgME::Error start(const std::vector &signers,
                 const std::vector &recipients,
                 const QByteArray &plainText,
                 bool alwaysTrust = false) = 0;
    diff --git a/lang/qt/src/verifydetachedjob.h b/lang/qt/src/verifydetachedjob.h
    index a9b7cf4..2293f3a 100644
    --- a/lang/qt/src/verifydetachedjob.h
    +++ b/lang/qt/src/verifydetachedjob.h
    @@ -78,7 +78,7 @@ public:
            signature data, while \a signedData contains the data over
            which the signature was made.
         */
    -    virtual QGPGME_DEPRECATED_EXPORT GpgME::Error start(const QByteArray &signature,
    +    virtual GpgME::Error start(const QByteArray &signature,
                 const QByteArray &signedData) = 0;
     
         /*!
    diff --git a/lang/qt/src/verifyopaquejob.h b/lang/qt/src/verifyopaquejob.h
    index 0ff8582..bfa34e9 100644
    --- a/lang/qt/src/verifyopaquejob.h
    +++ b/lang/qt/src/verifyopaquejob.h
    @@ -77,7 +77,7 @@ public:
            signature data, while \a signedData contains the data over
            which the signature was made.
         */
    -    virtual QGPGME_DEPRECATED_EXPORT GpgME::Error start(const QByteArray &signedData) = 0;
    +    virtual GpgME::Error start(const QByteArray &signedData) = 0;
     
         /*!
           \overload
    
    commit b56f398eff4e3e70dea714c3174a5512dd9bcf33
    Author: Andre Heinecke 
    Date:   Wed May 10 10:18:41 2017 +0200
    
        qt, tests: Don't use internal API
        
        * lang/qt/tests/t-encrypt.cpp, lang/qt/tests/t-tofuinfo.cpp:
        Only use exported API.
        
        --
        With the Job::Context hack we no longer need to use internal API.
    
    diff --git a/lang/qt/tests/t-encrypt.cpp b/lang/qt/tests/t-encrypt.cpp
    index 65fe735..5bd472a 100644
    --- a/lang/qt/tests/t-encrypt.cpp
    +++ b/lang/qt/tests/t-encrypt.cpp
    @@ -42,10 +42,10 @@
     #include "encryptjob.h"
     #include "signencryptjob.h"
     #include "signingresult.h"
    -#include "qgpgmeencryptjob.h"
    +#include "encryptjob.h"
     #include "encryptionresult.h"
     #include "decryptionresult.h"
    -#include "qgpgmedecryptjob.h"
    +#include "decryptjob.h"
     #include "qgpgmebackend.h"
     #include "keylistresult.h"
     #include "engineinfo.h"
    @@ -106,11 +106,11 @@ private Q_SLOTS:
             if (!decryptSupported()) {
                 return;
             }
    -        auto ctx = Context::createForProtocol(OpenPGP);
    +        auto decJob = openpgp()->decryptJob();
    +        auto ctx = Job::context(decJob);
             TestPassphraseProvider provider;
             ctx->setPassphraseProvider(&provider);
             ctx->setPinentryMode(Context::PinentryLoopback);
    -        auto decJob = new QGpgMEDecryptJob(ctx);
             QByteArray plainText;
             auto decResult = decJob->exec(cipherText, plainText);
             QVERIFY(!decResult.error());
    @@ -177,13 +177,13 @@ private Q_SLOTS:
             if (!decryptSupported()) {
                 return;
             }
    -        auto ctx = Context::createForProtocol(OpenPGP);
    +        auto job = openpgp()->encryptJob();
    +        auto ctx = Job::context(job);
             TestPassphraseProvider provider;
             ctx->setPassphraseProvider(&provider);
             ctx->setPinentryMode(Context::PinentryLoopback);
             ctx->setArmor(true);
             ctx->setTextMode(true);
    -        auto job = new QGpgMEEncryptJob(ctx);
             QByteArray cipherText;
             auto result = job->exec(std::vector(), QStringLiteral("Hello symmetric World").toUtf8(), Context::AlwaysTrust, cipherText);
             delete job;
    @@ -193,10 +193,10 @@ private Q_SLOTS:
     
             killAgent(mDir.path());
     
    -        auto ctx2 = Context::createForProtocol(OpenPGP);
    +        auto decJob = openpgp()->decryptJob();
    +        auto ctx2 = Job::context(decJob);
             ctx2->setPassphraseProvider(&provider);
             ctx2->setPinentryMode(Context::PinentryLoopback);
    -        auto decJob = new QGpgMEDecryptJob(ctx2);
             QByteArray plainText;
             auto decResult = decJob->exec(cipherText, plainText);
             QVERIFY(!result.error());
    @@ -238,13 +238,14 @@ private Q_SLOTS:
             if (!decryptSupported()) {
                 return;
             }
    -        auto ctx = Context::createForProtocol(OpenPGP);
    +
    +        auto decJob = openpgp()->decryptJob();
    +        auto ctx = Job::context(decJob);
             TestPassphraseProvider provider;
             ctx->setPassphraseProvider(&provider);
             ctx->setPinentryMode(Context::PinentryLoopback);
             ctx->setDecryptionFlags(Context::DecryptUnwrap);
     
    -        auto decJob = new QGpgMEDecryptJob(ctx);
             QByteArray plainText;
             auto decResult = decJob->exec(cipherText, plainText);
     
    @@ -282,12 +283,12 @@ private:
             QVERIFY(keys.size() == 1);
             delete listjob;
     
    -        auto ctx = Context::createForProtocol(OpenPGP);
    +        auto job = openpgp()->encryptJob();
    +        auto ctx = Job::context(job);
             ctx->setPassphraseProvider(new TestPassphraseProvider);
             ctx->setPinentryMode(Context::PinentryLoopback);
             ctx->setArmor(true);
             ctx->setTextMode(true);
    -        auto job = new QGpgMEEncryptJob(ctx);
             QByteArray cipherText;
             printf("Before exec, flags: %x\n", Context::Symmetric | Context::AlwaysTrust);
             auto result = job->exec(keys, QStringLiteral("Hello symmetric World").toUtf8(),
    @@ -310,11 +311,11 @@ private:
             agentConf.write("allow-loopback-pinentry");
             agentConf.close();
     
    -        auto ctx2 = Context::createForProtocol(OpenPGP);
    +        auto decJob = openpgp()->decryptJob();
    +        auto ctx2 = Job::context(decJob);
             ctx2->setPassphraseProvider(new TestPassphraseProvider);
             ctx2->setPinentryMode(Context::PinentryLoopback);
             ctx2->setTextMode(true);
    -        auto decJob = new QGpgMEDecryptJob(ctx2);
             QByteArray plainText;
             auto decResult = decJob->exec(cipherText, plainText);
             QVERIFY(!decResult.error());
    diff --git a/lang/qt/tests/t-tofuinfo.cpp b/lang/qt/tests/t-tofuinfo.cpp
    index 926728d..b716102 100644
    --- a/lang/qt/tests/t-tofuinfo.cpp
    +++ b/lang/qt/tests/t-tofuinfo.cpp
    @@ -48,10 +48,11 @@
     #include "importresult.h"
     #include "keylistjob.h"
     #include "keylistresult.h"
    -#include "qgpgmesignjob.h"
    +#include "signjob.h"
     #include "key.h"
     #include "t-support.h"
     #include "engineinfo.h"
    +#include "context.h"
     #include 
     
     using namespace QGpgME;
    @@ -151,11 +152,11 @@ private:
     
         void signAndVerify(const QString &what, const GpgME::Key &key, int expected)
         {
    -        Context *ctx = Context::createForProtocol(OpenPGP);
    +        auto job = openpgp()->signJob();
    +        auto ctx = Job::context(job);
             TestPassphraseProvider provider;
             ctx->setPassphraseProvider(&provider);
             ctx->setPinentryMode(Context::PinentryLoopback);
    -        auto *job = new QGpgMESignJob(ctx);
     
             std::vector keys;
             keys.push_back(key);
    
    commit df4eb611e33dcab7bebf07b13734c7db7ccf40da
    Author: Andre Heinecke 
    Date:   Wed Apr 5 18:23:48 2017 +0200
    
        core: Don't split gpgconf strings on comma
        
        * src/engine-gpgconf.c (gpgconf_parse_option): Don't split
        strings on comma.
        
        --
        This only affects values where the main type is string. Values
        with the alt_type string but another main type are still split
        to keep lists (e.g. groups) working.
    
    diff --git a/src/engine-gpgconf.c b/src/engine-gpgconf.c
    index 6f7c8ac..af5f110 100644
    --- a/src/engine-gpgconf.c
    +++ b/src/engine-gpgconf.c
    @@ -399,7 +399,7 @@ gpgconf_parse_option (gpgme_conf_opt_t opt,
     		      gpgme_conf_arg_t *arg_p, char *line)
     {
       gpgme_error_t err;
    -  char *mark;
    +  char *mark = NULL;
     
       if (!line[0])
         return 0;
    @@ -408,7 +408,8 @@ gpgconf_parse_option (gpgme_conf_opt_t opt,
         {
           gpgme_conf_arg_t arg;
     
    -      mark = strchr (line, ',');
    +      if (opt->type != GPGME_CONF_STRING)
    +        mark = strchr (line, ',');
           if (mark)
     	*mark = '\0';
     
    
    -----------------------------------------------------------------------
    
    Summary of changes:
     lang/qt/src/decryptjob.h              |  2 +-
     lang/qt/src/decryptverifyjob.h        |  2 +-
     lang/qt/src/qgpgmenewcryptoconfig.cpp |  1 +
     lang/qt/src/signencryptjob.h          |  2 +-
     lang/qt/src/verifydetachedjob.h       |  2 +-
     lang/qt/src/verifyopaquejob.h         |  2 +-
     lang/qt/tests/t-encrypt.cpp           | 29 +++++++++++++++--------------
     lang/qt/tests/t-tofuinfo.cpp          |  7 ++++---
     src/engine-gpgconf.c                  |  5 +++--
     9 files changed, 28 insertions(+), 24 deletions(-)
    
    
    hooks/post-receive
    -- 
    GnuPG Made Easy
    http://git.gnupg.org
    
    
    
    From cvs at cvs.gnupg.org  Wed May 10 14:45:04 2017
    From: cvs at cvs.gnupg.org (by Kai Michaelis)
    Date: Wed, 10 May 2017 14:45:04 +0200
    Subject: [git] gnupg-doc - branch, preview,
     updated. c4d9b1a8841c80e7d9c4c23b52f46e95ba4f7f7e
    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, preview has been updated
           via  c4d9b1a8841c80e7d9c4c23b52f46e95ba4f7f7e (commit)
          from  dc2082d1e6da874f3170a4b6e2176dd049185bf9 (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 c4d9b1a8841c80e7d9c4c23b52f46e95ba4f7f7e
    Author: Kai Michaelis 
    Date:   Wed May 10 14:46:49 2017 +0200
    
        new donate html
    
    diff --git a/web/donate/donate.org b/web/donate/donate.org
    index f645796..1222b08 100644
    --- a/web/donate/donate.org
    +++ b/web/donate/donate.org
    @@ -10,146 +10,325 @@
       
     
     
    -
    -
    -
    -  
    -
    -  
    - -

    Keep this field clear: -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    How much do you want to donate?
    - (choosing ?other? allows - to donate in other currencies)
    Amount: - - - - - - -
    - other: - - - -
    Recurring: - -
     
    Pay using: - - -
    - -
    - -
     
    - If you want to be listed on the - list of donors, - please enter your name as it shall appear there. -
    - (optional) - -
    - In case of payment problems we may want to contact you, thus please - enter your e-mail address. -
    - (optional) - -
    - If you want to leave a message for us, please enter it here: -
    - -
    -
    - -
    -
    -
    + + + + +
    +
    +
    +

    Support GnuPG

    +

    To process your donation we need to collect some information. This information is only used for the purpose of the donation and no data will ever be send to any entity not directly involved in the donation process. Not giving a name makes the donation ?anonymous? in that the name won?t be listed on the public thank you page.

    +

    You can also send us Bitcoin. Our address is 175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W.

    +
    +
    +
    + + + +
    + +
    + + + + + + + + + + + + + +
    +
    + + +
    +
    +
    +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    + Choosing ?other? allows to donate in other currencies. +
    +
    + + +
    + +
    + +
    +
    + + +
    + +
    +
    + +
    +
    + +
    +
    + +
    +
    +
    + + +
    + +
    + + + If you want to be listed on the list of donors, please enter your name as it shall appear there. + +
    +
    + + +
    + +
    + + + In case of payment problems we may want to contact you, thus please enter your e-mail address. + +
    +
    + + +
    + +
    + + + If you want to leave a message for us, please enter it here. + +
    +
    +
    +
    + +
    +
    +
    +
    - #+END_HTML - +# +# +#
    +# +#

    Keep this field clear: +#

    +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +# +#
    How much do you want to donate?
    +# (choosing ?other? allows +# to donate in other currencies)
    Amount: +# +# +# +# +# +# +#
    +# other: +# +# +# +#
    Recurring: +# +#
     
    Pay using: +# +# +#
    +# +#
    +# +#
     
    +# If you want to be listed on the +# list of donors, +# please enter your name as it shall appear there. +#
    +# (optional) +# +#
    +# In case of payment problems we may want to contact you, thus please +# enter your e-mail address. +#
    +# (optional) +# +#
    +# If you want to leave a message for us, please enter it here: +#
    +# +#
    +#
    +# +#
    +#
    +#
    +# +# +# +# # eof # ----------------------------------------------------------------------- Summary of changes: web/donate/donate.org | 455 +++++++++++++++++++++++++++++++++++--------------- 1 file changed, 317 insertions(+), 138 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 10 15:55:45 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Wed, 10 May 2017 15:55:45 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-37-ga226eca 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 a226eca84670ef4e171c3a54e7caefb3a89254a4 (commit) via 15adff073bb89dc032d8342cfbbdad2850943f52 (commit) via 093b5497b7231590ce91ccf73ba64ebc0757f9e9 (commit) from 5e27bf98b4c48cf6a239bcc94b7b67515ff339e7 (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 a226eca84670ef4e171c3a54e7caefb3a89254a4 Author: Justus Winter Date: Wed May 10 15:52:12 2017 +0200 tests: Make sure to kill all previously running daemons. * lang/python/tests/Makefile.am: Kill all previously running daemons before creating the private key store. * lang/qt/tests/Makefile.am: Likewise. * tests/gpg/Makefile.am: Likewise. * tests/gpgsm/Makefile.am: Likewise. -- Now that the daemons sockets are no longer created in the GNUPGHOME, we cannot rely on cleaning the build directory to make sure they are shut down. Therefore, we explicitly kill any running daemons when creating the test environment. Signed-off-by: Justus Winter diff --git a/lang/python/tests/Makefile.am b/lang/python/tests/Makefile.am index b62b524..790d8f8 100644 --- a/lang/python/tests/Makefile.am +++ b/lang/python/tests/Makefile.am @@ -97,6 +97,7 @@ BUILT_SOURCES = gpg.conf gpg-agent.conf pubring-stamp \ private-keys-v1.d/gpg-sample.stamp ./private-keys-v1.d/gpg-sample.stamp: $(private_keys) + -gpgconf --kill all $(MKDIR_P) ./private-keys-v1.d for k in $(private_keys); do \ cp $$k private-keys-v1.d/$${k#$(test_srcdir)/}.key; \ diff --git a/lang/qt/tests/Makefile.am b/lang/qt/tests/Makefile.am index c4665df..a662b4c 100644 --- a/lang/qt/tests/Makefile.am +++ b/lang/qt/tests/Makefile.am @@ -77,6 +77,7 @@ export GNUPGHOME := $(abs_builddir) pubring-stamp: $(top_srcdir)/tests/gpg/pubdemo.asc \ $(top_srcdir)/tests/gpg/secdemo.asc + -gpgconf --kill all echo "ignore-invalid-option allow-loopback-pinentry" > $(abs_builddir)/gpg-agent.conf echo "allow-loopback-pinentry" >> gpg-agent.conf echo "ignore-invalid-option pinentry-mode" > gpg.conf diff --git a/tests/gpg/Makefile.am b/tests/gpg/Makefile.am index ed1323b..b2e8837 100644 --- a/tests/gpg/Makefile.am +++ b/tests/gpg/Makefile.am @@ -89,6 +89,7 @@ export GNUPGHOME := $(abs_builddir) export GPG_AGENT_INFO := ./private-keys-v1.d/gpg-sample.stamp: $(srcdir)/$(private_keys) + -gpgconf --kill all $(MKDIR_P) ./private-keys-v1.d for k in $(private_keys); do \ cp $(srcdir)/$$k private-keys-v1.d/$$k.key; \ diff --git a/tests/gpgsm/Makefile.am b/tests/gpgsm/Makefile.am index 76e4938..adae6a2 100644 --- a/tests/gpgsm/Makefile.am +++ b/tests/gpgsm/Makefile.am @@ -74,6 +74,7 @@ BUILT_SOURCES = gpgsm.conf trustlist.txt pubring-stamp \ echo faked-system-time 1008241200 >> ./gpgsm.conf ./private-keys-v1.d/gpg-sample.stamp: $(srcdir)/$(key_id) + -gpgconf --kill all $(MKDIR_P) ./private-keys-v1.d cp $(srcdir)/$(key_id) private-keys-v1.d/$(key_id).key echo x > ./private-keys-v1.d/gpg-sample.stamp commit 15adff073bb89dc032d8342cfbbdad2850943f52 Author: Justus Winter Date: Wed May 10 15:49:54 2017 +0200 tests: Harmonize test suites. * lang/python/tests/Makefile.am: Create test environment as part of 'make all'. * tests/gpg/Makefile.am: Make sure the private keystore is created first. * tests/gpgsm/Makefile.am: Create test environment as part of 'make all'. Make sure the private keystore is created first. Signed-off-by: Justus Winter diff --git a/lang/python/tests/Makefile.am b/lang/python/tests/Makefile.am index 9c19a13..b62b524 100644 --- a/lang/python/tests/Makefile.am +++ b/lang/python/tests/Makefile.am @@ -71,7 +71,7 @@ check: xcheck .PHONY: xcheck -xcheck: ./pubring-stamp +xcheck: $(TESTS_ENVIRONMENT) $(PYTHON) $(srcdir)/run-tests.py \ --interpreters="$(PYTHONS)" --srcdir=$(srcdir) $(TESTFLAGS) \ $(XTESTS) @@ -93,6 +93,9 @@ clean-local: -rm -fR -- private-keys-v1.d openpgp-revocs.d S.gpg-agent sshcontrol +BUILT_SOURCES = gpg.conf gpg-agent.conf pubring-stamp \ + private-keys-v1.d/gpg-sample.stamp + ./private-keys-v1.d/gpg-sample.stamp: $(private_keys) $(MKDIR_P) ./private-keys-v1.d for k in $(private_keys); do \ diff --git a/tests/gpg/Makefile.am b/tests/gpg/Makefile.am index 1d9a6df..ed1323b 100644 --- a/tests/gpg/Makefile.am +++ b/tests/gpg/Makefile.am @@ -95,7 +95,7 @@ export GPG_AGENT_INFO := done echo x > ./private-keys-v1.d/gpg-sample.stamp -./pubring-stamp: $(srcdir)/pubdemo.asc +./pubring-stamp: $(srcdir)/pubdemo.asc ./private-keys-v1.d/gpg-sample.stamp $(GPG) --batch --no-permission-warning \ --import $(srcdir)/pubdemo.asc -$(GPG) --batch --no-permission-warning \ diff --git a/tests/gpgsm/Makefile.am b/tests/gpgsm/Makefile.am index 46d6a9b..76e4938 100644 --- a/tests/gpgsm/Makefile.am +++ b/tests/gpgsm/Makefile.am @@ -44,7 +44,7 @@ noinst_PROGRAMS = $(c_tests) t-genkey cms-keylist cms-decrypt key_id = 32100C27173EF6E9C4E9A25D3D69F86D37A4F939 -CLEANFILES = pubring.kbx pubring.kbx~ gpgsm.conf trustlist.txt \ +CLEANFILES = pubring-stamp pubring.kbx pubring.kbx~ gpgsm.conf trustlist.txt \ random_seed S.gpg-agent clean-local: @@ -62,16 +62,21 @@ export GNUPGHOME := $(abs_builddir) export GPG_AGENT_INFO := -./pubring.kbx: $(srcdir)/cert_g10code_test1.der +BUILT_SOURCES = gpgsm.conf trustlist.txt pubring-stamp \ + private-keys-v1.d/gpg-sample.stamp + +./pubring-stamp: $(srcdir)/cert_g10code_test1.der ./private-keys-v1.d/gpg-sample.stamp $(GPGSM) --import $(srcdir)/cert_g10code_test1.der + touch pubring-stamp ./gpgsm.conf: echo disable-crl-checks > ./gpgsm.conf echo faked-system-time 1008241200 >> ./gpgsm.conf -./private-keys-v1.d/$(key_id).key: $(srcdir)/$(key_id) +./private-keys-v1.d/gpg-sample.stamp: $(srcdir)/$(key_id) $(MKDIR_P) ./private-keys-v1.d cp $(srcdir)/$(key_id) private-keys-v1.d/$(key_id).key + echo x > ./private-keys-v1.d/gpg-sample.stamp ./trustlist.txt: echo $(key_id) > ./trustlist.txt commit 093b5497b7231590ce91ccf73ba64ebc0757f9e9 Author: Justus Winter Date: Wed May 10 15:23:56 2017 +0200 qt: Stop agent on clean. * lang/qt/tests/Makefile.am (clean-local): Stop agent. Signed-off-by: Justus Winter diff --git a/lang/qt/tests/Makefile.am b/lang/qt/tests/Makefile.am index ccad8c2..c4665df 100644 --- a/lang/qt/tests/Makefile.am +++ b/lang/qt/tests/Makefile.am @@ -70,6 +70,7 @@ CLEANFILES = secring.gpg pubring.gpg pubring.kbx trustdb.gpg dirmngr.conf \ gpg.conf tofu.db clean-local: + -$(top_srcdir)/tests/start-stop-agent --stop -rm -fR private-keys-v1.d crls.d export GNUPGHOME := $(abs_builddir) ----------------------------------------------------------------------- Summary of changes: lang/python/tests/Makefile.am | 6 +++++- lang/qt/tests/Makefile.am | 2 ++ tests/gpg/Makefile.am | 3 ++- tests/gpgsm/Makefile.am | 12 +++++++++--- 4 files changed, 18 insertions(+), 5 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 10 15:59:23 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 10 May 2017 15:59:23 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 7212767b15d6ac27d0184e13471416ecf67310f0 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, preview has been updated via 7212767b15d6ac27d0184e13471416ecf67310f0 (commit) from c4d9b1a8841c80e7d9c4c23b52f46e95ba4f7f7e (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 7212767b15d6ac27d0184e13471416ecf67310f0 Author: Werner Koch Date: Wed May 10 15:56:13 2017 +0200 cgi: Make the donation page work with the CGI. diff --git a/cgi/procdonate.cgi b/cgi/procdonate.cgi index c0894af..9a54627 100755 --- a/cgi/procdonate.cgi +++ b/cgi/procdonate.cgi @@ -64,7 +64,7 @@ sub complete_sepa (); # # assuming that the value of FOO is foo. Note that this substitution # rules work for all tags and thus you better take care to add an -# extra space if if do not want this to happen. +# extra space if you do not want this to happen. sub write_template ($) { my $fname = shift; @@ -82,9 +82,11 @@ sub write_template ($) { my $recur_month = ''; my $recur_quarter = ''; my $recur_year = ''; + my $recur_text = ''; my $message_fmt; my $publishname; my $check_paytype = 'none'; + my $stripe_data_email = ''; # Avoid broken HTML attributes. $amount =~ s/\x22/\x27/g; @@ -123,16 +125,28 @@ sub write_template ($) { $sel_jpy = ' selected="selected"'; } + # For non-recurring Stripe donations we do not want to send a + # data-email="$mail" + # line to Stripe so to enable the user to use a a different mail + # address for use with them. This is implemented using a + # STRIPE_DATA_EMAIL template variable. + $stripe_data_email = 'data-email="' . $mail . '"'; if ( $recur =~ /0/ ) { + $stripe_data_email = ''; $recur_none = ' selected="selected"'; + $recur_text = ''; } elsif ( $recur =~ /12/ ) { $recur_month = ' selected="selected"'; + $recur_text = 'monthly'; } elsif ( $recur =~ /4/ ) { $recur_quarter = ' selected="selected"'; + $recur_text = 'quarterly'; } elsif ( $recur =~ /1/ ) { $recur_year = ' selected="selected"'; + $recur_text = 'yearly'; } + if ( $paytype eq "cc" ) { $check_paytype = "CC"; } elsif ( $paytype eq "pp" ) { @@ -192,6 +206,8 @@ sub write_template ($) { || s/(/$recur_month>/ || s/(/$recur_quarter>/ || s/(/$recur_year>/ + || s//$recur_text/ + || s//$stripe_data_email/ || s//$publishname/ || s//$separef/ || s//$errorstr/ @@ -430,6 +446,7 @@ sub check_donation () # Now create a session. $data{"Stripeamount"} = $stripeamount; $data{"Euroamount"} = $euroamount; + $data{"Recur"} = $recur; $data{"Name"} = $name; $data{"Mail"} = $mail; $data{"Message"} = $message; @@ -487,6 +504,7 @@ sub complete_stripe_checkout () "GnuPG donation by " . $data{"Name"} . " <" . $data{"Mail"} . ">"; $stripe{"Stmt-Desc"} = "GnuPG donation"; $stripe{"Email"} = $q->param("stripeEmail"); + $stripe{"Recur"} = $q->param("Recur"); $stripe{"Meta[name]"} = $data{"Name"} unless $data{"Name"} eq 'Anonymous'; if ($data{"Mail"} ne $q->param("stripeEmail")) { $stripe{"Meta[mail]"} = $data{"Mail"}; @@ -507,6 +525,7 @@ sub complete_stripe_checkout () $message = < - - - -
    -
    -
    -

    Support GnuPG

    -

    To process your donation we need to collect some information. This information is only used for the purpose of the donation and no data will ever be send to any entity not directly involved in the donation process. Not giving a name makes the donation ?anonymous? in that the name won?t be listed on the public thank you page.

    -

    You can also send us Bitcoin. Our address is 175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W.

    -
    -
    -
    - - - -
    - -
    - - - - - - - - - - - - - -
    -
    - - -
    -
    -
    -
    -
    - -
    -
    -
    - -
    -
    - -
    -
    - Choosing ?other? allows to donate in other currencies. -
    -
    - - -
    - -
    - -
    -
    - - -
    - -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    - - -
    - -
    - - - If you want to be listed on the list of donors, please enter your name as it shall appear there. - -
    -
    - - -
    - -
    - - - In case of payment problems we may want to contact you, thus please enter your e-mail address. - -
    -
    - - -
    - -
    - - - If you want to leave a message for us, please enter it here. - -
    -
    -
    -
    - -
    -
    -
    -
    + + + +
    +
    +
    +

    Support GnuPG

    +

    To process your donation we need to collect some information. This information is only used for the purpose of the donation and no data will ever be send to any entity not directly involved in the donation process. Not giving a name makes the donation ?anonymous? in that the name won?t be listed on the public thank you page.

    +

    You can also send us Bitcoin. Our address is 175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W.

    +
    +
    + + + +
    + + + +
    + +
    + + + + + + + + + + + + + +
    +
    + + +
    +
    +
    +
    +
    + +
    +
    +
    + +
    +
    + + +
    +
    + Choosing ?other? allows to donate + in other currencies. +
    +
    + + +
    + +
    + +
    +
    + + +
    + +
    +
    + + +
    +
    + +
    +
    + +
    +
    +
    + + +
    + +
    + + + + If you want to be listed on the + list of donors, please enter your name as + it shall appear there. + +
    +
    + + +
    + +
    + + + + In case of payment problems we may want to contact you, + thus please enter your e-mail address. + +
    +
    + + +
    + +
    + + + If you want to leave a message for us, please enter it here. + +
    +
    +
    +
    + +
    +
    +
    +
    #+END_HTML -# -# -#
    -# -#

    Keep this field clear: -#

    -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -#
    How much do you want to donate?
    -# (choosing ?other? allows -# to donate in other currencies)
    Amount: -# -# -# -# -# -# -#
    -# other: -# -# -# -#
    Recurring: -# -#
     
    Pay using: -# -# -#
    -# -#
    -# -#
     
    -# If you want to be listed on the -# list of donors, -# please enter your name as it shall appear there. -#
    -# (optional) -# -#
    -# In case of payment problems we may want to contact you, thus please -# enter your e-mail address. -#
    -# (optional) -# -#
    -# If you want to leave a message for us, please enter it here: -#
    -# -#
    -#
    -# -#
    -#
    -#
    -# -# -# -# -# eof # ----------------------------------------------------------------------- Summary of changes: cgi/procdonate.cgi | 23 ++- web/donate/donate.org | 527 ++++++++++++++++++++------------------------------ 2 files changed, 230 insertions(+), 320 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 10 16:22:30 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Wed, 10 May 2017 16:22:30 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 5a9e5bfdff6d09805851d133635a5d856fbe3ae1 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, preview has been updated via 5a9e5bfdff6d09805851d133635a5d856fbe3ae1 (commit) from 7212767b15d6ac27d0184e13471416ecf67310f0 (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 5a9e5bfdff6d09805851d133635a5d856fbe3ae1 Author: Werner Koch Date: Wed May 10 16:19:21 2017 +0200 cgi: Adjust the checkout page diff --git a/web/donate/checkout-cc.org b/web/donate/checkout-cc.org index 8651eb0..69b2a87 100644 --- a/web/donate/checkout-cc.org +++ b/web/donate/checkout-cc.org @@ -2,37 +2,41 @@ #+STARTUP: showall #+SETUPFILE: "../share/setup.inc" -* Donate - Checkout with card +#+BEGIN_HTML + + + + - Information on your intended donation: +

    +Information on your intended donation: +

    -#+BEGIN_HTML - - - - - - - - - - - - - - - - - -
    Amount: -
    Name:
    Mail:
    Message:
    -#+END_HTML + + + + + + + + + + + + + + + + + +
    Amount: +
    Name:
    Mail:
    Message:
    +

    If something is wrong, please use the back button below to change it. If the data is correct, you may now continue with the payment. +

    - -#+BEGIN_HTML
+ + + #+END_HTML -# Note: We do not want to send a -# data-email="" -# line to Stripe so to enable the user to use a -# a different mail address for use with them. ----------------------------------------------------------------------- Summary of changes: web/donate/checkout-cc.org | 66 ++++++++++++++++++++++++---------------------- 1 file changed, 35 insertions(+), 31 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 10 16:25:21 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Wed, 10 May 2017 16:25:21 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-38-g6b4dd3b 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 6b4dd3b929ac23271bfa96edb9dbb142eca0a30f (commit) from a226eca84670ef4e171c3a54e7caefb3a89254a4 (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 6b4dd3b929ac23271bfa96edb9dbb142eca0a30f Author: Justus Winter Date: Wed May 10 16:19:52 2017 +0200 python: Fix test environment creation. * lang/python/tests/Makefile.am (pubring-stamp): Do not depend on the configuration files, this can trigger superfluous rebuilds. Signed-off-by: Justus Winter diff --git a/lang/python/tests/Makefile.am b/lang/python/tests/Makefile.am index 790d8f8..d0dde1d 100644 --- a/lang/python/tests/Makefile.am +++ b/lang/python/tests/Makefile.am @@ -105,7 +105,6 @@ BUILT_SOURCES = gpg.conf gpg-agent.conf pubring-stamp \ echo x > ./private-keys-v1.d/gpg-sample.stamp ./pubring-stamp: $(test_srcdir)/pubdemo.asc \ - ./gpg.conf ./gpg-agent.conf \ ./private-keys-v1.d/gpg-sample.stamp $(GPG) --batch --no-permission-warning \ --import $(test_srcdir)/pubdemo.asc ----------------------------------------------------------------------- Summary of changes: lang/python/tests/Makefile.am | 1 - 1 file changed, 1 deletion(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Wed May 10 16:39:17 2017 From: cvs at cvs.gnupg.org (by Justus Winter) Date: Wed, 10 May 2017 16:39:17 +0200 Subject: [git] GPGME - branch, master, updated. gpgme-1.9.0-39-ga9b4c0a 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 a9b4c0ad0d1085ff76742e44cf0cf926e89d1f4c (commit) from 6b4dd3b929ac23271bfa96edb9dbb142eca0a30f (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 a9b4c0ad0d1085ff76742e44cf0cf926e89d1f4c Author: Justus Winter Date: Wed May 10 16:31:58 2017 +0200 tests: Remove remnants of 'check-local'. * tests/gpgsm/Makefile.am (check-local): Drop rule and the dependency on it. -- Previously, the test environment was created during 'make check'. Nowadays we create it using 'BUILT_SOURCES' during 'make all'. Drop remnant of the previous method. Signed-off-by: Justus Winter diff --git a/tests/gpgsm/Makefile.am b/tests/gpgsm/Makefile.am index adae6a2..c73faea 100644 --- a/tests/gpgsm/Makefile.am +++ b/tests/gpgsm/Makefile.am @@ -51,13 +51,6 @@ clean-local: -$(top_srcdir)/tests/start-stop-agent --stop -rm -fR private-keys-v1.d -check-local: ./pubring.kbx ./gpgsm.conf \ - ./private-keys-v1.d/$(key_id).key ./trustlist.txt - -# To guarantee that check-local is run before any tests we add this -# dependency: -initial.test : check-local - export GNUPGHOME := $(abs_builddir) export GPG_AGENT_INFO := ----------------------------------------------------------------------- Summary of changes: tests/gpgsm/Makefile.am | 7 ------- 1 file changed, 7 deletions(-) hooks/post-receive -- GnuPG Made Easy http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 11 12:08:47 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 11 May 2017 12:08:47 +0200 Subject: [git] gnupg-doc - branch, preview, updated. d13c086489868ce8de6e17afc79619549949fc63 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, preview has been updated via d13c086489868ce8de6e17afc79619549949fc63 (commit) from 5a9e5bfdff6d09805851d133635a5d856fbe3ae1 (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 d13c086489868ce8de6e17afc79619549949fc63 Author: Werner Koch Date: Thu May 11 12:05:32 2017 +0200 cgi: Final fixes to actually make recurring work. Some fine tuning etc wiull still be needed, but as it is right now Donations do work. Test with a card number of 4242424242424242 using any valid exiration date anc CVC. diff --git a/cgi/procdonate.cgi b/cgi/procdonate.cgi index 9a54627..2a768b2 100755 --- a/cgi/procdonate.cgi +++ b/cgi/procdonate.cgi @@ -26,7 +26,7 @@ my $stripepubkey = $config{stripepubkey}; my $socket_name = $config{payprocd_socket}; my $error_marker = '* error'; -# The form variabales are accessed via Q. +# The form variables are accessed via Q. my $q = new CGI; # This is a multi-purpose CGI. The mode decides what to do. @@ -504,7 +504,7 @@ sub complete_stripe_checkout () "GnuPG donation by " . $data{"Name"} . " <" . $data{"Mail"} . ">"; $stripe{"Stmt-Desc"} = "GnuPG donation"; $stripe{"Email"} = $q->param("stripeEmail"); - $stripe{"Recur"} = $q->param("Recur"); + $stripe{"Recur"} = $data{"Recur"}; $stripe{"Meta[name]"} = $data{"Name"} unless $data{"Name"} eq 'Anonymous'; if ($data{"Mail"} ne $q->param("stripeEmail")) { $stripe{"Meta[mail]"} = $data{"Mail"}; diff --git a/web/donate/donate.org b/web/donate/donate.org index 754e9e5..99657a2 100644 --- a/web/donate/donate.org +++ b/web/donate/donate.org @@ -119,7 +119,7 @@
- ----------------------------------------------------------------------- Summary of changes: cgi/procdonate.cgi | 4 ++-- web/donate/donate.org | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 11 16:10:08 2017 From: cvs at cvs.gnupg.org (by Marcus Brinkmann) Date: Thu, 11 May 2017 16:10:08 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 3256e98b3f821e8d49051216942d631e70dfe0fc 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, preview has been updated via 3256e98b3f821e8d49051216942d631e70dfe0fc (commit) via 7d83421c2406bf59d91a7a42074f9eaca27f82be (commit) from 62b7602cbd122592a649f7e6e0628331c68863e3 (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 3256e98b3f821e8d49051216942d631e70dfe0fc Author: Marcus Brinkmann Date: Thu May 11 16:09:01 2017 +0200 web: Add more base extensions to publish (for JS and fonts). diff --git a/web/share/gpgweb.el b/web/share/gpgweb.el index 110cea8..1ecd7b5 100644 --- a/web/share/gpgweb.el +++ b/web/share/gpgweb.el @@ -33,7 +33,7 @@ (aput 'org-publish-project-alist "gpgweb-other" `(:base-directory ,gpgweb-root-dir - :base-extension "jpg\\|png\\|css\\|txt\\|rss\\|lst\\|sig" + :base-extension "jpg\\|png\\|css\\|txt\\|rss\\|lst\\|sig\\|js\\|map\\|eot\\|ttf\\|woff\\|woff2" :recursive t :publishing-directory ,gpgweb-stage-dir :publishing-function org-publish-attachment commit 7d83421c2406bf59d91a7a42074f9eaca27f82be Author: Marcus Brinkmann Date: Thu May 11 16:08:35 2017 +0200 web: Adjust some resource paths. diff --git a/web/donate/index.org b/web/donate/index.org index 5440292..fd8a78d 100644 --- a/web/donate/index.org +++ b/web/donate/index.org @@ -148,13 +148,13 @@ For over 20 years, GnuPG has helped protect online communication. 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." Sheera - Frenkel, Foreign Correspondent for BuzzFeed News, relates: "As a news organization, we're trained on using @@ -170,7 +170,7 @@ which power two-thirds of all web sites. And, GnuPG is widely used by organizations - and companies. For instance, Arthur Jordan, Vice-President of Information Technology at 2U told us: "when we reached out to universities about how they wanted to do diff --git a/web/share/campaign/campaign.css b/web/share/campaign/campaign.css index 30f2edd..ffde211 100644 --- a/web/share/campaign/campaign.css +++ b/web/share/campaign/campaign.css @@ -73,7 +73,7 @@ h4 small { .flying-locks { background-color: #f8f8f8; background-position: -100px -100px; - background-image: url("gnupg-white-plain.png"); + background-image: url("/share/gnupg-lock-white-250x250.png"); } /* Carousel base class */ .carousel { ----------------------------------------------------------------------- Summary of changes: web/donate/index.org | 6 +++--- web/share/campaign/campaign.css | 2 +- web/share/gpgweb.el | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 11 16:11:16 2017 From: cvs at cvs.gnupg.org (by Marcus Brinkmann) Date: Thu, 11 May 2017 16:11:16 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 147cd94c9beff7bb5cc2b05a99ba061c1f9cf9e1 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, preview has been updated via 147cd94c9beff7bb5cc2b05a99ba061c1f9cf9e1 (commit) from 3256e98b3f821e8d49051216942d631e70dfe0fc (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 147cd94c9beff7bb5cc2b05a99ba061c1f9cf9e1 Author: Marcus Brinkmann Date: Thu May 11 16:11:10 2017 +0200 web: Also publish svg files. diff --git a/web/share/gpgweb.el b/web/share/gpgweb.el index 1ecd7b5..32b45b3 100644 --- a/web/share/gpgweb.el +++ b/web/share/gpgweb.el @@ -33,7 +33,7 @@ (aput 'org-publish-project-alist "gpgweb-other" `(:base-directory ,gpgweb-root-dir - :base-extension "jpg\\|png\\|css\\|txt\\|rss\\|lst\\|sig\\|js\\|map\\|eot\\|ttf\\|woff\\|woff2" + :base-extension "jpg\\|png\\|css\\|txt\\|rss\\|lst\\|sig\\|js\\|map\\|eot\\|ttf\\|woff\\|woff2\\|svg" :recursive t :publishing-directory ,gpgweb-stage-dir :publishing-function org-publish-attachment ----------------------------------------------------------------------- Summary of changes: web/share/gpgweb.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 11 16:23:57 2017 From: cvs at cvs.gnupg.org (by Kai Michaelis) Date: Thu, 11 May 2017 16:23:57 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 83763f0fb34cf390ccb8e4b60b10e1a3f4549963 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, preview has been updated via 83763f0fb34cf390ccb8e4b60b10e1a3f4549963 (commit) from 147cd94c9beff7bb5cc2b05a99ba061c1f9cf9e1 (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 83763f0fb34cf390ccb8e4b60b10e1a3f4549963 Author: Kai Michaelis Date: Thu May 11 16:25:43 2017 +0200 include css/js in donate.org diff --git a/web/donate/donate.org b/web/donate/donate.org index 99657a2..000a134 100644 --- a/web/donate/donate.org +++ b/web/donate/donate.org @@ -8,7 +8,16 @@ #+BEGIN_HTML - + + + + + + + + + + ----------------------------------------------------------------------- Summary of changes: web/donate/donate.org | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 11 16:26:59 2017 From: cvs at cvs.gnupg.org (by Marcus Brinkmann) Date: Thu, 11 May 2017 16:26:59 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 8528ce94143a0d2ab020aa0382258611fbf25217 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, preview has been updated via 8528ce94143a0d2ab020aa0382258611fbf25217 (commit) from 83763f0fb34cf390ccb8e4b60b10e1a3f4549963 (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 8528ce94143a0d2ab020aa0382258611fbf25217 Author: Marcus Brinkmann Date: Thu May 11 16:26:15 2017 +0200 web: Correct white background in jpg version of headshots. diff --git a/web/share/campaign/img/headshots/alex-abdo.jpg b/web/share/campaign/img/headshots/alex-abdo.jpg index 264475d..95a6985 100644 Binary files a/web/share/campaign/img/headshots/alex-abdo.jpg and b/web/share/campaign/img/headshots/alex-abdo.jpg differ diff --git a/web/share/campaign/img/headshots/arthur-jordan.jpg b/web/share/campaign/img/headshots/arthur-jordan.jpg index a41ae59..300ede0 100644 Binary files a/web/share/campaign/img/headshots/arthur-jordan.jpg and b/web/share/campaign/img/headshots/arthur-jordan.jpg differ diff --git a/web/share/campaign/img/headshots/cindy-cohn.jpg b/web/share/campaign/img/headshots/cindy-cohn.jpg index 7c2c688..0f7f4ae 100644 Binary files a/web/share/campaign/img/headshots/cindy-cohn.jpg and b/web/share/campaign/img/headshots/cindy-cohn.jpg differ diff --git a/web/share/campaign/img/headshots/dkg.jpg b/web/share/campaign/img/headshots/dkg.jpg index dbefc05..28f6ee0 100644 Binary files a/web/share/campaign/img/headshots/dkg.jpg and b/web/share/campaign/img/headshots/dkg.jpg differ diff --git a/web/share/campaign/img/headshots/geoffrey-king.jpg b/web/share/campaign/img/headshots/geoffrey-king.jpg index faed3d7..57c1b82 100644 Binary files a/web/share/campaign/img/headshots/geoffrey-king.jpg and b/web/share/campaign/img/headshots/geoffrey-king.jpg differ diff --git a/web/share/campaign/img/headshots/jason-reich.jpg b/web/share/campaign/img/headshots/jason-reich.jpg index 78bd209..93e0f1e 100644 Binary files a/web/share/campaign/img/headshots/jason-reich.jpg and b/web/share/campaign/img/headshots/jason-reich.jpg differ diff --git a/web/share/campaign/img/headshots/john-pershing.jpg b/web/share/campaign/img/headshots/john-pershing.jpg index 8404177..0df8857 100644 Binary files a/web/share/campaign/img/headshots/john-pershing.jpg and b/web/share/campaign/img/headshots/john-pershing.jpg differ diff --git a/web/share/campaign/img/headshots/leez.jpg b/web/share/campaign/img/headshots/leez.jpg index a7af1d1..ec07af7 100644 Binary files a/web/share/campaign/img/headshots/leez.jpg and b/web/share/campaign/img/headshots/leez.jpg differ diff --git a/web/share/campaign/img/headshots/noah-vesely.jpg b/web/share/campaign/img/headshots/noah-vesely.jpg index 766b859..9cba70d 100644 Binary files a/web/share/campaign/img/headshots/noah-vesely.jpg and b/web/share/campaign/img/headshots/noah-vesely.jpg differ diff --git a/web/share/campaign/img/headshots/sheera-frenkel.jpg b/web/share/campaign/img/headshots/sheera-frenkel.jpg index 162bceb..10d1061 100644 Binary files a/web/share/campaign/img/headshots/sheera-frenkel.jpg and b/web/share/campaign/img/headshots/sheera-frenkel.jpg differ diff --git a/web/share/campaign/img/headshots/tom-lowenthal.jpg b/web/share/campaign/img/headshots/tom-lowenthal.jpg index 4fe6043..3192638 100644 Binary files a/web/share/campaign/img/headshots/tom-lowenthal.jpg and b/web/share/campaign/img/headshots/tom-lowenthal.jpg differ ----------------------------------------------------------------------- Summary of changes: web/share/campaign/img/headshots/alex-abdo.jpg | Bin 38288 -> 39814 bytes web/share/campaign/img/headshots/arthur-jordan.jpg | Bin 32615 -> 33879 bytes web/share/campaign/img/headshots/cindy-cohn.jpg | Bin 28102 -> 28412 bytes web/share/campaign/img/headshots/dkg.jpg | Bin 43553 -> 45568 bytes web/share/campaign/img/headshots/geoffrey-king.jpg | Bin 58641 -> 58989 bytes web/share/campaign/img/headshots/jason-reich.jpg | Bin 25612 -> 27403 bytes web/share/campaign/img/headshots/john-pershing.jpg | Bin 27243 -> 29697 bytes web/share/campaign/img/headshots/leez.jpg | Bin 53104 -> 52487 bytes web/share/campaign/img/headshots/noah-vesely.jpg | Bin 36945 -> 39131 bytes web/share/campaign/img/headshots/sheera-frenkel.jpg | Bin 60537 -> 63176 bytes web/share/campaign/img/headshots/tom-lowenthal.jpg | Bin 37041 -> 39587 bytes 11 files changed, 0 insertions(+), 0 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 11 16:34:47 2017 From: cvs at cvs.gnupg.org (by Werner Koch) Date: Thu, 11 May 2017 16:34:47 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 31d1c4b99569185dc4c00d7ce1d11c305591a634 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, preview has been updated via 31d1c4b99569185dc4c00d7ce1d11c305591a634 (commit) from 8528ce94143a0d2ab020aa0382258611fbf25217 (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 31d1c4b99569185dc4c00d7ce1d11c305591a634 Author: Werner Koch Date: Thu May 11 16:30:16 2017 +0200 cgi: Improve Stripe recurring donations diff --git a/cgi/procdonate.cgi b/cgi/procdonate.cgi index 2a768b2..f2860c6 100755 --- a/cgi/procdonate.cgi +++ b/cgi/procdonate.cgi @@ -87,6 +87,7 @@ sub write_template ($) { my $publishname; my $check_paytype = 'none'; my $stripe_data_email = ''; + my $stripe_data_label_value = 'Donate now'; # Avoid broken HTML attributes. $amount =~ s/\x22/\x27/g; @@ -138,12 +139,15 @@ sub write_template ($) { } elsif ( $recur =~ /12/ ) { $recur_month = ' selected="selected"'; $recur_text = 'monthly'; + $stripe_data_label_value = 'Donate monthly'; } elsif ( $recur =~ /4/ ) { $recur_quarter = ' selected="selected"'; $recur_text = 'quarterly'; + $stripe_data_label_value = 'Donate quarterly'; } elsif ( $recur =~ /1/ ) { $recur_year = ' selected="selected"'; $recur_text = 'yearly'; + $stripe_data_label_value = 'Donate yearly'; } @@ -208,6 +212,7 @@ sub write_template ($) { || s/(/$recur_year>/ || s//$recur_text/ || s//$stripe_data_email/ + || s//$stripe_data_label_value/ || s//$publishname/ || s//$separef/ || s//$errorstr/ @@ -491,6 +496,8 @@ sub complete_stripe_checkout () { my %data; my %stripe; + my $recur; + my $recur_text = ''; # fixme: Change the error message to note that the card has not # been charged. Somehow delete the token @@ -522,17 +529,30 @@ sub complete_stripe_checkout () } # Print thanks + $recur = $stripe{"Recur"}; + if ( $recur =~ /12/ ) { + $recur_text = 'Monthly'; + } elsif ( $recur =~ /4/ ) { + $recur_text = 'Quarterly'; + } elsif ( $recur =~ /1/ ) { + $recur_text = 'Yearly'; + } else { + $recur_text = 'Just once'; + } $message = < Amount: - + + Name: @@ -67,8 +68,8 @@ Information on your intended donation: data-description="Donation to the GnuPG project" data-amount="" data-currency="" - data-panel-label="Donate {{amount}} to GnuPG" - data-label="Donate now" + data-panel-label="Donate {{amount}} " + data-label="" > ----------------------------------------------------------------------- Summary of changes: cgi/procdonate.cgi | 36 ++++++++++++++++++++++++++++-------- web/donate/checkout-cc.org | 7 ++++--- 2 files changed, 32 insertions(+), 11 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 11 16:35:50 2017 From: cvs at cvs.gnupg.org (by Kai Michaelis) Date: Thu, 11 May 2017 16:35:50 +0200 Subject: [git] gnupg-doc - branch, preview, updated. 51aa266ed5e0247d1d82cd806162f9d477042218 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, preview has been updated via 51aa266ed5e0247d1d82cd806162f9d477042218 (commit) from 31d1c4b99569185dc4c00d7ce1d11c305591a634 (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 51aa266ed5e0247d1d82cd806162f9d477042218 Author: Kai Michaelis Date: Thu May 11 16:37:17 2017 +0200 fix donate.org labels, btc addr & nav img diff --git a/web/donate/donate.org b/web/donate/donate.org index 000a134..bc4b0a6 100644 --- a/web/donate/donate.org +++ b/web/donate/donate.org @@ -18,6 +18,7 @@ + @@ -36,7 +37,7 @@
@@ -47,7 +48,7 @@

Support GnuPG

To process your donation we need to collect some information. This information is only used for the purpose of the donation and no data will ever be send to any entity not directly involved in the donation process. Not giving a name makes the donation ?anonymous? in that the name won?t be listed on the public thank you page.

-

You can also send us Bitcoin. Our address is 175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W.

+

You can also send us Bitcoin. Our address is xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.

@@ -126,7 +127,7 @@
- +
-
+ +
-
Choosing ?other? allows to donate ----------------------------------------------------------------------- Summary of changes: web/donate/donate.org | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) hooks/post-receive -- The GnuPG website and other docs http://git.gnupg.org From cvs at cvs.gnupg.org Thu May 11 17:25:13 2017 From: cvs at cvs.gnupg.org (by Kai Michaelis) Date: Thu, 11 May 2017 17:25:13 +0200 Subject: [git] gnupg-doc - branch, preview, updated. bd148dff3e64408bddb038f96aa1a41d970ad4e5 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, preview has been updated via bd148dff3e64408bddb038f96aa1a41d970ad4e5 (commit) from f830850cba0b55b5c2f006c72f0d6d8a61e7f5ba (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 bd148dff3e64408bddb038f96aa1a41d970ad4e5 Author: Kai Michaelis Date: Thu May 11 17:26:57 2017 +0200 fix err_amount diff --git a/web/donate/donate.org b/web/donate/donate.org index cc3a03a..dcc11af 100644 --- a/web/donate/donate.org +++ b/web/donate/donate.org @@ -102,6 +102,7 @@
+
500? @@ -102,7 +102,6 @@
-