Date: Tuesday, September 22, 2015 @ 06:13:07 Author: bisson Revision: 247053
archrelease: copy trunk to testing-i686, testing-x86_64 Added: gnupg/repos/testing-i686/ gnupg/repos/testing-i686/PKGBUILD (from rev 247052, gnupg/trunk/PKGBUILD) gnupg/repos/testing-i686/install (from rev 247052, gnupg/trunk/install) gnupg/repos/testing-i686/ssh-ed25519.patch (from rev 247052, gnupg/trunk/ssh-ed25519.patch) gnupg/repos/testing-x86_64/ gnupg/repos/testing-x86_64/PKGBUILD (from rev 247052, gnupg/trunk/PKGBUILD) gnupg/repos/testing-x86_64/install (from rev 247052, gnupg/trunk/install) gnupg/repos/testing-x86_64/ssh-ed25519.patch (from rev 247052, gnupg/trunk/ssh-ed25519.patch) ----------------------------------+ testing-i686/PKGBUILD | 66 +++++++++++++++++++++++++++++++++++++ testing-i686/install | 25 ++++++++++++++ testing-i686/ssh-ed25519.patch | 60 +++++++++++++++++++++++++++++++++ testing-x86_64/PKGBUILD | 66 +++++++++++++++++++++++++++++++++++++ testing-x86_64/install | 25 ++++++++++++++ testing-x86_64/ssh-ed25519.patch | 60 +++++++++++++++++++++++++++++++++ 6 files changed, 302 insertions(+) Copied: gnupg/repos/testing-i686/PKGBUILD (from rev 247052, gnupg/trunk/PKGBUILD) =================================================================== --- testing-i686/PKGBUILD (rev 0) +++ testing-i686/PKGBUILD 2015-09-22 04:13:07 UTC (rev 247053) @@ -0,0 +1,66 @@ +# $Id$ +# Maintainer: Gaetan Bisson <bis...@archlinux.org> +# Contributor: Tobias Powalowski <tp...@archlinux.org> +# Contributor: Andreas Radke <andy...@archlinux.org> +# Contributor: Judd Vinet <jvi...@zeroflux.org> + +pkgname=gnupg +pkgver=2.1.8 +pkgrel=3 +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') +sha1sums=('61f5bc656dd7fddd4ab67b720d47ef0651bfb727' 'SKIP' + 'fd77cf366f6bd70c1d33e910044612aebe6bbe63') + +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 +} + +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 247052, gnupg/trunk/install) =================================================================== --- testing-i686/install (rev 0) +++ testing-i686/install 2015-09-22 04:13:07 UTC (rev 247053) @@ -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-ed25519.patch (from rev 247052, gnupg/trunk/ssh-ed25519.patch) =================================================================== --- testing-i686/ssh-ed25519.patch (rev 0) +++ testing-i686/ssh-ed25519.patch 2015-09-22 04:13:07 UTC (rev 247053) @@ -0,0 +1,60 @@ +From 7d5999f0964c9412c0e18eb1adefdb729be68cd4 Mon Sep 17 00:00:00 2001 +From: NIIBE Yutaka <gni...@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 247052, gnupg/trunk/PKGBUILD) =================================================================== --- testing-x86_64/PKGBUILD (rev 0) +++ testing-x86_64/PKGBUILD 2015-09-22 04:13:07 UTC (rev 247053) @@ -0,0 +1,66 @@ +# $Id$ +# Maintainer: Gaetan Bisson <bis...@archlinux.org> +# Contributor: Tobias Powalowski <tp...@archlinux.org> +# Contributor: Andreas Radke <andy...@archlinux.org> +# Contributor: Judd Vinet <jvi...@zeroflux.org> + +pkgname=gnupg +pkgver=2.1.8 +pkgrel=3 +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') +sha1sums=('61f5bc656dd7fddd4ab67b720d47ef0651bfb727' 'SKIP' + 'fd77cf366f6bd70c1d33e910044612aebe6bbe63') + +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 +} + +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 247052, gnupg/trunk/install) =================================================================== --- testing-x86_64/install (rev 0) +++ testing-x86_64/install 2015-09-22 04:13:07 UTC (rev 247053) @@ -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-ed25519.patch (from rev 247052, gnupg/trunk/ssh-ed25519.patch) =================================================================== --- testing-x86_64/ssh-ed25519.patch (rev 0) +++ testing-x86_64/ssh-ed25519.patch 2015-09-22 04:13:07 UTC (rev 247053) @@ -0,0 +1,60 @@ +From 7d5999f0964c9412c0e18eb1adefdb729be68cd4 Mon Sep 17 00:00:00 2001 +From: NIIBE Yutaka <gni...@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 +