SSL Handshake Failed on version upgrade check

What is your operating system?
Linux Mint 21, kernel 5.15.0-56-generic #62-Ubuntu SMP

**What is your Shotcut version (see Help > About Shotcut)?
22.11.25 tarball deployed in /usr/local/bin
but this has been a problem for all versions 22.x I’ve ever used.

Is it 32-bit?** No

Can you repeat the problem? If so, what are the steps?
Open Shotcut or invoke an upgrade check and see the error in the middle of the screen.
“Failed to read version.json…”

I mentioned this in previous topic but the subject is out of context so here it is on its own.

From the log…

[Info   ] <MainWindow::showStatusMessage> "Checking for upgrade..." 
[Warning] <MainWindow::onUpgradeCheckFinished> "SSL handshake failed" 

I believe it is because Shotcut (Qt actually) has no idea where my root certificates are located so “Secrets are not available”.

I am running openssl v3.0.2 and my root certificates are in /etc/ssl/certs.

From reading forums for other products that use Qt network components it is possible that the Qt binary can be built from source and compiled with a path argument for certificates

configure -openssl-linked -- -D OPENSSL_ROOT_DIR=<openssl_dir>

Not knowing what that is I am trying to find a way to make my root certificate path visible to the Qt components in Shotcut.

There is also chatter about SSL vs TLS v1.3 being an issue.

No, it is not a big deal for this error to appear every time I open Shotcut, but it’s an annoyance that ought to be squashable for the average Linux user.

BossyBear

Perhaps you already know this, but in the meantime maybe just disable the automatic upgrade check to prevent the error. I know it’s a useful feature, but you could trigger it manually until you figure this out.

Help → upgrade → “Do you want to check for upgrades in the future” → click on No!

Unless this error is preventing that popup from even appearing, in which case just ignore me!

@PoisonedSlice Yes, I’ve done that. But it reared it’s ugly head once again on upgrading to this most recent version. Like I said, it is not a big deal because I receive notifications from github when a new version is released, so it doesn’t provide any functional value to me. It’s more of a technical challenge to understand why it doesn’t work.

Here’s another. I can’t get the light to come on the trunk of my car when I open it up. The bulb is good. The switch is good. The wiring is good. It is CPU controlled also. I can ignore that annoyance too. But I shouldn’t have to.

:smile:

I reproduced it on Pop!_OS 22.04 where I have the same version of OpenSSL and same location for the certificates. I seem to recall that Qt is loading SSL libs at runtime (dlopen, not ld). However, there was a breaking change in OpenSSL major version change (hence the major version increase).

I doubt there is a solution for this version of Qt, but I could make it not show the error and simply log it. I doubt that is better because the user might believe they still have the most recent version if nothing tells them otherwise.

I think OpenSSL 3 will eventually be supported in Qt 6, which is a migration-in-progress for Shotcut. It is requiring many changes. I have something working locally on Qt 6 with a lot of bugs, but there is a problem I see with the Qt 6 rendering of certain views that results in blinking when repainting. So, not sure what will happen with that work. I just tested it against the binary of Qt 6.4 provided by Qt and I get in Shotcut log

[Warning] <> Incompatible version of OpenSSL (built with OpenSSL 1.x, runtime version is >= 3.x)