[arch-commits] Commit in gnupg/repos (10 files)

Gaetan Bisson bisson at archlinux.org
Wed Sep 30 00:48:12 UTC 2015


    Date: Wednesday, September 30, 2015 @ 02:48:11
  Author: bisson
Revision: 247905

archrelease: copy trunk to testing-i686, testing-x86_64

Added:
  gnupg/repos/testing-i686/
  gnupg/repos/testing-i686/PKGBUILD
    (from rev 247904, gnupg/trunk/PKGBUILD)
  gnupg/repos/testing-i686/install
    (from rev 247904, gnupg/trunk/install)
  gnupg/repos/testing-i686/ssh-agent.patch
    (from rev 247904, gnupg/trunk/ssh-agent.patch)
  gnupg/repos/testing-i686/ssh-ed25519.patch
    (from rev 247904, gnupg/trunk/ssh-ed25519.patch)
  gnupg/repos/testing-x86_64/
  gnupg/repos/testing-x86_64/PKGBUILD
    (from rev 247904, gnupg/trunk/PKGBUILD)
  gnupg/repos/testing-x86_64/install
    (from rev 247904, gnupg/trunk/install)
  gnupg/repos/testing-x86_64/ssh-agent.patch
    (from rev 247904, gnupg/trunk/ssh-agent.patch)
  gnupg/repos/testing-x86_64/ssh-ed25519.patch
    (from rev 247904, gnupg/trunk/ssh-ed25519.patch)

----------------------------------+
 testing-i686/PKGBUILD            |   69 +++++++++++++++++++++++++++++++++++++
 testing-i686/install             |   25 +++++++++++++
 testing-i686/ssh-agent.patch     |   42 ++++++++++++++++++++++
 testing-i686/ssh-ed25519.patch   |   60 ++++++++++++++++++++++++++++++++
 testing-x86_64/PKGBUILD          |   69 +++++++++++++++++++++++++++++++++++++
 testing-x86_64/install           |   25 +++++++++++++
 testing-x86_64/ssh-agent.patch   |   42 ++++++++++++++++++++++
 testing-x86_64/ssh-ed25519.patch |   60 ++++++++++++++++++++++++++++++++
 8 files changed, 392 insertions(+)

Copied: gnupg/repos/testing-i686/PKGBUILD (from rev 247904, gnupg/trunk/PKGBUILD)
===================================================================
--- testing-i686/PKGBUILD	                        (rev 0)
+++ testing-i686/PKGBUILD	2015-09-30 00:48:11 UTC (rev 247905)
@@ -0,0 +1,69 @@
+# $Id$
+# Maintainer: Gaetan Bisson <bisson at archlinux.org>
+# Contributor: Tobias Powalowski <tpowa at archlinux.org>
+# Contributor: Andreas Radke <andyrtr at archlinux.org>
+# Contributor: Judd Vinet <jvinet at zeroflux.org>
+
+pkgname=gnupg
+pkgver=2.1.8
+pkgrel=4
+pkgdesc='Complete and free implementation of the OpenPGP standard'
+url='http://www.gnupg.org/'
+license=('GPL')
+arch=('i686' 'x86_64')
+optdepends=('libldap: gpg2keys_ldap'
+            'libusb-compat: scdaemon')
+makedepends=('libldap' 'libusb-compat')
+depends=('npth' 'libgpg-error' 'libgcrypt' 'libksba' 'libassuan'
+         'pinentry' 'bzip2' 'readline' 'gnutls')
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6'
+              '46CC730865BB5C78EBABADCF04376F3EE0856959'
+              '031EC2536E580D8EA286A9F22071B08A33BD3F06'
+              'D238EA65D64C67ED4C3073F28A861B1C7EFD60D9')
+source=("ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2"{,.sig}
+        'ssh-ed25519.patch'
+        'ssh-agent.patch')
+sha1sums=('61f5bc656dd7fddd4ab67b720d47ef0651bfb727' 'SKIP'
+          'fd77cf366f6bd70c1d33e910044612aebe6bbe63'
+          '605f9a1ca5bbb1791c86452d113cb0617ec437e8')
+
+install=install
+
+conflicts=('dirmngr' 'gnupg2')
+provides=('dirmngr' "gnupg2=${pkgver}")
+replaces=('dirmngr' 'gnupg2')
+
+prepare() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	sed '/noinst_SCRIPTS = gpg-zip/c sbin_SCRIPTS += gpg-zip' -i tools/Makefile.in
+	patch -p1 -i ../ssh-ed25519.patch
+	patch -p1 -i ../ssh-agent.patch
+}
+
+build() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	./configure \
+		--prefix=/usr \
+		--sysconfdir=/etc \
+		--sbindir=/usr/bin \
+		--libexecdir=/usr/lib/gnupg \
+		--enable-maintainer-mode \
+		--enable-symcryptrun \
+		--enable-gpgtar \
+
+	make
+}
+
+check() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	make check
+}
+
+package() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	make DESTDIR="${pkgdir}" install
+	ln -s gpg2 "${pkgdir}"/usr/bin/gpg
+	ln -s gpgv2 "${pkgdir}"/usr/bin/gpgv
+	ln -s gpg2.1.gz "${pkgdir}"/usr/share/man/man1/gpg.1.gz
+	rm "${pkgdir}/usr/share/gnupg/com-certs.pem" # FS#33059
+}

Copied: gnupg/repos/testing-i686/install (from rev 247904, gnupg/trunk/install)
===================================================================
--- testing-i686/install	                        (rev 0)
+++ testing-i686/install	2015-09-30 00:48:11 UTC (rev 247905)
@@ -0,0 +1,25 @@
+info_dir=/usr/share/info
+info_files=(gnupg.info gnupg.info-1 gnupg.info-2)
+
+post_install() {
+	[ -x usr/bin/install-info ] || return 0
+	for f in ${info_files[@]}; do
+		usr/bin/install-info ${info_dir}/$f ${info_dir}/dir 2> /dev/null
+	done
+}
+
+pre_remove() {
+	[ -x usr/bin/install-info ] || return 0
+	for f in ${info_files[@]}; do
+		usr/bin/install-info --delete ${info_dir}/$f ${info_dir}/dir 2> /dev/null
+	done
+}
+
+post_upgrade() {
+	post_install
+
+	# Fix upgrade to 2.1; see FS#42798
+	[ $(vercmp $2 2.1.0-4) = -1 ] &&
+	dirmngr </dev/null &>/dev/null ||
+	return 0
+}

Copied: gnupg/repos/testing-i686/ssh-agent.patch (from rev 247904, gnupg/trunk/ssh-agent.patch)
===================================================================
--- testing-i686/ssh-agent.patch	                        (rev 0)
+++ testing-i686/ssh-agent.patch	2015-09-30 00:48:11 UTC (rev 247905)
@@ -0,0 +1,42 @@
+diff --git a/agent/agent.h b/agent/agent.h
+index b3e8470..9e066c9 100644
+--- a/agent/agent.h
++++ b/agent/agent.h
+@@ -50,7 +50,8 @@
+ /* The maximum length of a passphrase (in bytes).  Note: this is
+    further contrained by the Assuan line length (and any other text on
+    the same line).  However, the Assuan line length is 1k bytes so
+-   this shouldn't be a problem in practice.  */
++   this shouldn't be a problem in practice.
++   (MAX_PASSPHRASE_LEN + 1) should be multiple of alignment size.  */
+ #define MAX_PASSPHRASE_LEN 255
+ 
+ 
+diff --git a/agent/command-ssh.c b/agent/command-ssh.c
+index 8be1255..3f63f76 100644
+--- a/agent/command-ssh.c
++++ b/agent/command-ssh.c
+@@ -3107,7 +3107,8 @@ ssh_identity_register (ctrl_t ctrl, ssh_key_type_spec_t *spec,
+       err = gpg_error_from_syserror ();
+       goto out;
+     }
+-  pi2 = pi + (sizeof *pi + MAX_PASSPHRASE_LEN + 1);
++  pi2 = (struct pin_entry_info_s *)((char *)pi + (sizeof (*pi)
++                                                  + MAX_PASSPHRASE_LEN + 1));
+   pi->max_length = MAX_PASSPHRASE_LEN + 1;
+   pi->max_tries = 1;
+   pi->with_repeat = 1;
+diff --git a/agent/genkey.c b/agent/genkey.c
+index 13858ca..54b7149 100644
+--- a/agent/genkey.c
++++ b/agent/genkey.c
+@@ -375,7 +375,8 @@ agent_ask_new_passphrase (ctrl_t ctrl, const char *prompt,
+     }
+ 
+   pi = gcry_calloc_secure (2, sizeof (*pi) + MAX_PASSPHRASE_LEN + 1);
+-  pi2 = pi + (sizeof *pi + MAX_PASSPHRASE_LEN + 1);
++  pi2 = (struct pin_entry_info_s *)((char *)pi + (sizeof (*pi)
++                                                  + MAX_PASSPHRASE_LEN + 1));
+   pi->max_length = MAX_PASSPHRASE_LEN + 1;
+   pi->max_tries = 3;
+   pi->with_qualitybar = 1;

Copied: gnupg/repos/testing-i686/ssh-ed25519.patch (from rev 247904, gnupg/trunk/ssh-ed25519.patch)
===================================================================
--- testing-i686/ssh-ed25519.patch	                        (rev 0)
+++ testing-i686/ssh-ed25519.patch	2015-09-30 00:48:11 UTC (rev 247905)
@@ -0,0 +1,60 @@
+From 7d5999f0964c9412c0e18eb1adefdb729be68cd4 Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe at fsij.org>
+Date: Wed, 16 Sep 2015 10:37:38 +0900
+Subject: [PATCH] agent: Fix registering SSH Key of Ed25519.
+
+* agent/command-ssh.c (stream_read_string): Add the prefix of 0x40.
+
+--
+
+GnuPG-bug-id: 2096
+---
+ agent/command-ssh.c | 14 ++++++++------
+ 1 file changed, 8 insertions(+), 6 deletions(-)
+
+diff --git a/agent/command-ssh.c b/agent/command-ssh.c
+index 8868620..8be1255 100644
+--- a/agent/command-ssh.c
++++ b/agent/command-ssh.c
+@@ -580,8 +580,9 @@ stream_read_string (estream_t stream, unsigned int secure,
+ 
+ 
+ /* Read a binary string from STREAM and store it as an opaque MPI at
+-   R_MPI.  Depending on SECURE use secure memory.  If the string is
+-   too large for key material return an error.  */
++   R_MPI, adding 0x40 (this is the prefix for EdDSA key in OpenPGP).
++   Depending on SECURE use secure memory.  If the string is too large
++   for key material return an error.  */
+ static gpg_error_t
+ stream_read_blob (estream_t stream, unsigned int secure, gcry_mpi_t *r_mpi)
+ {
+@@ -607,9 +608,9 @@ stream_read_blob (estream_t stream, unsigned int secure, gcry_mpi_t *r_mpi)
+ 
+   /* Allocate space.  */
+   if (secure)
+-    buffer = xtrymalloc_secure (length? length:1);
++    buffer = xtrymalloc_secure (length+1);
+   else
+-    buffer = xtrymalloc (length?length:1);
++    buffer = xtrymalloc (length+1);
+   if (!buffer)
+     {
+       err = gpg_error_from_syserror ();
+@@ -617,11 +618,12 @@ stream_read_blob (estream_t stream, unsigned int secure, gcry_mpi_t *r_mpi)
+     }
+ 
+   /* Read data.  */
+-  err = stream_read_data (stream, buffer, length);
++  err = stream_read_data (stream, buffer + 1, length);
+   if (err)
+     goto leave;
+ 
+-  *r_mpi = gcry_mpi_set_opaque (NULL, buffer, 8*length);
++  buffer[0] = 0x40;
++  *r_mpi = gcry_mpi_set_opaque (NULL, buffer, 8*(length+1));
+   buffer = NULL;
+ 
+  leave:
+-- 
+2.1.4
+

Copied: gnupg/repos/testing-x86_64/PKGBUILD (from rev 247904, gnupg/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD	                        (rev 0)
+++ testing-x86_64/PKGBUILD	2015-09-30 00:48:11 UTC (rev 247905)
@@ -0,0 +1,69 @@
+# $Id$
+# Maintainer: Gaetan Bisson <bisson at archlinux.org>
+# Contributor: Tobias Powalowski <tpowa at archlinux.org>
+# Contributor: Andreas Radke <andyrtr at archlinux.org>
+# Contributor: Judd Vinet <jvinet at zeroflux.org>
+
+pkgname=gnupg
+pkgver=2.1.8
+pkgrel=4
+pkgdesc='Complete and free implementation of the OpenPGP standard'
+url='http://www.gnupg.org/'
+license=('GPL')
+arch=('i686' 'x86_64')
+optdepends=('libldap: gpg2keys_ldap'
+            'libusb-compat: scdaemon')
+makedepends=('libldap' 'libusb-compat')
+depends=('npth' 'libgpg-error' 'libgcrypt' 'libksba' 'libassuan'
+         'pinentry' 'bzip2' 'readline' 'gnutls')
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6'
+              '46CC730865BB5C78EBABADCF04376F3EE0856959'
+              '031EC2536E580D8EA286A9F22071B08A33BD3F06'
+              'D238EA65D64C67ED4C3073F28A861B1C7EFD60D9')
+source=("ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2"{,.sig}
+        'ssh-ed25519.patch'
+        'ssh-agent.patch')
+sha1sums=('61f5bc656dd7fddd4ab67b720d47ef0651bfb727' 'SKIP'
+          'fd77cf366f6bd70c1d33e910044612aebe6bbe63'
+          '605f9a1ca5bbb1791c86452d113cb0617ec437e8')
+
+install=install
+
+conflicts=('dirmngr' 'gnupg2')
+provides=('dirmngr' "gnupg2=${pkgver}")
+replaces=('dirmngr' 'gnupg2')
+
+prepare() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	sed '/noinst_SCRIPTS = gpg-zip/c sbin_SCRIPTS += gpg-zip' -i tools/Makefile.in
+	patch -p1 -i ../ssh-ed25519.patch
+	patch -p1 -i ../ssh-agent.patch
+}
+
+build() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	./configure \
+		--prefix=/usr \
+		--sysconfdir=/etc \
+		--sbindir=/usr/bin \
+		--libexecdir=/usr/lib/gnupg \
+		--enable-maintainer-mode \
+		--enable-symcryptrun \
+		--enable-gpgtar \
+
+	make
+}
+
+check() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	make check
+}
+
+package() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	make DESTDIR="${pkgdir}" install
+	ln -s gpg2 "${pkgdir}"/usr/bin/gpg
+	ln -s gpgv2 "${pkgdir}"/usr/bin/gpgv
+	ln -s gpg2.1.gz "${pkgdir}"/usr/share/man/man1/gpg.1.gz
+	rm "${pkgdir}/usr/share/gnupg/com-certs.pem" # FS#33059
+}

Copied: gnupg/repos/testing-x86_64/install (from rev 247904, gnupg/trunk/install)
===================================================================
--- testing-x86_64/install	                        (rev 0)
+++ testing-x86_64/install	2015-09-30 00:48:11 UTC (rev 247905)
@@ -0,0 +1,25 @@
+info_dir=/usr/share/info
+info_files=(gnupg.info gnupg.info-1 gnupg.info-2)
+
+post_install() {
+	[ -x usr/bin/install-info ] || return 0
+	for f in ${info_files[@]}; do
+		usr/bin/install-info ${info_dir}/$f ${info_dir}/dir 2> /dev/null
+	done
+}
+
+pre_remove() {
+	[ -x usr/bin/install-info ] || return 0
+	for f in ${info_files[@]}; do
+		usr/bin/install-info --delete ${info_dir}/$f ${info_dir}/dir 2> /dev/null
+	done
+}
+
+post_upgrade() {
+	post_install
+
+	# Fix upgrade to 2.1; see FS#42798
+	[ $(vercmp $2 2.1.0-4) = -1 ] &&
+	dirmngr </dev/null &>/dev/null ||
+	return 0
+}

Copied: gnupg/repos/testing-x86_64/ssh-agent.patch (from rev 247904, gnupg/trunk/ssh-agent.patch)
===================================================================
--- testing-x86_64/ssh-agent.patch	                        (rev 0)
+++ testing-x86_64/ssh-agent.patch	2015-09-30 00:48:11 UTC (rev 247905)
@@ -0,0 +1,42 @@
+diff --git a/agent/agent.h b/agent/agent.h
+index b3e8470..9e066c9 100644
+--- a/agent/agent.h
++++ b/agent/agent.h
+@@ -50,7 +50,8 @@
+ /* The maximum length of a passphrase (in bytes).  Note: this is
+    further contrained by the Assuan line length (and any other text on
+    the same line).  However, the Assuan line length is 1k bytes so
+-   this shouldn't be a problem in practice.  */
++   this shouldn't be a problem in practice.
++   (MAX_PASSPHRASE_LEN + 1) should be multiple of alignment size.  */
+ #define MAX_PASSPHRASE_LEN 255
+ 
+ 
+diff --git a/agent/command-ssh.c b/agent/command-ssh.c
+index 8be1255..3f63f76 100644
+--- a/agent/command-ssh.c
++++ b/agent/command-ssh.c
+@@ -3107,7 +3107,8 @@ ssh_identity_register (ctrl_t ctrl, ssh_key_type_spec_t *spec,
+       err = gpg_error_from_syserror ();
+       goto out;
+     }
+-  pi2 = pi + (sizeof *pi + MAX_PASSPHRASE_LEN + 1);
++  pi2 = (struct pin_entry_info_s *)((char *)pi + (sizeof (*pi)
++                                                  + MAX_PASSPHRASE_LEN + 1));
+   pi->max_length = MAX_PASSPHRASE_LEN + 1;
+   pi->max_tries = 1;
+   pi->with_repeat = 1;
+diff --git a/agent/genkey.c b/agent/genkey.c
+index 13858ca..54b7149 100644
+--- a/agent/genkey.c
++++ b/agent/genkey.c
+@@ -375,7 +375,8 @@ agent_ask_new_passphrase (ctrl_t ctrl, const char *prompt,
+     }
+ 
+   pi = gcry_calloc_secure (2, sizeof (*pi) + MAX_PASSPHRASE_LEN + 1);
+-  pi2 = pi + (sizeof *pi + MAX_PASSPHRASE_LEN + 1);
++  pi2 = (struct pin_entry_info_s *)((char *)pi + (sizeof (*pi)
++                                                  + MAX_PASSPHRASE_LEN + 1));
+   pi->max_length = MAX_PASSPHRASE_LEN + 1;
+   pi->max_tries = 3;
+   pi->with_qualitybar = 1;

Copied: gnupg/repos/testing-x86_64/ssh-ed25519.patch (from rev 247904, gnupg/trunk/ssh-ed25519.patch)
===================================================================
--- testing-x86_64/ssh-ed25519.patch	                        (rev 0)
+++ testing-x86_64/ssh-ed25519.patch	2015-09-30 00:48:11 UTC (rev 247905)
@@ -0,0 +1,60 @@
+From 7d5999f0964c9412c0e18eb1adefdb729be68cd4 Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe at fsij.org>
+Date: Wed, 16 Sep 2015 10:37:38 +0900
+Subject: [PATCH] agent: Fix registering SSH Key of Ed25519.
+
+* agent/command-ssh.c (stream_read_string): Add the prefix of 0x40.
+
+--
+
+GnuPG-bug-id: 2096
+---
+ agent/command-ssh.c | 14 ++++++++------
+ 1 file changed, 8 insertions(+), 6 deletions(-)
+
+diff --git a/agent/command-ssh.c b/agent/command-ssh.c
+index 8868620..8be1255 100644
+--- a/agent/command-ssh.c
++++ b/agent/command-ssh.c
+@@ -580,8 +580,9 @@ stream_read_string (estream_t stream, unsigned int secure,
+ 
+ 
+ /* Read a binary string from STREAM and store it as an opaque MPI at
+-   R_MPI.  Depending on SECURE use secure memory.  If the string is
+-   too large for key material return an error.  */
++   R_MPI, adding 0x40 (this is the prefix for EdDSA key in OpenPGP).
++   Depending on SECURE use secure memory.  If the string is too large
++   for key material return an error.  */
+ static gpg_error_t
+ stream_read_blob (estream_t stream, unsigned int secure, gcry_mpi_t *r_mpi)
+ {
+@@ -607,9 +608,9 @@ stream_read_blob (estream_t stream, unsigned int secure, gcry_mpi_t *r_mpi)
+ 
+   /* Allocate space.  */
+   if (secure)
+-    buffer = xtrymalloc_secure (length? length:1);
++    buffer = xtrymalloc_secure (length+1);
+   else
+-    buffer = xtrymalloc (length?length:1);
++    buffer = xtrymalloc (length+1);
+   if (!buffer)
+     {
+       err = gpg_error_from_syserror ();
+@@ -617,11 +618,12 @@ stream_read_blob (estream_t stream, unsigned int secure, gcry_mpi_t *r_mpi)
+     }
+ 
+   /* Read data.  */
+-  err = stream_read_data (stream, buffer, length);
++  err = stream_read_data (stream, buffer + 1, length);
+   if (err)
+     goto leave;
+ 
+-  *r_mpi = gcry_mpi_set_opaque (NULL, buffer, 8*length);
++  buffer[0] = 0x40;
++  *r_mpi = gcry_mpi_set_opaque (NULL, buffer, 8*(length+1));
+   buffer = NULL;
+ 
+  leave:
+-- 
+2.1.4
+



More information about the arch-commits mailing list