From a022958b9f14a657dbd0f78c92cca7616646f623 Mon Sep 17 00:00:00 2001 From: jz Date: Thu, 21 Mar 2024 20:39:37 +0800 Subject: [PATCH] fix url parse bugs --- client-drv/client-drv/kquery_pdb.h | 3 +++ client-drv/client-drv/main.cpp | 2 +- client/main.cpp | 2 +- client/query_pdb.h | 3 +++ server/downloader.cpp | 3 +++ 5 files changed, 11 insertions(+), 2 deletions(-) diff --git a/client-drv/client-drv/kquery_pdb.h b/client-drv/client-drv/kquery_pdb.h index 4032940..0b6dd93 100644 --- a/client-drv/client-drv/kquery_pdb.h +++ b/client-drv/client-drv/kquery_pdb.h @@ -38,6 +38,9 @@ class kqpdb { if (server_.empty()) { return; } + if (server_.back() != '/') { + server_.push_back('/'); + } kfile f(path); if (!f.valid()) { diff --git a/client-drv/client-drv/main.cpp b/client-drv/client-drv/main.cpp index 404bbc3..88e3820 100644 --- a/client-drv/client-drv/main.cpp +++ b/client-drv/client-drv/main.cpp @@ -15,7 +15,7 @@ NTSTATUS DriverMain(PDRIVER_OBJECT pDriverObj, PUNICODE_STRING pRegistryString) pDriverObj->DriverUnload = DriverUnload; try { - kqpdb::set_default_server("http://39.105.177.215:9025/"); + kqpdb::set_default_server("http://www.zzzou.xyz:9025"); kqpdb pdb("\\SystemRoot\\System32\\ntoskrnl.exe"); //////////////////////////////////////////////////////////////////////// diff --git a/client/main.cpp b/client/main.cpp index 0c83fe7..32d825f 100644 --- a/client/main.cpp +++ b/client/main.cpp @@ -2,7 +2,7 @@ #include "query_pdb.h" int main() { - qpdb::set_default_server("http://localhost:8080"); + qpdb::set_default_server("http://www.zzzou.xyz:9025"); try { qpdb pdb(R"(C:\Windows\System32\ntoskrnl.exe)"); diff --git a/client/query_pdb.h b/client/query_pdb.h index 14e2ed9..5cf5a7e 100644 --- a/client/query_pdb.h +++ b/client/query_pdb.h @@ -36,6 +36,9 @@ class qpdb { if (server_.empty()) { return; } + if (server_.back() == '/') { + server_.pop_back(); + } std::ifstream f(path, std::ios::binary); if (!f.is_open()) { diff --git a/server/downloader.cpp b/server/downloader.cpp index e7fb43c..ee1ca18 100644 --- a/server/downloader.cpp +++ b/server/downloader.cpp @@ -16,6 +16,9 @@ downloader::downloader(std::string path, std::string server) spdlog::error("invalid downloader, path: {}, server: {}", path_, server_); return; } + if (server_.back() != '/') { + server_.push_back('/'); + } server_split_ = split_server_name(); if (server_split_.first.empty()) {