From f176c0a8f03c7054336f53ffebe86eb9a23c4c3b Mon Sep 17 00:00:00 2001 From: taynpg Date: Tue, 8 Apr 2025 22:09:03 +0800 Subject: [PATCH] =?UTF-8?q?bug=EF=BC=9A=E7=9B=AE=E5=89=8D1.4.2=E7=9A=84Rel?= =?UTF-8?q?ease=E7=89=88=E6=9C=AC=E6=9C=89=E9=97=AE=E9=A2=98=EF=BC=8C?= =?UTF-8?q?=E6=9A=82=E6=9C=AA=E6=89=BE=E5=88=B0=E9=97=AE=E9=A2=98=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 2 +- server/server.cpp | 3 ++- test/main.cxx | 5 +++++ tinyaes/CMakeLists.txt | 4 ++++ util/util.cpp | 12 ++++++------ 5 files changed, 18 insertions(+), 8 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index e02710f..09de9e9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -21,7 +21,7 @@ ], "visualizerFile": "${workspaceRoot}/.vscode/qt5.natvis", "args": [ - "-u", "0" + //"-u", "0" ] }, "cmake.environment": { diff --git a/server/server.cpp b/server/server.cpp index ab58001..d2c35b8 100644 --- a/server/server.cpp +++ b/server/server.cpp @@ -135,8 +135,9 @@ void CTcpServer::trans_data(CFrameBuffer* buf) switch (buf->type_) { case TYPE_GET_LIST: { TLOGI("[{}] GetList.", buf->fid_); - CMessageInfo msg_info(buf->fid_); + CMessageInfo msg_info(server_ip_); get_client_list(msg_info); + buf->fid_ = server_ip_; serialize(msg_info, &buf->data_, buf->len_); if (fcli && !send_frame(fcli->socket_, buf)) { TLOGE("GetList send failed."); diff --git a/test/main.cxx b/test/main.cxx index 2a76367..64bcccc 100644 --- a/test/main.cxx +++ b/test/main.cxx @@ -9,13 +9,18 @@ int main() hash(key.c_str(), ik); char* msg = new char[256]{}; + memset(msg, 0, 256); auto len = std::snprintf(msg + 12, 256, "%s", "hello world"); std::cout << encrypt(ik, (uint8_t*)msg, len + 12) << std::endl; + std::cout << msg + 12 << std::endl; + uint8_t ik2[32]{}; hash(key.c_str(), ik2); std::cout << decrypt(ik2, (uint8_t*)msg, len + 12) << std::endl; + std::cout << msg + 12 << std::endl; + return 0; } \ No newline at end of file diff --git a/tinyaes/CMakeLists.txt b/tinyaes/CMakeLists.txt index 41747cd..ed6549e 100644 --- a/tinyaes/CMakeLists.txt +++ b/tinyaes/CMakeLists.txt @@ -1,5 +1,9 @@ cmake_minimum_required(VERSION 3.16) project(tinyaes LANGUAGES C) +set(CMAKE_C_STANDARD 11) +set(CMAKE_C_STANDARD_REQUIRED ON) +set(CMAKE_C_EXTENSIONS OFF) # 禁用编译器扩展(保持标准) + add_library(tinyaes STATIC aes.h aes.c aes.hpp) target_include_directories(tinyaes PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) \ No newline at end of file diff --git a/util/util.cpp b/util/util.cpp index 84715e5..d3268cb 100644 --- a/util/util.cpp +++ b/util/util.cpp @@ -142,7 +142,7 @@ void serialize(CMessageInfo& msg_info, char** out_buf, int& len) // 计算总长度 len = sizeof(int) * 4 + info.id.size() + info.uuid.size() + info.str.size() + info.data.size() + kz; - *out_buf = new char[len]; // 分配内存(调用方负责释放) + *out_buf = new char[len]{}; // 分配内存(调用方负责释放) char* ptr = *out_buf + kz; @@ -201,7 +201,7 @@ bool deserialize(char* data, int len, CMessageInfo& msg_info) return false; } - int id_size; + int id_size{}; memcpy(&id_size, ptr, sizeof(int)); ptr += sizeof(int); remaining -= sizeof(int); @@ -218,7 +218,7 @@ bool deserialize(char* data, int len, CMessageInfo& msg_info) return false; } - int uuid_size; + int uuid_size{}; memcpy(&uuid_size, ptr, sizeof(int)); ptr += sizeof(int); remaining -= sizeof(int); @@ -235,7 +235,7 @@ bool deserialize(char* data, int len, CMessageInfo& msg_info) return false; } - int str_size; + int str_size{}; memcpy(&str_size, ptr, sizeof(int)); ptr += sizeof(int); remaining -= sizeof(int); @@ -251,7 +251,7 @@ bool deserialize(char* data, int len, CMessageInfo& msg_info) if (remaining < static_cast(sizeof(int))) { return false; } - int o_size; + int o_size{}; memcpy(&o_size, ptr, sizeof(int)); ptr += sizeof(int); remaining -= sizeof(int); @@ -299,7 +299,7 @@ void rdm(uint8_t* o, size_t size) { std::random_device rd; std::uniform_int_distribution dist(0, 255); - std::generate(o, o + size, [&]() { return dist(rd); }); + std::generate(o, o + size, [&]() { return static_cast(dist(rd)); }); } bool encrypt(const uint8_t* k, uint8_t* m, size_t len)