Hi,

I did some refactoring in the sshmasterconnection.cpp file. I think it can definitely use some clean-up and further splitting functions and even into multiple files eventually.
I cloned the master branch of code.x2go.org/x2goclient repo.

The changes I applied are in the attachment of this mail (a git patch file). I think closing previous sessions and connection solved my strange SSH connection is resulting into Socket error: No such file or directory".
Although X2Go client is calling libssh calls (libssh version currently in use runtime on my host is: 0.7.0).
For some reason this vague error message popped-up by libssh, properly a result of previous session being created and not correctly closed. And/or not closed in the right order (/missing API calls), like a good example:

ssh_channel_send_eof(channel);
ssh_channel_close(channel);
ssh_channel_free(channel);

And I created yet again a new YT video showing my result:
https://youtu.be/vmASLJq0CKM
(including some brief explanation what I did so far, I also ran an formatted on the code, because it was very very hard to read with all the wrong indents)

I also made another video showing yet another bug I found regarding the SSH tunneling (during some heavy testing), the only solution was to restart the whole docker image:
https://youtu.be/xEpIyo84fWc (I think this issue is unrelated, but maybe wise to take serious as well)

Again see attachment for the patch (branched from master).

Regards,
Melroy van den Berg