- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试从远程服务器获取命令“df”的输出,稍后我将替换该输出:
#include <libssh/libssh.h>
#include <stdlib.h>
#include <stdio.h>
int main()
{
ssh_session my_ssh_session;
int rc;
ssh_channel channel;
char buffer[256];
int nbytes;
int port = 22;
my_ssh_session = ssh_new();
if (my_ssh_session == NULL)
exit(-1);
ssh_options_set(my_ssh_session, SSH_OPTIONS_HOST, "192.168.2.2");
ssh_options_set(my_ssh_session, SSH_OPTIONS_PORT, &port);
rc = ssh_connect(my_ssh_session);
if (rc != SSH_OK)
{
fprintf(stderr, "Failed %s\n",
ssh_get_error(my_ssh_session));
exit(-1);
}
channel = ssh_channel_new(my_ssh_session);
if (channel == NULL)
return SSH_ERROR;
rc = ssh_channel_open_session(channel);
if (rc != SSH_OK)
{
ssh_channel_free(channel);
return rc;
}
rc = ssh_channel_request_exec(channel, "df");
if (rc != SSH_OK)
{
ssh_channel_close(channel);
ssh_channel_free(channel);
return rc;
}
nbytes = ssh_channel_read(channel, buffer, sizeof(buffer), 0);
while (nbytes > 0)
{
if (write(1, buffer, nbytes) != nbytes)
{
ssh_channel_close(channel);
ssh_channel_free(channel);
return SSH_ERROR;
}
nbytes = ssh_channel_read(channel, buffer, sizeof(buffer), 0);
}
if (nbytes < 0)
{
ssh_channel_close(channel);
ssh_channel_free(channel);
return SSH_ERROR;
}
ssh_channel_send_eof(channel);
ssh_channel_close(channel);
ssh_channel_free(channel);
return SSH_OK;
ssh_disconnect(my_ssh_session);
ssh_free(my_ssh_session);
}
编译器没有显示任何错误,但我运行程序时没有结果,我检查了远程服务器的系统日志,发现了以下行:
sshd[12794]:dispatch_protocol_error:类型 90 seq 3
请告知可能是什么问题,
谢谢。
最佳答案
您似乎试图在没有主机验证功能(例如从/.ssh/known_hosts 检查信息)和通过公钥或密码进行用户验证的功能的情况下访问远程服务器。您应该将这两个函数放在
之后if (rc != SSH_OK)
{
fprintf(stderr, "Failed %s\n", ssh_get_error(my_ssh_session));
exit(-1);
}
浏览 libssh tutorial 中的第 1 章和第 2 章.
关于C++ 使用 libssh libary 通过 SSH 检索数据失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18040157/
我正在使用 FSCalendar在我的应用程序上制作日历的库,但如何禁用日历中的特定日期。 例如,如果我有数据 2017-04-30 2017 年 4 月 30 日无法选择。 知道怎么做吗? 最佳答案
我是 Python 新手(JS 开发人员),正在尝试运行测试套件。我的项目文件夹结构是这样的: project/ __init__.py libs/ __init__.py s
我正在尝试从远程服务器获取命令“df”的输出,稍后我将替换该输出: #include #include #include int main() { ssh_session my_ssh_
如何在 Vue 组件中使用 vendor 库(特别是我想使用 PDF.js)? (我只想为这个特定组件加载它,因为它们是相当大的文件) 我正在构建一个需要加载 pdf 的编辑器。所以我把 pdf.js
我正在尝试使用这个包裹 orderby 0.0.2 来订购我的 list 使用此命令,我可以按我想要的方式打印它: print json.dumps(sorted(dic, key=asc('BAIR
我在 stackoverflow 中遇到了许多与将库链接到 c 文件相关的问题,我遵循了如下方法 注意:我的库文件与 .c 文件位于同一位置。 如何解决这些错误? 使用带扩展名的库名称 cc cons
我使用 Android Studio,将“Android 支持库”更新到版本后连接到 Parse.com 时遇到问题。 22.以前有效的项目现在不起作用了。经过几个小时的搜索和测试,我决定仅为此打开一
我是 mpfr 的初学者,我写了这个程序来进行特定的计算并像你看到的那样得到它,但我不知道为什么会出现这个错误,这是我最重要的代码: mpfr_t myfct(int n) { /......
我尝试通过 Oracle SQL Developer 访问数据库服务器,然后发现如下显示。 我已经尝试修复其他帖子,但没有成功。 最佳答案 有两种方法可以解决此问题: 不要发出试图拉入 OCI 库的连
我正在尝试使用 2 个外部库(lwjgl.jar 和 slick-util.jar)运行我的 java 程序 编译工作正常 但是当我使用以下命令运行时: java -cp bin;.;lib/lwjg
我需要获取存储在 Library Picture 中的照片的名称。我有一个按钮来创建新的 EventHandler和一个图像控件来显示照片。照片必须在 WP 的库图片中选择,如下所示: 我使用了照片选
我们正在将 .NET Framework 应用程序 (MVC) 迁移到 .NET Core 3 应用程序 (MVC)。我们有一个场景如下: 流程 1:ControllerA 实例化 ClassX 流程
我正在尝试将我的 Angular 应用程序配置为使用 OAuth2 库( angular-oauth2-oidc )。 在文件 auth.service.ts 中,我配置了 OAuthService:
我正在尝试在 Dev-C++ (tdm-gcc 4.7.1) 中使用 regex。 我已经从 boost.org 下载了 Boost 库并解压到 C:\Program Files (x86)\Dev-
我是一名优秀的程序员,十分优秀!