Skip to content

16fc5726 breaks curl SSL connections

Host environment

  • Operating system: Linux/Debian
  • OS/kernel version: Linux debian 6.1.0-1-arm64 #1 SMP Debian 6.1.4-1 (2023-01-07) aarch64 GNU/Linux
  • Architecture: ARM
  • QEMU flavor: ./qemu-x86_64
  • QEMU version: 16fc5726
  • QEMU command line:
    ./qemu-x86_64 /path/to/curl-amd64 https://news.bbc.co.uk

Emulated/Virtualized environment

  • Operating system: n/a
  • OS/kernel version: n/a
  • Architecture: n/a

Description of problem

./qemu-x86_64 /path/to/curl-amd64 https://news.bbc.co.uk should work, just as ./qemu-aarch64 /path/to/curl-aarch64 https://news.bbc.co.uk does. However, commit 16fc5726 broke this (determined via git bisect).

Steps to reproduce

  1. Checkout and build qemu commit 16fc5726
  2. On an aarch64 host system, download the amd64 build of curl from https://github.com/moparisthebest/static-curl/releases/tag/v7.87.0
  3. Run ./qemu-x86_64 /path/to/curl-amd64 https://news.bbc.co.uk
  4. Observe the following error message:
curl: (35) error:1416D07B:SSL routines:tls_process_key_exchange:bad signature

Note that the aarch64 equivalent works just fine. As does the previous commit using amd64.

Also note, this bug is also present at current tip (13356edb).

Additional information

n/a

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information