On Mon, Jan 27, 2025 at 10:41:37AM +0100, Matthias Schmidt wrote: > Hi Theo, > > * Theo Buehler wrote: > > > The program finishes building and can be installed > > > > > > $ ncspot --version > > > ncspot 1.2.1 > > > > > > But it immediately crashes with a segmentation fault > > > > > > $ gdb ncspot ncspot.core GNU gdb 6.3 > > > > old gdb in base is too outdated to deal with modern llvm/C++/Rust/... > > It's generally better to pkg_add gdb and use egdb instead (doesn't > > really matter here, though). > > > > This part of your output is one reason: > > > > > Reading symbols from /usr/libexec/ld.so...Error while reading shared > > > library symbols: Dwarf Error: wrong version in compilation unit header > > > (is 4, should be 2) [in module /usr/libexec/ld.so] #0 > > > > And as I said, it's due to missing landing pads in the s2n assembly: > > > > > 0x00000d254ec7c563 in curve25519_x25519base_byte () from > > > > (this is likely during the key exchange in a TLS connection to spotify) > > > > The definition of this symbol is at the link below and you can see that > > there are no _CET_ENDBR or similar. The way the S2N_BN_SYMBOL macro is > > formed, there's no easy way to hook into there, unfortunately, so it's > > another whack-a-mole set of patches needed. I'll take a closer look when > > I get a chance. > > Do you already had a chance to look at it?
No, but lucas sent patches to aws-lc: https://github.com/awslabs/s2n-bignum/pull/173 I didn't look further. Unfortunately their build system isn't the most pleasant to use. I don't use spotify and ncspot is the only port affected to my knowledge, so it's very low prio for me. > > ncspot is the easiest way to listen to Spotify on OpenBSD and since > Spotify changed their login policy one can no longer use it. A rebuild > from scratch also doesn't word due to the above mentioned issues. > > Cheers > > Matthias