Skip to content

Missing support for remote GDB via intermediate remote server #192

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
illegal-instruction opened this issue Sep 26, 2019 · 4 comments
Open

Comments

@illegal-instruction
Copy link

illegal-instruction commented Sep 26, 2019

I'm trying to use the extension to debug some C code in a remote server. That server is defined in my .ssh/config as 'gdb_server' and is accessed via an intermediate remote server:

Host gdb_server
 Hostname xxx.yyy.zz.aa
 Port 2038
 User <someuser>
 ServerAliveInterval 60
 ProxyCommand ssh <intermediate_user>@<intermediate.server.com> nc %h %p %r

If I use this configuration:

 "ssh": {
   "host": "gdb_server",
   "cwd": "<app_root_path@remote_server>",
   "keyfile": "/home/(omitted)/.ssh/id_rsa",
    "user": "<intermediate_user>",
    "port": 2038,
    "bootstrap": "<some scripts>"
}

I get the following error:

Could not run gdb over ssh!
Error: getaddrinfo ENOTFOUND  gdb_server:2038

Using the 'port' to '22' returns the same error.

Couldn't find any other parameter to configure this kind of 'intermediate-ssh' setup. In other cases, I've been able to use the extension to debug in a server accessible from my computer without any issue.

I guess the idea should be (I have no idea how the extension works internally so I don't know how hard it is), to enable the support of 'ssh/config named configurations', like gdb_server in this example.

Thanks for your time,
C

P.D: In any case this extension is awesome!

@WebFreak001
Copy link
Owner

the extension is using the https://www.npmjs.com/package/ssh2 library which is a pure JS implementation of SSH and doens't support loading that ssh/config file. So instead it would be necessary to load and parse the ssh config for the current user with all ssh options which we want to support considered.

@mohamedchebbii
Copy link

@WebFreak001 : Can you please add the socksv5 to support remote GDB via intermediate remote server ?
as described here : https://www.npmjs.com/package/ssh2#dynamic-11-port-forwarding-using-a-socksv5-proxy-using-socksv5-

@mohamedchebbii
Copy link

I changed the code, instead of using ssh, I used ssh-promise, and It's working

@illegal-instruction
Copy link
Author

illegal-instruction commented Dec 9, 2019

@mohamedchebbii That is great. It would be possible for you to share your modified code or create a pull request that could help @WebFreak001 bringing this, if possible, into the extension?

Thanks both of you for your work!

mohamedchebbii pushed a commit to mohamedchebbii/code-debug that referenced this issue May 8, 2020
mohamedchebbii pushed a commit to mohamedchebbii/code-debug that referenced this issue May 8, 2020
mohamedchebbii pushed a commit to mohamedchebbii/code-debug that referenced this issue May 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants