问题标签 [libssh]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2059 浏览

c++ - libssh 的静态库导致 vc10 中出现未解析的符号

我在 Visual Studio 10 中有一个 C++ dll 项目,我正在尝试使用 libssh。我想静态链接 libssh 功能。当我使用非静态库并在运行时包含 dll 时,代码会按预期编译和执行。但是,如果我更改为静态库,那么我将无法编译并获取我尝试使用的 libssh 函数的链接器错误,例如:

0 投票
2 回答
4651 浏览

php - ssh2.so 无法在 CentOS 5 上加载

我一直在尝试将 php 的 SSH2 库安装到运行 CentOS 5 和 PHP 5.1.6 的 Web 服务器上,并且能够成功安装所有依赖项,但是在重新启动 Web 服务器后出现以下错误:

PHP 警告:PHP 启动:无法加载动态库 '/usr/lib64/php/modules/ssh2.so' - libssh2.so.1:无法打开共享对象文件:第 0 行的未知中没有此类文件或目录

有没有人遇到过这个?ssh2.so 文件存在于 '/usr/lib64/php/modules/ssh2.so' 并具有与所有其他扩展 (-rwxr-xr-x) 相同的文件权限。

谢谢

0 投票
1 回答
372 浏览

c++ - 如何从 QThread::run() 获取用户反馈,例如 QMessageBox?

我知道在单独的线程中运行任何类型的 GUI 小部件都是不好的。对于消息,这可以通过向主线程发出信号来克服。但是如果线程需要用户输入,如何将答案返回给线程,以及该线程如何等待该答案?

我的特殊情况是一个使用来自 libssh 的 sftp 的应用程序。在连接和认证期间,用户可能需要回答一个或多个问题。但出于性能原因,所有 SSH/SFTP 的东西都必须在单独的线程中运行。

0 投票
2 回答
1110 浏览

c - libssh2 会话清理没有阻塞?

我的应用程序使用 libssh2 通过 SSH 进行通信,并且通常工作正常。我遇到的一个问题是远程主机意外死机——在这种情况下,远程主机是一个嵌入式设备,随时可能断电,所以这种情况并不少见。

发生这种情况时,我的应用程序检测到远程计算机已停止响应 ping,并像这样断开 SSH 连接的本地端:

非常简单,但问题是 libssh2_channel_free() 调用可能会阻塞很长时间,以等待远程端响应“我现在要走了”消息,因为它已关闭电源,所以它永远不会这样做......但与此同时,我的应用程序被冻结(在清理例程中被阻止),这不好。

有什么办法(除了破解 libssh2)可以避免这种情况吗?我只想拆除本地 SSH 数据结构,并且在拆除过程中从不阻塞。(我想我可以简单地泄漏 SSH 会话内存,或者将其委托给不同的线程,但这些看起来像丑陋的黑客而不是正确的解决方案)

0 投票
2 回答
2862 浏览

c++ - 带有 libssh 的自定义命令

我正在使用 SSH 与 condor 服务器进行通信,并且需要调用命令以进行自定义控制(即condor_submitcondor_makecondor_q等)。在我的 Xcode 项目中下载并成功集成了 libSSH(是的,我使用的是 Mac OS),我发现提供的功能不支持自定义命令。教程说明这将在主机上执行命令:

资源

然而,当我"ls -l"用 let's say替换时"condor_q",命令似乎没有执行。我设法通过使用这样的交互式 shell 会话来解决这个问题:

所以我的问题是,有没有一种更简单的方法可以通过 SSH 发送自定义命令,而不必“假发送”命令?

谢谢

最大限度

0 投票
3 回答
18417 浏览

c++ - 如何使用 libssh 和 SFTP 在 C/C++ 中复制文件

我想将文件从客户端复制到远程服务器,但我不明白如何使用 libssh 库 SFTP API 来执行此操作。

情况是:SSH会话打开了,SFTP会话也打开了,我可以用libssh的集成功能创建一个文件并从客户端写入到服务器。

我没有找到一种简单的方法来使用像sftp_transfer(sourceFile(like c:\my document\hello world.txt),RemoteFile(/home/user/hello world.txt) 这样的简单函数将文件从客户端复制到服务器),对(读写)) ?

根据我从教程中了解到的内容,它首先在远程位置(服务器)中创建一个文件,然后使用这行代码打开这个文件:

之后在服务器上创建文件,然后用缓冲区写入这个创建的文件:

我现在的问题是,如果我有一个文件,例如一个 .doc 文件,并且我想将该文件从远程服务器传输/上传c:\mydocument\document.doc到远程服务器/home/user/document.doc,我该如何使用这种方法呢?

如何将此文件放入函数中以像示例函数中的 helloworldsftp_write()一样发送它?

我可能在编程方面不够好,无法理解,但我真的试图理解它并且我坚持下去。

在此先感谢您的帮助

请参阅下面我用来测试的代码示例:

0 投票
0 回答
882 浏览

c - 对“ssh_new”的未定义引用

可能重复:
针对 glib 编译时出现 Noobish、链接器错误……?

我有以下 Makefile:

sshlib.h 包括 libssh/libssh.h,sshlib.cpp 包括 sshlib.h。当我得到:

我还仔细检查了 libssh.a 的位置:

我也试过-llibsshand -llibssh.a。似乎这个人也有一个非常相似的未回答问题。

0 投票
2 回答
360 浏览

x11 - Libssh、X11 转发

我正在尝试使用 libssh 进行用户 X11 转发。因为我还没有找到这样做的好例子,任何人都可以给我一些例子,如何将 X11 与 libssh 一起使用?

谢谢!

0 投票
1 回答
871 浏览

c++ - VS2008 中的 Libssh 服务器身份验证不顺利

我正在使用 libssh 库来创建与在远程服务器上创建的 ssh 服务器的连接。连接一切顺利,直到代码从服务器获取公钥并询问用户是否要保存它。那里的代码由于某种未知原因而崩溃。我正在使用此链接中给出的教程。

这是我到目前为止编写的代码。任何有关这方面的帮助都会很棒。

这是给出错误的输出窗口。

在此处输入图像描述

0 投票
2 回答
427 浏览

ubuntu - Memory-leaks when using libssh

I am trying to use libssh in my application, but I keep getting memory leaks. The most simplistic code, I am trying, is:

Works as expected, but Valgrind complaints about leaks (as if all memory allocated by ssh_connect was not freed):

I am using:

  • Ubuntu 12.04 x64 LTS
  • libssh version 0.5.2-1ubuntu0.12.04.1 (latest available at the moment)
  • g++/gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
  • valgrind-3.7.0

What am I doing wrong? Any help would be greatly appreciated.