当前位置: 首页 > 工具软件 > libssh2 > 使用案例 >

libssh2使用

辛弘壮
2023-12-01

在项目中,使用ssh连接远程服务过程中,由于服务端底层修改,导致ssh执行命令异常,方案采用模拟putty客户端方式抓取服务端回返的数据。

出现以下问题:

1,由于返回数据过大,因此会出现“--More--”问题,该问题,可通过模拟手动数据enter键使返回数据正常。

2,当时操作步骤1时,会出现数据格式存在问题,因此可以修改API,

#define MAX_PTY_SIZE (4096000)

  libssh2_channel_request_pty_size(this->_chan, MAX_PTY_SIZE, MAX_PTY_SIZE);

该设置可能会增加缓冲区大小(猜测)因此可解决以上问题。

 

 

#ifndef __LIB_SSH_H__
#define __LIB_SSH_H__

#include <libssh2.h>
#include <libssh2_sftp.h>
 
#ifdef WIN32 // WINDOWS
#include <windows.h>
#include <winsock2.h>
#else // UNIX
#include <sys/socket.h>
#include <netinet/in.h>
#include <unistd.h>
#include <arpa/inet.h>
#endif
 
#include <sys/types.h>
#include <fcntl.h>
#include <errno.h>
#include <stdio.h>
#include <ctype.h>
    
#include <mutex>
#include
 类似资料: