PSARC/2014/012 GnuPG version 2.0.22 s11-update
authorRich Burridge <rich.burridge@oracle.com>
Tue, 25 Feb 2014 05:35:54 -0800
branchs11-update
changeset 2967 4f3c932b6bc8
parent 2966 93b92606f5e1
child 2968 3f4acbcf337b
PSARC/2014/012 GnuPG version 2.0.22 17583595 problem in UTILITY/GNUPG 17602440 problem in UTILITY/GNUPG 18096771 Update GnuPG in Userland to version 2.0.22
components/gnupg/Makefile
components/gnupg/gnupg.p5m
components/gnupg/patches/common-estream.c.patch
--- a/components/gnupg/Makefile	Tue Feb 25 02:29:07 2014 -0800
+++ b/components/gnupg/Makefile	Tue Feb 25 05:35:54 2014 -0800
@@ -18,17 +18,17 @@
 #
 # CDDL HEADER END
 #
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
 #
 include ../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=		gnupg
-COMPONENT_VERSION=	2.0.17
+COMPONENT_VERSION=	2.0.22
 COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
 COMPONENT_PROJECT_URL=	http://www.gnupg.org/
 COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.bz2
 COMPONENT_ARCHIVE_HASH=	\
-    sha256:ea649d5ecb2f97cc8d81c5796c6ad8d7d8581f9554241c39d2b11ab12139eea6
+    sha256:437d0ab259854359fc48aa8795af80cff4975e559c111c92c03d0bc91408e251
 COMPONENT_ARCHIVE_URL=	ftp://ftp.gnupg.org/gcrypt/gnupg/$(COMPONENT_ARCHIVE)
 COMPONENT_BUGDB=	utility/gnupg
 
--- a/components/gnupg/gnupg.p5m	Tue Feb 25 02:29:07 2014 -0800
+++ b/components/gnupg/gnupg.p5m	Tue Feb 25 05:35:54 2014 -0800
@@ -18,21 +18,21 @@
 #
 # CDDL HEADER END
 #
-# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
 #
 <transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
-<transform dir path=usr/share/gnupg$ -> default facet.locale true>
 <transform file path=usr/share/gnupg/help\.([^/]+)(\..+){0,1}(/.+){0,1}\.txt$ -> default facet.locale.%<\1> true>
-
-set name=pkg.fmri value=pkg:/crypto/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.fmri \
+    value=pkg:/crypto/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="GNU Privacy Guard"
-set name=pkg.description value="A complete and free implementation of the OpenPGP Standard as defined by RFC4880."
+set name=pkg.description \
+    value="A complete and free implementation of the OpenPGP Standard as defined by RFC4880."
 set name=com.oracle.info.description value="GNU Privacy Guard"
-set name=info.classification value="org.opensolaris.category.2008:Applications/System Utilities"
+set name=info.classification \
+    value="org.opensolaris.category.2008:Applications/System Utilities"
+set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
 set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
-set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
-set name=org.opensolaris.arc-caseid \
-    value=PSARC/2009/397
+set name=org.opensolaris.arc-caseid value=PSARC/2009/397 value=PSARC/2014/012
 set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
 #
 dir path=usr
@@ -205,6 +205,7 @@
 file path=usr/share/locale/sk/LC_MESSAGES/gnupg2.mo
 file path=usr/share/locale/sv/LC_MESSAGES/gnupg2.mo
 file path=usr/share/locale/tr/LC_MESSAGES/gnupg2.mo
+file path=usr/share/locale/uk/LC_MESSAGES/gnupg2.mo
 file path=usr/share/locale/zh_CN/LC_MESSAGES/gnupg2.mo
 file path=usr/share/locale/zh_TW/LC_MESSAGES/gnupg2.mo
 file path=usr/share/man/man1/gpg-agent.1
@@ -225,4 +226,4 @@
 #
 license gnupg.license license="GPLv3, LGPLv3"
 #
-depend fmri=__TBD pkg.debug.depend.file=usr/lib/pinentry type=require
+depend type=require fmri=__TBD pkg.debug.depend.file=usr/lib/pinentry
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/gnupg/patches/common-estream.c.patch	Tue Feb 25 05:35:54 2014 -0800
@@ -0,0 +1,26 @@
+Changes needed to get GnuPG estream.c to compile with the Studio C compiler.
+
+These were legitimate bugs in GnuPG version 2.0.22, but looking at the
+latest version of estream.c in the GnuPG git repository, the problems have
+been resolved by redefining ESTREAM_MUTEX_UNLOCK and ESTREAM_MUTEX_INITIALIZE
+to no longer test against estream_pth_killed and therefore no need for the
+bogusly defined dummy routines.
+
+--- gnupg-2.0.22/common/estream.c.orig	2014-01-15 08:38:06.978672664 -0800
++++ gnupg-2.0.22/common/estream.c	2014-01-15 09:02:39.386197974 -0800
[email protected]@ -181,13 +181,13 @@
+   (estream_pth_killed ? dummy_mutex_call_void ((mutex))         \
+    : (void)pth_mutex_acquire (&(mutex), 0, NULL))
+ # define ESTREAM_MUTEX_UNLOCK(mutex)                            \
+-  (estream_pth_killed ? dummy_mutex_call_void ((mutex))         \
++  (estream_pth_killed ? dummy_mutex_call_int ((mutex))         \
+    : pth_mutex_release (&(mutex)))
+ # define ESTREAM_MUTEX_TRYLOCK(mutex)                                   \
+   (estream_pth_killed ? dummy_mutex_call_int ((mutex))                  \
+    : ((pth_mutex_acquire (&(mutex), 1, NULL) == TRUE)? 0:-1))
+ # define ESTREAM_MUTEX_INITIALIZE(mutex)                        \
+-  (estream_pth_killed ? dummy_mutex_call_void ((mutex))         \
++  (estream_pth_killed ? dummy_mutex_call_int ((mutex))         \
+    : pth_mutex_init (&(mutex)))
+ 
+ #else /*!HAVE_PTH*/