librpm_sequoia.so exposes symbols beyond the RPM PGP signature verification functions
The built .so exports a bunch of symbols with names matching pgp*
and rpm*
-- but then there are also several other exported symbols that i'm not sure are necessary for rpm.
I think the library probably should not expose SHA1DC*
, sha1_dvs
, sha1_compression_states
, ubc_check
, and rust_eh_personality
.
From my build:
$ nm --defined-only --extern-only target/debug/librpm_sequoia.so
00000000000ae360 T pgpArmorWrap
000000000009f4d0 T pgpDigParamsAlgo
000000000009c640 T pgpDigParamsCmp
00000000000a5bc0 T pgpDigParamsCreationTime
000000000009ba30 T pgpDigParamsFree
00000000000a1660 T pgpDigParamsSignID
00000000000a31d0 T pgpDigParamsUserID
00000000000a4660 T pgpDigParamsVersion
00000000000bc690 T pgpParsePkts
00000000000b4f80 T pgpPrtParams
00000000000b8f90 T pgpPrtParamsSubkeys
00000000000afe90 T pgpPubKeyCertLen
00000000000aba80 T pgpPubkeyKeyID
00000000000bef60 T pgpPubkeyLint
000000000009a620 T pgpSignatureType
00000000000a7450 T pgpVerifySignature
0000000000093790 T rpmDigestDup
00000000000975d0 T rpmDigestFinal
0000000000092070 T rpmDigestInit
0000000000094c60 T rpmDigestLength
0000000000095900 T rpmDigestUpdate
0000000000091500 T rpmFreeCrypto
0000000000090990 T rpmInitCrypto
00000000003ac5b0 T rust_eh_personality
00000000003093e0 T sha1_compression_states
000000000030f310 T SHA1DCFinal
000000000030ee50 T SHA1DCInit
000000000030ef70 T SHA1DCSetCallback
000000000030ef40 T SHA1DCSetDetectReducedRoundCollision
000000000030eeb0 T SHA1DCSetSafeHash
000000000030ef10 T SHA1DCSetUseDetectColl
000000000030eee0 T SHA1DCSetUseUBC
000000000030ef90 T SHA1DCUpdate
00000000004a80e0 D sha1_dvs
000000000030fcb0 T ubc_check
$
Edited by Daniel Kahn Gillmor