rpms/globus-openssl-module/EL-5 globus-openssl-module-oid.patch, NONE, 1.1 globus-openssl-module.spec, 1.5, 1.6 import.log, 1.4, 1.5
Mattias Ellert
ellert at fedoraproject.org
Sat Jun 5 16:12:28 UTC 2010
- Previous message: rpms/globus-openssl-module/EL-6 globus-openssl-module-oid.patch, NONE, 1.1 globus-openssl-module.spec, 1.6, 1.7 import.log, 1.4, 1.5
- Next message: rpms/globus-openssl-module/EL-4 globus-openssl-module-oid.patch, NONE, 1.1 globus-openssl-module.spec, 1.5, 1.6 import.log, 1.4, 1.5
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: ellert
Update of /cvs/pkgs/rpms/globus-openssl-module/EL-5
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv13703/EL-5
Modified Files:
globus-openssl-module.spec import.log
Added Files:
globus-openssl-module-oid.patch
Log Message:
* Mon May 31 2010 Mattias Ellert <mattias.ellert at fysast.uu.se> - 1.2-2
- Fix OID registration pollution
globus-openssl-module-oid.patch:
globus_openssl.c | 99 ++++++++++++++++++++++++++++++++++++++-----------------
1 file changed, 69 insertions(+), 30 deletions(-)
--- NEW FILE globus-openssl-module-oid.patch ---
diff -dur globus_openssl_module-1.2.orig/library/globus_openssl.c globus_openssl_module-1.2/library/globus_openssl.c
--- globus_openssl_module-1.2.orig/library/globus_openssl.c 2010-01-29 21:09:32.000000000 +0100
+++ globus_openssl_module-1.2/library/globus_openssl.c 2010-06-02 12:40:54.537121665 +0200
@@ -86,41 +86,74 @@
globus_mutex_init(&(mutex_pool[i]),NULL);
}
- CRYPTO_set_locking_callback(globus_l_openssl_locking_cb);
- CRYPTO_set_id_callback(globus_l_openssl_thread_id);
+ if (!CRYPTO_get_locking_callback())
+ {
+ CRYPTO_set_locking_callback(globus_l_openssl_locking_cb);
+ }
+ if (!CRYPTO_get_id_callback())
+ {
+ CRYPTO_set_id_callback(globus_l_openssl_thread_id);
+ }
- OBJ_create(ANY_LANGUAGE_OID,
- ANY_LANGUAGE_SN,
- ANY_LANGUAGE_LN);
+ if (OBJ_txt2nid(ANY_LANGUAGE_OID) == 0)
+ {
+ OBJ_create(ANY_LANGUAGE_OID,
+ ANY_LANGUAGE_SN,
+ ANY_LANGUAGE_LN);
+ }
- OBJ_create(IMPERSONATION_PROXY_OID,
- IMPERSONATION_PROXY_SN,
- IMPERSONATION_PROXY_LN);
+ if (OBJ_txt2nid(IMPERSONATION_PROXY_OID) == 0)
+ {
+ OBJ_create(IMPERSONATION_PROXY_OID,
+ IMPERSONATION_PROXY_SN,
+ IMPERSONATION_PROXY_LN);
+ }
- OBJ_create(INDEPENDENT_PROXY_OID,
- INDEPENDENT_PROXY_SN,
- INDEPENDENT_PROXY_LN);
+ if (OBJ_txt2nid(INDEPENDENT_PROXY_OID) == 0)
+ {
+ OBJ_create(INDEPENDENT_PROXY_OID,
+ INDEPENDENT_PROXY_SN,
+ INDEPENDENT_PROXY_LN);
+ }
- OBJ_create(LIMITED_PROXY_OID,
- LIMITED_PROXY_SN,
- LIMITED_PROXY_LN);
-
- pci_NID = OBJ_create(PROXYCERTINFO_OID,PROXYCERTINFO_SN,PROXYCERTINFO_LN);
+ if (OBJ_txt2nid(LIMITED_PROXY_OID) == 0)
+ {
+ OBJ_create(LIMITED_PROXY_OID,
+ LIMITED_PROXY_SN,
+ LIMITED_PROXY_LN);
+ }
- pci_old_NID = OBJ_create(PROXYCERTINFO_OLD_OID,
- PROXYCERTINFO_OLD_SN,
- PROXYCERTINFO_OLD_LN);
+ pci_NID = OBJ_txt2nid(PROXYCERTINFO_OID);
+ if (pci_NID == 0)
+ {
+ pci_NID = OBJ_create(PROXYCERTINFO_OID,
+ PROXYCERTINFO_SN,
+ PROXYCERTINFO_LN);
+ }
- pci_x509v3_ext_meth = PROXYCERTINFO_x509v3_ext_meth();
- pci_old_x509v3_ext_meth = PROXYCERTINFO_OLD_x509v3_ext_meth();
+ pci_old_NID = OBJ_txt2nid(PROXYCERTINFO_OLD_OID);
+ if (pci_old_NID == 0)
+ {
+ pci_old_NID = OBJ_create(PROXYCERTINFO_OLD_OID,
+ PROXYCERTINFO_OLD_SN,
+ PROXYCERTINFO_OLD_LN);
+ }
/* this sets the pci NID in the static X509V3_EXT_METHOD struct */
- pci_x509v3_ext_meth->ext_nid = pci_NID;
- pci_old_x509v3_ext_meth->ext_nid = pci_old_NID;
-
- X509V3_EXT_add(pci_x509v3_ext_meth);
- X509V3_EXT_add(pci_old_x509v3_ext_meth);
-
+ if (X509V3_EXT_get_nid(pci_NID) == NULL)
+ {
+ pci_x509v3_ext_meth = PROXYCERTINFO_x509v3_ext_meth();
+ pci_x509v3_ext_meth->ext_nid = pci_NID;
+ X509V3_EXT_add(pci_x509v3_ext_meth);
+ }
+
+ if (X509V3_EXT_get_nid(pci_old_NID) == NULL)
+ {
+ pci_old_x509v3_ext_meth = PROXYCERTINFO_OLD_x509v3_ext_meth();
+ pci_old_x509v3_ext_meth->ext_nid = pci_old_NID;
+ X509V3_EXT_add(pci_old_x509v3_ext_meth);
+ }
+
return GLOBUS_SUCCESS;
}
/* globus_l_openssl_activate() */
@@ -140,9 +173,15 @@
ERR_clear_error();
X509V3_EXT_cleanup();
-
- CRYPTO_set_id_callback(NULL);
- CRYPTO_set_locking_callback(NULL);
+
+ if (CRYPTO_get_id_callback() == globus_l_openssl_thread_id)
+ {
+ CRYPTO_set_id_callback(NULL);
+ }
+ if (CRYPTO_get_locking_callback() == globus_l_openssl_locking_cb)
+ {
+ CRYPTO_set_locking_callback(NULL);
+ }
for (i=0; i<CRYPTO_num_locks(); i++)
{
Index: globus-openssl-module.spec
===================================================================
RCS file: /cvs/pkgs/rpms/globus-openssl-module/EL-5/globus-openssl-module.spec,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -p -r1.5 -r1.6
--- globus-openssl-module.spec 16 Apr 2010 14:44:31 -0000 1.5
+++ globus-openssl-module.spec 5 Jun 2010 16:12:28 -0000 1.6
@@ -7,7 +7,7 @@
Name: globus-openssl-module
%global _name %(tr - _ <<< %{name})
Version: 1.2
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Globus Toolkit - Globus OpenSSL Module Wrapper
Group: System Environment/Libraries
@@ -26,6 +26,9 @@ Source9: epstopdf-2.9.5gw
# Fixes for mingw compilation:
# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6742
Patch0: %{name}-mingw.patch
+# Fix duplicate OID registrations:
+# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=7032
+Patch1: %{name}-oid.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: globus-openssl%{?_isa} >= 1
@@ -95,6 +98,7 @@ Globus OpenSSL Module Wrapper Documentat
%prep
%setup -q -n %{_name}-%{version}
%patch0 -p1
+%patch1 -p1
%if "%{rhel}" == "5"
mkdir bin
@@ -196,6 +200,9 @@ rm -rf $RPM_BUILD_ROOT
%dir %{_docdir}/%{name}-%{version}/html
%changelog
+* Mon May 31 2010 Mattias Ellert <mattias.ellert at fysast.uu.se> - 1.2-2
+- Fix OID registration pollution
+
* Tue Apr 13 2010 Mattias Ellert <mattias.ellert at fysast.uu.se> - 1.2-1
- Update to Globus Toolkit 5.0.1
- Drop patch globus-openssl-module-sslinit.patch (fixed upstream)
Index: import.log
===================================================================
RCS file: /cvs/pkgs/rpms/globus-openssl-module/EL-5/import.log,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -p -r1.4 -r1.5
--- import.log 16 Apr 2010 14:44:31 -0000 1.4
+++ import.log 5 Jun 2010 16:12:28 -0000 1.5
@@ -2,3 +2,4 @@ globus-openssl-module-0_6-1_fc9:EL-5:glo
globus-openssl-module-0_6-2_fc9:EL-5:globus-openssl-module-0.6-2.fc9.src.rpm:1245083563
globus-openssl-module-1_1-1_fc12:EL-5:globus-openssl-module-1.1-1.fc12.src.rpm:1265701165
globus-openssl-module-1_2-1_fc12:EL-5:globus-openssl-module-1.2-1.fc12.src.rpm:1271429054
+globus-openssl-module-1_2-2_fc12:EL-5:globus-openssl-module-1.2-2.fc12.src.rpm:1275754332
- Previous message: rpms/globus-openssl-module/EL-6 globus-openssl-module-oid.patch, NONE, 1.1 globus-openssl-module.spec, 1.6, 1.7 import.log, 1.4, 1.5
- Next message: rpms/globus-openssl-module/EL-4 globus-openssl-module-oid.patch, NONE, 1.1 globus-openssl-module.spec, 1.5, 1.6 import.log, 1.4, 1.5
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list