diff options
author | Iru Cai <mytbk920423@gmail.com> | 2018-05-10 12:52:54 +0800 |
---|---|---|
committer | Iru Cai <mytbk920423@gmail.com> | 2018-05-10 14:16:42 +0800 |
commit | 5932fab57b9372a0db94880bfa52cf8b22a40698 (patch) | |
tree | 70986ad2cd26b70a6ad1898b5ac2abb1c53681f2 /src/protocol/fqterm_ssh_socket.cpp | |
parent | 3df72e27e1b00aadaa91ce8e5af1f34d9c5a82b6 (diff) | |
download | fqterm-5932fab57b9372a0db94880bfa52cf8b22a40698.tar.xz |
Use C SSH buffer for socket_buffer, restruct parseData
Diffstat (limited to 'src/protocol/fqterm_ssh_socket.cpp')
-rw-r--r-- | src/protocol/fqterm_ssh_socket.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/protocol/fqterm_ssh_socket.cpp b/src/protocol/fqterm_ssh_socket.cpp index ea0f774..2755609 100644 --- a/src/protocol/fqterm_ssh_socket.cpp +++ b/src/protocol/fqterm_ssh_socket.cpp @@ -48,7 +48,7 @@ FQTermSSHSocket::FQTermSSHSocket(int col, int row, const QString& termtype, cons input_buffer_ = NULL; output_buffer_ = NULL; - socket_buffer_ = NULL; + buffer_init(&socket_buffer); packet_receiver_ = NULL; packet_sender_ = NULL; key_exchanger_ = NULL; @@ -72,7 +72,7 @@ FQTermSSHSocket::~FQTermSSHSocket() { delete private_socket_; delete input_buffer_; delete output_buffer_; - delete socket_buffer_; + buffer_deinit(&socket_buffer); delete packet_receiver_; delete packet_sender_; delete key_exchanger_; @@ -87,7 +87,7 @@ void FQTermSSHSocket::init(int ssh_version) { delete input_buffer_; delete output_buffer_; - delete socket_buffer_; + buffer_clear(&socket_buffer); delete packet_receiver_; delete packet_sender_; delete key_exchanger_; @@ -100,7 +100,6 @@ void FQTermSSHSocket::init(int ssh_version) { if (ssh_version == 1) { input_buffer_ = new FQTermSSHBuffer(1024); output_buffer_ = new FQTermSSHBuffer(1024); - socket_buffer_ = new FQTermSSHBuffer(1024); packet_receiver_ = new FQTermSSH1PacketReceiver; packet_sender_ = new FQTermSSH1PacketSender; key_exchanger_ = new FQTermSSH1Kex(SSH_V1_C, server_name_.toLatin1().constData()); @@ -130,7 +129,6 @@ void FQTermSSHSocket::init(int ssh_version) { } else { input_buffer_ = new FQTermSSHBuffer(1024); output_buffer_ = new FQTermSSHBuffer(1024); - socket_buffer_ = new FQTermSSHBuffer(1024); packet_receiver_ = new FQTermSSH2PacketReceiver; packet_sender_ = new FQTermSSH2PacketSender; key_exchanger_ = new FQTermSSH2Kex(SSH_V2_C, server_name_.toLatin1().constData()); @@ -249,8 +247,8 @@ void FQTermSSHSocket::parsePacket() { size = private_socket_->bytesAvailable(); data = private_socket_->readBlock(size); - socket_buffer_->putRawData(data.data(), size); - packet_receiver_->parseData(socket_buffer_); + buffer_append(&socket_buffer, (const uint8_t*)data.data(), size); + packet_receiver_->parseData(&socket_buffer); } int FQTermSSHSocket::chooseVersion(const QString &ver) { |