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