prusa3d / PrusaSlicer

G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
https://www.prusa3d.com/prusaslicer/
GNU Affero General Public License v3.0
7.73k stars 1.93k forks source link

Error when connecting to TLSv1.3-only print host #12478

Open techmccat opened 7 months ago

techmccat commented 7 months ago

Description of the bug

Connections to any type of remote host that only supports TLS 1.3 fails with the following error message
"Could not connect to Moonraker: SSL connect error: error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version [Error 35]"

This seems to be a regression.

Project file & How to reproduce

Add a physical printer Edit the physical printer Host Type: any Hostname: any machine with a web server only allowing TLSv1.3 (in my case it's nginx) API Key: any HTTPS CA File: doesn't matter, error happens before verification Test the connection image

bug-report.zip

Checklist of files included above

Version of PrusaSlicer

Version 2.7.2

Operating system

Fedora 39, org.freedesktop.Platform/x86_64/23.08 flatpak runtime

Printer model

Creality Ender 3

DerDreschner commented 2 months ago

Yeah, can confirm that issue. I dig a little bit into the source and found out that it's due to a missing TLSv1.3 support in curl and their respective tls backends (OpenSSL 1.1.0f from August 2017! under linux). They need to update curl and OpenSSL as well as switch to another backend on macOS as the currently used Secure Transport API from Apple is deprecated and will never support TLSv1.3.