Skip to content

Conversation

@kwizart
Copy link

@kwizart kwizart commented Nov 28, 2024

This will lead to a libcryptopp.so.9 SONAME and libcryptopp.so.9.0.0 library.

@kwizart
Copy link
Author

kwizart commented Nov 28, 2024

Side note, rpmsodiff show that library ABI isn't compatible (symbols are removed), so there is indeed a need to change the SONAME, but it wasn't done in the 8.9.0 autotools release.


libcryptopp.so.8	/usr/lib64/libcryptopp.so.8.8.0	/usr/lib64/libcryptopp.so.8.8.0

cpio: ./usr/lib64/libcryptopp.so.8: Cannot open: No such file or directory
cpio: ./usr/lib64/libcryptopp.so.8: Cannot open: No such file or directory
cpio: ./usr/lib64/libcryptopp.so.8: Cannot open: No such file or directory
cpio: ./usr/lib64/libcryptopp.so.8: Cannot open: No such file or directory
--- cryptopp-8.8.0-5.fc39/libcryptopp.so.8	2024-11-28 11:46:02.787468861 +0100
+++ cryptopp-8.9.0-2.fc42/libcryptopp.so.8	2024-11-28 11:45:19.675595981 +0100
@@ -1,2 +1 @@
-ARIA_SIMD_FNAME	R
 BLAKE2B_SIMD_FNAME	R
@@ -30,2 +29,3 @@
 STRCIPHER_FNAME	R
+_Z11MyAdhocTestiPPc	T
 _Z9SetKey192PjPKj	W
@@ -195,2 +195,3 @@
 _ZN8CryptoPP11HC256Policy16OperateKeystreamENS_18KeystreamOperationEPhPKhm	T
+_ZN8CryptoPP11HC256Policy17GenerateKeystreamEPj	T
 _ZN8CryptoPP11HC256Policy19CipherResynchronizeEPhPKhm	T
@@ -1852,2 +1853,3 @@
 _ZN8CryptoPP21SimpleKeyingInterface9GetNextIVERNS_21RandomNumberGeneratorEPh	T
+_ZN8CryptoPP21precomputedPrimeTableE	R
 _ZN8CryptoPP22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_14CTR_ModePolicyEEEE11ProcessDataEPhPKhm	W
@@ -2281,3 +2283,2 @@
 _ZN8CryptoPP28PKCS_EncryptionPaddingSchemeD2Ev	W
-_ZN8CryptoPP29ARIA_ProcessAndXorBlock_SSSE3EPKhPhS1_Pj	T
 _ZN8CryptoPP29AuthenticatedDecryptionFilter11ChannelPut2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKhmib	T
@@ -2999,2 +3000,3 @@
 _ZN8CryptoPP7ARIATab3KRKE	R
+_ZN8CryptoPP7ARIA_FEEPj	W
 _ZN8CryptoPP7ARIA_FOEPj	W
@@ -5901,3 +5903,2 @@
 _ZNSt6vectorIjSaIjEED2Ev	W
-_ZNSt6vectorItSaItEE17_M_realloc_insertIJtEEEvN9__gnu_cxx17__normal_iteratorIPtS1_EEDpOT_	W
 _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv	W
@@ -10563,4 +10564,2 @@
 _ZZNK8CryptoPP9SingletonINS_8PSSR_MEMILb0ENS_10P1363_MGF1ELin1ELi0ELb0EEENS_9NewObjectIS3_EELi0EE3RefEvE9s_pObject	u
-_ZZNK8CryptoPP9SingletonISt6vectorItSaItEENS_13NewPrimeTableELi0EE3RefEvE7s_mutex	u
-_ZZNK8CryptoPP9SingletonISt6vectorItSaItEENS_13NewPrimeTableELi0EE3RefEvE9s_pObject	u
 s_sosemanukMulTables	D

	5 symbols removed
R ARIA_SIMD_FNAME
T _ZN8CryptoPP29ARIA_ProcessAndXorBlock_SSSE3EPKhPhS1_Pj
W _ZNSt6vectorItSaItEE17_M_realloc_insertIJtEEEvN9__gnu_cxx17__normal_iteratorIPtS1_EEDpOT_
u _ZZNK8CryptoPP9SingletonISt6vectorItSaItEENS_13NewPrimeTableELi0EE3RefEvE7s_mutex
u _ZZNK8CryptoPP9SingletonISt6vectorItSaItEENS_13NewPrimeTableELi0EE3RefEvE9s_pObject

	4 symbols added
R _ZN8CryptoPP21precomputedPrimeTableE
T _Z11MyAdhocTestiPPc
T _ZN8CryptoPP11HC256Policy17GenerateKeystreamEPj
W _ZN8CryptoPP7ARIA_FEEPj

# template for libcryptopp.so.8 version script
CRYPTOPP_8.9.0 {
    global:
	_Z11MyAdhocTestiPPc;
	_ZN8CryptoPP11HC256Policy17GenerateKeystreamEPj;
	_ZN8CryptoPP21precomputedPrimeTableE;
	_ZN8CryptoPP7ARIA_FEEPj;
};

@aakodadi
Copy link
Collaborator

We have no automatic testing on PRs?

This will lead to a libcryptopp.so.9 SONAME and libcryptopp.so.9.0.0
library.
@kwizart
Copy link
Author

kwizart commented Nov 28, 2024

Seems like I've pushed the wrong patch, force-pushed.
Or at least do we agree to go with libcryptopp.so.9 and stop using libcryptopp-8.8.0.so.8 ?

Alternative is more likely to use libcryptopp-8.9.0.so.0 (for 8.9.0) and rely on the same variable that defines the major version. But this isn't the usual way to define the SONAME on linux.

@noloader ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants