0

libSSH からlibssh 0.6.1 をダウンロードしてコンパイルしました。
また、ssh.lib、ssh.dll をビジュアル C++ プロジェクトにリンクしました。
以下のコードを含むライブラリはコンパイルして正常に実行されます
が、 ssh_connect() を呼び出すと、 -1 : Timeout が返されます。
オプションを使用しました:

ssh_options_set(my_ssh_session, SSH_OPTIONS_LOG_VERBOSITY, &verbosity);

ロギングを印刷すると、次のように表示されます。

ssh_connect : ソケット接続は現在、コールバックが機能するのを待っています。
ssh_connect : ローカル ホストへの接続がタイムアウトしました。

私のラップトップにFreeSSHdサーバーをインストールし、パテを使用して接続しました。

私のコード、エラーまで:

int _tmain(int argc, _TCHAR* argv[])
{

ssh_session my_ssh_session;
int verbosity = SSH_LOG_PROTOCOL;
int port = 22;
int rc;
char *password;
// Open session and set options
my_ssh_session = ssh_new();
if (my_ssh_session == NULL)
    exit(-1);
ssh_options_set(my_ssh_session, SSH_OPTIONS_HOST, "localhost");
ssh_options_set(my_ssh_session, SSH_OPTIONS_LOG_VERBOSITY, &verbosity);
ssh_options_set(my_ssh_session, SSH_OPTIONS_PORT, &port);
// Connect to server
rc = ssh_connect(my_ssh_session);
if (rc != SSH_OK)
{
    fprintf(stderr, "Error connecting to localhost: %s\n",
        ssh_get_error(my_ssh_session));
    ssh_free(my_ssh_session);
    exit(-1);
}

このコード例は、典型的な SSH セッションの例のサイト からコピーしたものです。

4

1 に答える 1