代码拉取完成,页面将自动刷新
#include <cstdlib>
#include "Socket.h"
#include "Vtls.h"
#include "utils/Logger.h"
int main() {
char* dataIn = new char[4096];
int lenDataIn = 0;
char* dataOut = new char[4096];
int lenDataOut = 4096;
int err = 0;
Logger logger;
Vtls tls;
SelectInfo selectInfo;
Socket client(0);
logger.SetLogLevel(VTLS_LOG_VERB);
tls.SetLogger(&logger);
client.SetRemoteHost("localhost");
client.SetRemotePort(9999);
if (err = client.Connect()) return err;
while (true) {
selectInfo.Set(20);
if (err = client.Select(&selectInfo)) {
return err;
}
if (selectInfo.Timeout()) {
continue;
}
if (selectInfo.Writable()) {
lenDataIn = 0;
lenDataOut = 4096;
if (err = tls.Process(NULL, &lenDataIn, dataOut, &lenDataOut)) {
return err;
}
if (lenDataOut) {
if (err = client.Send(dataOut, &lenDataOut)) {
return err;
}
}
}
if (selectInfo.Readable()){
lenDataIn = 4096;
if (err = client.Recv(dataIn, &lenDataIn)) {
return err;
}
if (lenDataIn) {
lenDataOut = 4096;
if (err = tls.Process(dataIn, &lenDataIn, dataOut, &lenDataOut)) {
return err;
}
if (lenDataOut) {
if (err = client.Send(dataOut, &lenDataOut)) {
return err;
}
}
}
}
}
return 0;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。