windows下使用ssh_connect API的问题

发布于 2024-12-06 15:46:24 字数 712 浏览 1 评论 0原文

我在 OS X 上使用 libssh 测试了一个简单的代码,它只需 find 即可工作。 但是当我使用 vc10 在 Windows7 上移植此代码时,它无法正常工作。 ssh_connect API 会阻塞并且不再继续。

以下代码是我的测试程序的一部分。

#include <libssh/libssh.h>
...
int _tmain(..) 
{
  ssh_session session;

  session = ssh_new();
  if (session == NULL)
    exit(EXIT_FAILURE);

  ssh_options_set(session, SSH_OPTIONS_HOST, "localhost");
  int port = 1234;
  ssh_options_set(session, SSH_OPTIONS_PORT, &port); // <-block here !!!

  int rc = ssh_connect(session);
  if (rc != SSH_OK)
  {
    ...
  }
}

我从 www.libssh.org 下载了 include、lib 和 dll 文件,没有编译和链接错误。

我的代码有什么问题或者我错过了一些重要的事情吗?

I have tested a simple code using libssh on OS X and it worked simply find.
But when I port this code on Windows7 using vc10 it doesn't work correctly.
The ssh_connect API blocks and not progress any more.

The following code is part of the my test program.

#include <libssh/libssh.h>
...
int _tmain(..) 
{
  ssh_session session;

  session = ssh_new();
  if (session == NULL)
    exit(EXIT_FAILURE);

  ssh_options_set(session, SSH_OPTIONS_HOST, "localhost");
  int port = 1234;
  ssh_options_set(session, SSH_OPTIONS_PORT, &port); // <-block here !!!

  int rc = ssh_connect(session);
  if (rc != SSH_OK)
  {
    ...
  }
}

I downloaded include, lib and dll files from www.libssh.org no compile and link errors.

What's wrong with my code or do I miss something important?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

笨死的猪 2024-12-13 15:46:24

也许是因为端口错误而阻塞?默认超时时间为 30 分钟 iirc。 libssh 0.6 将具有更好的超时处理。

Maybe it blocks cause the port is wrong? The timeout is 30 min by default iirc. libssh 0.6 will have better timeout handling.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文