[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