components/gnome/gnome-keyring/patches/01-pam-configure-and-includes.patch
author Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
Fri, 28 Oct 2016 14:57:58 -0700
changeset 7196 b0e313a2264a
permissions -rw-r--r--
23245305 Move gnome-keyring to Userland and update to 3.18.3 PSARC/2016/311 GNOME Security Libraries

On Solaris, pam_appl.h must be included to use pam_modules.h.
Additionally, for platforms that have the pam header files in a different
location, the include paths need to be based on the result of configure.

Need to file upstream bug

--- gnome-keyring-3.16.0/configure.ac	2015-04-08 05:09:11.000000000 -0700
+++ gnome-keyring-3.16.0/configure.ac	2015-07-06 13:41:06.760980131 -0700
@@ -254,7 +254,15 @@
 
 pam_status="no"
 if test "$enable_pam" != "no"; then
-	AC_CHECK_HEADERS(security/pam_modules.h pam/pam_modules.h, [have_pam=yes; break], have_pam=no)
+	AC_CHECK_HEADERS(security/pam_appl.h pam/pam_appl.h)
+	AC_CHECK_HEADERS(security/pam_modules.h pam/pam_modules.h, [have_pam=yes; break], have_pam=no,
+[#ifdef HAVE_SECURITY_PAM_APPL_H
+#include <security/pam_appl.h>
+#endif
+#ifdef HAVE_PAM_PAM_APPL_H
+#include <pam/pam_appl.h>
+#endif
+])
 	if test "$enable_pam" = "yes" -a "$have_pam" = "no"; then
 		AC_MSG_ERROR(The PAM headers are missing)
 	elif test "$have_pam" = "yes"; then
--- gnome-keyring-3.16.0/pam/gkr-pam-module.c	2014-09-23 00:45:13.000000000 -0700
+++ gnome-keyring-3.16.0/pam/gkr-pam-module.c	2015-07-06 13:46:40.611562409 -0700
@@ -32,8 +32,13 @@
 
 #include "daemon/control/gkd-control-codes.h"
 
+#ifdef HAVE_PAM_PAM_APPL_H
+#include <pam/pam_appl.h>
+#include <pam/pam_modules.h>
+#else
 #include <security/pam_appl.h>
 #include <security/pam_modules.h>
+#endif
 
 #include <sys/types.h>
 #include <sys/stat.h>
--- gnome-keyring-3.16.0/pam/mock-pam.c	2014-09-23 00:45:13.000000000 -0700
+++ gnome-keyring-3.16.0/pam/mock-pam.c	2015-07-06 13:46:19.879319092 -0700
@@ -20,8 +20,13 @@
 
 #include "config.h"
 
+#ifdef HAVE_PAM_PAM_APPL_H
+#include <pam/pam_appl.h>
+#include <pam/pam_modules.h>
+#else
 #include <security/pam_appl.h>
 #include <security/pam_modules.h>
+#endif
 
 #include <stdlib.h>
 #include <string.h>
--- gnome-keyring-3.16.0/pam/test-pam.c	2014-10-14 08:55:45.000000000 -0700
+++ gnome-keyring-3.16.0/pam/test-pam.c	2015-07-06 13:46:16.817220995 -0700
@@ -26,7 +26,11 @@
 #include "egg/egg-testing.h"
 #include "egg/egg-secure-memory.h"
 
+#ifdef HAVE_PAM_PAM_APPL_H
+#include <pam/pam_appl.h>
+#else
 #include <security/pam_appl.h>
+#endif
 
 #include <glib.h>
 #include <glib/gstdio.h>