smani pushed to omniORB (f21). "Add omniORB-4.2.0-peer-details.patch"
notifications at fedoraproject.org
notifications at fedoraproject.org
Sat Apr 11 09:58:35 UTC 2015
>From 2888e0939f99854aaa9c4cbc23017c9c7bd375ba Mon Sep 17 00:00:00 2001
From: Sandro Mani <manisandro at gmail.com>
Date: Sat, 11 Apr 2015 11:56:41 +0200
Subject: Add omniORB-4.2.0-peer-details.patch
diff --git a/omniORB-4.2.0-peer-details.patch b/omniORB-4.2.0-peer-details.patch
new file mode 100644
index 0000000..b52cb74
--- /dev/null
+++ b/omniORB-4.2.0-peer-details.patch
@@ -0,0 +1,93 @@
+diff -rupN omniORB-4.2.0/src/lib/omniORB/orbcore/ssl/sslConnection.cc omniORB-4.2.0-new/src/lib/omniORB/orbcore/ssl/sslConnection.cc
+--- omniORB-4.2.0/src/lib/omniORB/orbcore/ssl/sslConnection.cc 2015-04-09 10:39:35.564759309 +0300
++++ omniORB-4.2.0-new/src/lib/omniORB/orbcore/ssl/sslConnection.cc 2015-04-09 10:33:35.000000000 +0300
+@@ -332,6 +332,7 @@ sslConnection::gatekeeperCheckSpecific(g
+ case SSL_ERROR_NONE:
+ tcpSocket::setBlocking(pd_socket);
+ pd_handshake_ok = 1;
++ setPeerDetails() ;
+ return 1;
+
+ case SSL_ERROR_WANT_READ:
+@@ -405,6 +406,39 @@ sslConnection::sslConnection(SocketHandl
+ tcpSocket::setCloseOnExec(sock);
+
+ belong_to->addSocket(this);
++}
++
++/////////////////////////////////////////////////////////////////////////
++sslConnection::~sslConnection() {
++
++ clearSelectable();
++ pd_belong_to->removeSocket(this);
++
++ if (pd_peercert) {
++ X509_free(pd_peercert);
++ pd_peercert = 0;
++ }
++
++ if (pd_ssl != 0) {
++ if (SSL_get_shutdown(pd_ssl) == 0) {
++ SSL_set_shutdown(pd_ssl, SSL_SENT_SHUTDOWN | SSL_RECEIVED_SHUTDOWN);
++ SSL_shutdown(pd_ssl);
++ }
++ SSL_free(pd_ssl);
++ pd_ssl = 0;
++ }
++
++ CLOSESOCKET(pd_socket);
++}
++
++/////////////////////////////////////////////////////////////////////////
++void
++sslConnection::setPeerDetails() {
++
++ if (pd_peercert)
++ X509_free (pd_peercert) ;
++
++ pd_peercert = 0 ;
+
+ // Determine our peer identity, if there is one
+ X509 *peer_cert = SSL_get_peer_certificate(pd_ssl);
+@@ -468,29 +502,6 @@ sslConnection::sslConnection(SocketHandl
+ }
+
+ /////////////////////////////////////////////////////////////////////////
+-sslConnection::~sslConnection() {
+-
+- clearSelectable();
+- pd_belong_to->removeSocket(this);
+-
+- if (pd_peercert) {
+- X509_free(pd_peercert);
+- pd_peercert = 0;
+- }
+-
+- if (pd_ssl != 0) {
+- if (SSL_get_shutdown(pd_ssl) == 0) {
+- SSL_set_shutdown(pd_ssl, SSL_SENT_SHUTDOWN | SSL_RECEIVED_SHUTDOWN);
+- SSL_shutdown(pd_ssl);
+- }
+- SSL_free(pd_ssl);
+- pd_ssl = 0;
+- }
+-
+- CLOSESOCKET(pd_socket);
+-}
+-
+-/////////////////////////////////////////////////////////////////////////
+ void
+ sslConnection::setSelectable(int now,
+ CORBA::Boolean data_in_buffer) {
+diff -rupN omniORB-4.2.0/src/lib/omniORB/orbcore/ssl/sslConnection.h omniORB-4.2.0-new/src/lib/omniORB/orbcore/ssl/sslConnection.h
+--- omniORB-4.2.0/src/lib/omniORB/orbcore/ssl/sslConnection.h 2015-04-09 10:39:35.564759309 +0300
++++ omniORB-4.2.0-new/src/lib/omniORB/orbcore/ssl/sslConnection.h 2015-04-09 10:26:58.000000000 +0300
+@@ -77,6 +77,8 @@ public:
+
+
+ private:
++ void setPeerDetails();
++
+ ::SSL* pd_ssl;
+ CORBA::String_var pd_myaddress;
+ CORBA::String_var pd_peeraddress;
diff --git a/omniORB.spec b/omniORB.spec
index 7ad03f8..9d88588 100644
--- a/omniORB.spec
+++ b/omniORB.spec
@@ -13,7 +13,7 @@
Name: omniORB
Version: 4.2.0
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: A robust high performance CORBA ORB for C++ and Python
Group: System Environment/Libraries
@@ -28,6 +28,8 @@ Source4: omniNames.service
Patch0: omniORB-4.2.0-fsf-address.patch
# fix -Werror=format-security issue
Patch1: omniORB-4.2.0-format-security.patch
+# Bug 1210340 - omniORB loses SSL peer information
+Patch2: omniORB-4.2.0-peer-details.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: python-devel
@@ -101,6 +103,7 @@ developing applications that use %{name}.
%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
%build
%configure --disable-static %{?with_openssl:--with-openssl=%{_prefix}}
@@ -247,6 +250,9 @@ fi
%changelog
+* Sat Apr 11 2015 Sandro Mani <manisandro at gmail.com> - 4.2.0-4
+- Add patch for bug #1210340 (omniORB loses SSL peer information), thanks Alexey Kosilin
+
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 4.2.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
--
cgit v0.10.2
http://pkgs.fedoraproject.org/cgit/omniORB.git/commit/?h=f21&id=2888e0939f99854aaa9c4cbc23017c9c7bd375ba
More information about the scm-commits
mailing list