[openssl] use symbol versioning also for the textual version

Tomáš Mráz tmraz at fedoraproject.org
Fri Jul 26 11:16:22 UTC 2013


commit acdf8a62f640efd8f6a356f72efec7397f9372a5
Author: Tomas Mraz <tmraz at fedoraproject.org>
Date:   Fri Jul 26 13:16:10 2013 +0200

    use symbol versioning also for the textual version
    
    - additional manual page fix

 openssl-1.0.1-version.patch  |   43 ----------------------------
 openssl-1.0.1e-version.patch |   63 ++++++++++++++++++++++++++++++++++++++++++
 openssl.spec                 |    8 ++++-
 3 files changed, 69 insertions(+), 45 deletions(-)
---
diff --git a/openssl-1.0.1e-version.patch b/openssl-1.0.1e-version.patch
new file mode 100644
index 0000000..e73f2c9
--- /dev/null
+++ b/openssl-1.0.1e-version.patch
@@ -0,0 +1,63 @@
+diff -up openssl-1.0.1e/crypto/cversion.c.version openssl-1.0.1e/crypto/cversion.c
+--- openssl-1.0.1e/crypto/cversion.c.version	2013-02-11 16:02:47.000000000 +0100
++++ openssl-1.0.1e/crypto/cversion.c	2013-07-26 12:28:12.739161925 +0200
+@@ -62,7 +62,7 @@
+ #include "buildinf.h"
+ #endif
+ 
+-const char *SSLeay_version(int t)
++const char *_current_SSLeay_version(int t)
+ 	{
+ 	if (t == SSLEAY_VERSION)
+ 		return OPENSSL_VERSION_TEXT;
+@@ -110,8 +110,25 @@ const char *SSLeay_version(int t)
+ 	return("not available");
+ 	}
+ 
+-unsigned long SSLeay(void)
++const char *_original_SSLeay_version(int t)
++	{
++	if (t == SSLEAY_VERSION)
++		return "OpenSSL 1.0.0-fips 29 Mar 2010";
++	else
++		return _current_SSLeay_version(t);
++	}
++
++unsigned long _original_SSLeay(void)
++	{
++	return(0x10000003);
++	}
++
++unsigned long _current_SSLeay(void)
+ 	{
+ 	return(SSLEAY_VERSION_NUMBER);
+ 	}
+ 
++__asm__(".symver _original_SSLeay,SSLeay@");
++__asm__(".symver _original_SSLeay_version,SSLeay_version@");
++__asm__(".symver _current_SSLeay,SSLeay@@OPENSSL_1.0.1");
++__asm__(".symver _current_SSLeay_version,SSLeay_version@@OPENSSL_1.0.1");
+diff -up openssl-1.0.1e/Makefile.shared.version openssl-1.0.1e/Makefile.shared
+--- openssl-1.0.1e/Makefile.shared.version	2013-07-26 12:23:43.615545603 +0200
++++ openssl-1.0.1e/Makefile.shared	2013-07-26 12:23:43.701547398 +0200
+@@ -151,7 +151,7 @@ DO_GNU_SO=$(CALC_VERSIONS); \
+ 	SHLIB_SUFFIX=; \
+ 	ALLSYMSFLAGS='-Wl,--whole-archive'; \
+ 	NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
+-	SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"
++	SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,--default-symver,--version-script=version.map -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"
+ 
+ DO_GNU_APP=LDFLAGS="$(CFLAGS)"
+ 
+diff -up openssl-1.0.1e/version.map.version openssl-1.0.1e/version.map
+--- openssl-1.0.1e/version.map.version	2013-07-26 12:23:43.701547398 +0200
++++ openssl-1.0.1e/version.map	2013-07-26 12:29:10.698371472 +0200
+@@ -0,0 +1,8 @@
++OPENSSL_1.0.1 {
++    global:
++	    SSLeay;
++	    SSLeay_version;
++    local:
++	    _original*;
++	    _current*;
++};
diff --git a/openssl.spec b/openssl.spec
index 823c627..083a648 100644
--- a/openssl.spec
+++ b/openssl.spec
@@ -21,7 +21,7 @@
 Summary: Utilities from the general purpose cryptography library with TLS implementation
 Name: openssl
 Version: 1.0.1e
-Release: 12%{?dist}
+Release: 13%{?dist}
 Epoch: 1
 # We have to remove certain patented algorithms from the openssl source
 # tarball with the hobble-openssl script which is included below.
@@ -59,7 +59,7 @@ Patch45: openssl-1.0.1e-env-zlib.patch
 Patch47: openssl-1.0.0-beta5-readme-warning.patch
 Patch49: openssl-1.0.1a-algo-doc.patch
 Patch50: openssl-1.0.1-beta2-dtls1-abi.patch
-Patch51: openssl-1.0.1-version.patch
+Patch51: openssl-1.0.1e-version.patch
 Patch56: openssl-1.0.0c-rsa-x931.patch
 Patch58: openssl-1.0.1-beta2-fips-md5-allow.patch
 Patch60: openssl-1.0.0d-apps-dgst.patch
@@ -441,6 +441,10 @@ rm -rf $RPM_BUILD_ROOT/%{_libdir}/fipscanister.*
 %postun libs -p /sbin/ldconfig
 
 %changelog
+* Fri Jul 26 2013 Tomas Mraz <tmraz at redhat.com> 1.0.1e-13
+- additional manual page fix
+- use symbol versioning also for the textual version
+
 * Thu Jul 25 2013 Tomas Mraz <tmraz at redhat.com> 1.0.1e-12
 - additional manual page fixes
 


More information about the scm-commits mailing list