[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: C++ Wrapper, getting started
[Thread Prev] | [Thread Next]
- Subject: Re: C++ Wrapper, getting started
- From: Emre Soranlar <emresoranlar@xxxxxxxxx>
- Reply-to: libssh@xxxxxxxxxx
- Date: Fri, 15 May 2015 09:24:09 +0300
- To: libssh@xxxxxxxxxx
Hi Dave, You should set port number and verbosity for the connection. And make sure the ssh is active on the remote computer. See the my connection, ( this is C code but there is no difference in c++ ) int verbosity = SSH_LOG_PROTOCOL; int port = 22; char *password = "test"; int rc; ssh_options_set(my_ssh_session, SSH_OPTIONS_HOST, "192.168.56.102"); ssh_options_set(my_ssh_session, SSH_OPTIONS_LOG_VERBOSITY, &verbosity); ssh_options_set(my_ssh_session, SSH_OPTIONS_PORT, &port); ssh_options_set(my_ssh_session, SSH_OPTIONS_USER, "user"); rc = ssh_connect(my_ssh_session); if ( rc == SSH_OK ) { EventLogger::LogMessage(true, "Connection succeded %d", rc); } else { EventLogger::LogMessage(true, "ssh_connect failed %d", rc); return false; } rc = ssh_userauth_password(my_ssh_session, NULL, password); if ( rc == SSH_AUTH_SUCCESS ) { EventLogger::LogMessage(true, "Authenticate succeded %d", rc); } Try that way, this is working on my machine properly On 15 May 2015 at 09:11, Emre Soranlar <emresoranlar@xxxxxxxxx> wrote: > Hi Dave, > > You should set port number and verbosity for the connection. And make sure > the ssh is active on the remote computer. See the my connection, ( this is > C code but there is no difference in c++ ) > > int verbosity = SSH_LOG_PROTOCOL; > int port = 22; > char *password = "test"; > int rc; > > ssh_options_set(my_ssh_session, SSH_OPTIONS_HOST, > "192.168.56.102"); > ssh_options_set(my_ssh_session, SSH_OPTIONS_LOG_VERBOSITY, > &verbosity); > ssh_options_set(my_ssh_session, SSH_OPTIONS_PORT, &port); > ssh_options_set(my_ssh_session, SSH_OPTIONS_USER, "user"); > > rc = ssh_connect(my_ssh_session); > if ( rc == SSH_OK ) > { > EventLogger::LogMessage(true, "Connection succeded %d", rc); > } > else > { > EventLogger::LogMessage(true, "ssh_connect failed %d", rc); > return false; > } > > rc = ssh_userauth_password(my_ssh_session, NULL, password); > if ( rc == SSH_AUTH_SUCCESS ) > { > EventLogger::LogMessage(true, "Authenticate succeded %d", rc); > } > > > > Try that way, this is working on my machine properly > > On 15 May 2015 at 02:49, Dave Miller @ Harbrick <dmiller@xxxxxxxxxxxx> > wrote: > >> Greetings libssh, >> >> I'm having trouble getting started using the C++ wrapper. I'd like to >> start a session+channel to do commands on a remote machine. >> Can't get it to work. What am I missing? Also, I've shown in the >> comments where a disconnect call causes a seg fault. >> >> Thank you! >> >> Code: >> >> #include <iostream> >> using namespace std; >> >> #include <libssh/libsshpp.hpp> >> >> int main() >> { >> ssh::Session session; >> try >> { >> session.setOption( SSH_OPTIONS_USER, "user" ); >> session.setOption( SSH_OPTIONS_HOST, "192.168.200.101" ); >> session.connect(); >> session.userauthPassword( "password" ); >> >> ssh::Channel channel( session ); >> channel.openSession(); >> >> channel.requestExec( "psync-manager stop" ); >> channel.close(); >> channel.sendEof(); >> >> // This causes a seg fault in ssh_channel_free() ??? >> // session.disconnect(); >> } >> catch (ssh::SshException e) >> { >> std::cout << "Error during connection : "; >> std::cout << e.getError() << std::endl; >> } >> >> return 0; >> } >> -- >> >> Dave Miller >> >> Software Engineer | *Harbrick LLC* >> >> 926 Public Ave | Moscow, ID 83843 >> >> *c* 888.810.4284 x702 | *e* dmiller@xxxxxxxxxxxx | *w* www.harbrick.com >> <http://www.habrick.com> >> The preceding e-mail message (including any attachments) contains >> information that may be confidential, may be protected by the >> attorney-client or other applicable privileges, or may constitute >> non-public information. It is intended to be conveyed only to the >> designated recipient(s) named above. If you are not an intended recipient >> of this message, please notify the sender by replying to this message and >> then delete all copies of it from your computer system. Any use, >> dissemination, distribution, or reproduction of this message by unintended >> recipients is not authorized and may be unlawful. >> > > > > -- > EMRE SORANLAR > Ankara University > Software Engineer > Environmental Tectonics Corp/ Turkey / ODTU > -- EMRE SORANLAR Ankara University Software Engineer Environmental Tectonics Corp/ Turkey / ODTU
Re: C++ Wrapper, getting started | "Dave Miller @ Harbrick" <dmiller@xxxxxxxxxxxx> |
C++ Wrapper, getting started | "Dave Miller @ Harbrick" <dmiller@xxxxxxxxxxxx> |