From fc915165270ed26d0cdb48b329b6ffbf474c92a4 Mon Sep 17 00:00:00 2001 From: Tamas K Lengyel Date: Fri, 26 Apr 2024 23:47:54 -0400 Subject: [PATCH] Add -Wextra-semi to debug builds (#1789) * Add -Wextra-semi to debug builds * Add missing fix --- meson.build | 1 + src/drakvuf.cpp | 2 +- src/libdrakvuf/drakvuf.c | 2 +- src/libdrakvuf/linux-processes.c | 2 +- src/libdrakvuf/win-processes.c | 4 ++-- src/libhook/hooks/base.cpp | 2 +- src/libhook/hooks/base.hpp | 2 +- src/libhook/hooks/catchall.hpp | 2 +- src/libhook/hooks/cpuid.hpp | 2 +- src/libhook/hooks/cr3.hpp | 2 +- src/libhook/hooks/manual.hpp | 2 +- src/libhook/hooks/memaccess.hpp | 2 +- src/plugins/apimon/apimon.cpp | 2 +- src/plugins/callbackmon/private.h | 2 +- src/plugins/etwmon/private.h | 2 +- src/plugins/fileextractor/private.h | 2 +- src/plugins/helpers/hooks.h | 2 +- src/plugins/hidsim/hidsim.cpp | 2 +- src/plugins/linkmon/private.h | 4 ++-- src/plugins/plugins_ex.cpp | 4 ++-- src/plugins/plugins_ex.h | 6 +++--- src/plugins/ptracemon/private.h | 4 ++-- src/plugins/rootkitmon/private.h | 2 +- src/plugins/syscalls/private_2.h | 4 ++-- src/plugins/wmimon/wmimon.h | 2 +- 25 files changed, 32 insertions(+), 31 deletions(-) diff --git a/meson.build b/meson.build index 54b6da88a..cd2d7aed9 100644 --- a/meson.build +++ b/meson.build @@ -72,6 +72,7 @@ if get_option('buildtype').startswith('debug') add_project_arguments('-Wfloat-equal', language : ['cpp']) add_project_arguments('-Wundef', language : ['cpp']) add_project_arguments('-Wvla', language : ['cpp']) + add_project_arguments('-Wextra-semi', language : ['c', 'cpp']) add_project_arguments('-ftrivial-auto-var-init=pattern', language: ['c', 'cpp']) elif get_option('hardening') # Runtime hardening for release builds diff --git a/src/drakvuf.cpp b/src/drakvuf.cpp index a7e1cb6a1..0834bfd89 100644 --- a/src/drakvuf.cpp +++ b/src/drakvuf.cpp @@ -428,7 +428,7 @@ static bool is_terminated(drakvuf_t drakvuf, void* data) return drakvuf_is_interrupted(drakvuf) || (info->proc->find(info->pid) != info->proc->end() && info->proc->at(info->pid)); -}; +} void drakvuf_c::terminate(vmi_pid_t injection_pid, uint32_t injection_tid, diff --git a/src/libdrakvuf/drakvuf.c b/src/libdrakvuf/drakvuf.c index d38d8028e..44127e8a2 100644 --- a/src/libdrakvuf/drakvuf.c +++ b/src/libdrakvuf/drakvuf.c @@ -528,7 +528,7 @@ static bool inject_trap_io(drakvuf_t drakvuf, drakvuf_trap_t* trap) drakvuf->io = g_slist_prepend(drakvuf->io, trap); return 1; -}; +} static bool _drakvuf_add_trap(drakvuf_t drakvuf, drakvuf_trap_t* trap) { diff --git a/src/libdrakvuf/linux-processes.c b/src/libdrakvuf/linux-processes.c index 175ccc226..b11c4803e 100644 --- a/src/libdrakvuf/linux-processes.c +++ b/src/libdrakvuf/linux-processes.c @@ -622,7 +622,7 @@ int64_t linux_get_process_userid(drakvuf_t drakvuf, addr_t process_base) return -1; return uid; -}; +} int64_t linux_get_current_process_userid(drakvuf_t drakvuf, drakvuf_trap_info_t* info) { diff --git a/src/libdrakvuf/win-processes.c b/src/libdrakvuf/win-processes.c index f299728da..66e4c4840 100644 --- a/src/libdrakvuf/win-processes.c +++ b/src/libdrakvuf/win-processes.c @@ -529,7 +529,7 @@ int64_t win_get_process_userid(drakvuf_t drakvuf, addr_t eprocess_base) PRINT_DEBUG("The process at 0x%" PRIx64 " has a userid larger then INT_MAX!\n", eprocess_base); return (int64_t)userid; -}; +} unicode_string_t* win_get_process_csdversion(drakvuf_t drakvuf, addr_t eprocess_base) { @@ -554,7 +554,7 @@ unicode_string_t* win_get_process_csdversion(drakvuf_t drakvuf, addr_t eprocess_ return NULL; return drakvuf_read_unicode_va(drakvuf, csdversion_va, 0); -}; +} int64_t win_get_current_process_userid(drakvuf_t drakvuf, drakvuf_trap_info_t* info) { diff --git a/src/libhook/hooks/base.cpp b/src/libhook/hooks/base.cpp index 9e293c9c6..2d4b7515c 100644 --- a/src/libhook/hooks/base.cpp +++ b/src/libhook/hooks/base.cpp @@ -108,7 +108,7 @@ namespace libhook BaseHook::BaseHook(drakvuf_t drakvuf) : drakvuf_(drakvuf) -{}; +{} BaseHook::BaseHook(BaseHook&& rhs) noexcept { diff --git a/src/libhook/hooks/base.hpp b/src/libhook/hooks/base.hpp index 146ecf6a0..b7fba45ce 100644 --- a/src/libhook/hooks/base.hpp +++ b/src/libhook/hooks/base.hpp @@ -163,4 +163,4 @@ class BaseHook drakvuf_t drakvuf_ = nullptr; }; -}; // namespace libhook +} // namespace libhook diff --git a/src/libhook/hooks/catchall.hpp b/src/libhook/hooks/catchall.hpp index 9825e0152..701e2b7cc 100644 --- a/src/libhook/hooks/catchall.hpp +++ b/src/libhook/hooks/catchall.hpp @@ -201,4 +201,4 @@ auto CatchAllHook::create(drakvuf_t drakvuf, cb_wrapper_t cb, int ttl) return hook; } -}; // namespace libhook +} // namespace libhook diff --git a/src/libhook/hooks/cpuid.hpp b/src/libhook/hooks/cpuid.hpp index bcb8d1d12..287db62aa 100644 --- a/src/libhook/hooks/cpuid.hpp +++ b/src/libhook/hooks/cpuid.hpp @@ -201,4 +201,4 @@ auto CpuidHook::create(drakvuf_t drakvuf, cb_wrapper_t cb, int ttl) return hook; } -}; // namespace libhook +} // namespace libhook diff --git a/src/libhook/hooks/cr3.hpp b/src/libhook/hooks/cr3.hpp index 44085a767..8693f32cf 100644 --- a/src/libhook/hooks/cr3.hpp +++ b/src/libhook/hooks/cr3.hpp @@ -202,4 +202,4 @@ auto Cr3Hook::create(drakvuf_t drakvuf, cb_wrapper_t cb, int ttl) return hook; } -}; // namespace libhook +} // namespace libhook diff --git a/src/libhook/hooks/manual.hpp b/src/libhook/hooks/manual.hpp index 113ee6215..646a6c958 100644 --- a/src/libhook/hooks/manual.hpp +++ b/src/libhook/hooks/manual.hpp @@ -171,4 +171,4 @@ class ManualHook : public BaseHook }; -}; // namespace libhook +} // namespace libhook diff --git a/src/libhook/hooks/memaccess.hpp b/src/libhook/hooks/memaccess.hpp index 73c0d2d82..518a48137 100644 --- a/src/libhook/hooks/memaccess.hpp +++ b/src/libhook/hooks/memaccess.hpp @@ -204,4 +204,4 @@ auto MemAccessHook::create(drakvuf_t drakvuf, cb_wrapper_t cb, addr_t gfn, memac return hook; } -}; // namespace libhook +} // namespace libhook diff --git a/src/plugins/apimon/apimon.cpp b/src/plugins/apimon/apimon.cpp index cd26aa527..57742e430 100644 --- a/src/plugins/apimon/apimon.cpp +++ b/src/plugins/apimon/apimon.cpp @@ -121,7 +121,7 @@ struct ApimonReturnHookData : PluginResult hook_target_entry_t* target = nullptr; }; -}; +} static uint64_t make_hook_id(const drakvuf_trap_info_t* info) { diff --git a/src/plugins/callbackmon/private.h b/src/plugins/callbackmon/private.h index 9fdf99ab8..c1caf0b00 100644 --- a/src/plugins/callbackmon/private.h +++ b/src/plugins/callbackmon/private.h @@ -375,4 +375,4 @@ static const char* offset_miniport_names[__OFFSET_MINIPORT_MAX][2] = [NDIS_MINIPORT_BLOCK_SYNCHRONOUSRETURNPACKETHANDLER] = { "_NDIS_MINIPORT_BLOCK", "SynchronousReturnPacketHandler" }, [NDIS_MINIPORT_BLOCK_TOPNDIS5PACKETINDICATEHANDLER] = { "_NDIS_MINIPORT_BLOCK", "TopNdis5PacketIndicateHandler" } }; -}; +} diff --git a/src/plugins/etwmon/private.h b/src/plugins/etwmon/private.h index 8d08c5bfd..698de296a 100644 --- a/src/plugins/etwmon/private.h +++ b/src/plugins/etwmon/private.h @@ -190,4 +190,4 @@ struct provider_t provider_t(etwmon* plugin, vmi_instance_t vmi, addr_t base); }; -}; +} diff --git a/src/plugins/fileextractor/private.h b/src/plugins/fileextractor/private.h index 0198ca162..54b0bf9de 100644 --- a/src/plugins/fileextractor/private.h +++ b/src/plugins/fileextractor/private.h @@ -501,5 +501,5 @@ struct FILE_FS_DEVICE_INFORMATION // TODO Move into "task_t" as "MAX_READ_BYTES" static const uint64_t BYTES_TO_READ = 0x10000; -}; +} #endif // FILEDELETE_PRIVATE_H diff --git a/src/plugins/helpers/hooks.h b/src/plugins/helpers/hooks.h index 440bcce07..c04f946c7 100644 --- a/src/plugins/helpers/hooks.h +++ b/src/plugins/helpers/hooks.h @@ -130,7 +130,7 @@ class PluginResult : public libhook::CallResult public: PluginResult() : libhook::CallResult() - {}; + {} class pluginex* plugin_ = nullptr; }; diff --git a/src/plugins/hidsim/hidsim.cpp b/src/plugins/hidsim/hidsim.cpp index 83ca54fb8..63cb03fde 100644 --- a/src/plugins/hidsim/hidsim.cpp +++ b/src/plugins/hidsim/hidsim.cpp @@ -209,7 +209,7 @@ hidsim::hidsim(drakvuf_t drakvuf, const hidsim_config* config) : hidsim::~hidsim() { this->stop(); -}; +} bool hidsim::stop_impl() { diff --git a/src/plugins/linkmon/private.h b/src/plugins/linkmon/private.h index fd10cbe6a..8a316e884 100644 --- a/src/plugins/linkmon/private.h +++ b/src/plugins/linkmon/private.h @@ -167,5 +167,5 @@ static const char* offset_names_2[__OFFSET_MAX][2] = [REPARSE_DATA_BUFFER_SUBSTITUTENAMELENGTH_SYMLINK] = {"_REPARSE_DATA_BUFFER::::", "SubstituteNameLength"}, [REPARSE_DATA_BUFFER_PATHBUFFER_SYMLINK] = {"_REPARSE_DATA_BUFFER::::", "PathBuffer"}, }; -}; -#endif // LINKMON_PRIVATE_H \ No newline at end of file +} +#endif // LINKMON_PRIVATE_H diff --git a/src/plugins/plugins_ex.cpp b/src/plugins/plugins_ex.cpp index ad4d02a46..1197d8e16 100644 --- a/src/plugins/plugins_ex.cpp +++ b/src/plugins/plugins_ex.cpp @@ -124,12 +124,12 @@ char ERROR_MSG_ADDING_TRAP[] = "Failed to add a trap"; pluginex::pluginex(drakvuf_t drakvuf, output_format_t output) : m_output_format(output), drakvuf(drakvuf) -{}; +{} pluginex::~pluginex() { stop(); -}; +} bool pluginex::stop_impl() { diff --git a/src/plugins/plugins_ex.h b/src/plugins/plugins_ex.h index da788fc70..6ce54ee3d 100644 --- a/src/plugins/plugins_ex.h +++ b/src/plugins/plugins_ex.h @@ -415,7 +415,7 @@ struct call_result_t {} virtual ~call_result_t() - {}; + {} void set_result_call_params(const drakvuf_trap_info_t* info) { @@ -448,12 +448,12 @@ struct plugin_data plugin_data(pluginex* plugin, call_result_t* params) : plugin(plugin), params(params) - {}; + {} virtual ~plugin_data() { delete params; - }; + } }; class pluginex : public plugin diff --git a/src/plugins/ptracemon/private.h b/src/plugins/ptracemon/private.h index e5bde0d83..e00698c5b 100644 --- a/src/plugins/ptracemon/private.h +++ b/src/plugins/ptracemon/private.h @@ -302,6 +302,6 @@ static inline const char* ptrace_request_to_str(ptrace_request_t request) } return NULL; } -}; // ptracemon_ns +} // ptracemon_ns -#endif \ No newline at end of file +#endif diff --git a/src/plugins/rootkitmon/private.h b/src/plugins/rootkitmon/private.h index cd3dde72b..864a4a68e 100644 --- a/src/plugins/rootkitmon/private.h +++ b/src/plugins/rootkitmon/private.h @@ -347,6 +347,6 @@ struct filter_cb_t return base_addr < other.base_addr; } }; -}; +} #endif diff --git a/src/plugins/syscalls/private_2.h b/src/plugins/syscalls/private_2.h index b56b93229..ff940f37b 100644 --- a/src/plugins/syscalls/private_2.h +++ b/src/plugins/syscalls/private_2.h @@ -142,11 +142,11 @@ class syscalls_base : public pluginex virtual char* win_extract_string(drakvuf_t drakvuf, drakvuf_trap_info_t* info, const syscalls_ns::arg_t& arg, addr_t val) { return NULL; - }; + } syscalls_base(drakvuf_t drakvuf, const syscalls_config* config, output_format_t output); syscalls_base(const syscalls_base&) = delete; syscalls_base& operator=(const syscalls_base&) = delete; }; -#endif \ No newline at end of file +#endif diff --git a/src/plugins/wmimon/wmimon.h b/src/plugins/wmimon/wmimon.h index 697ee1f88..db462c113 100644 --- a/src/plugins/wmimon/wmimon.h +++ b/src/plugins/wmimon/wmimon.h @@ -122,7 +122,7 @@ class wmimon: public pluginex ~wmimon() { delete[] m_offsets; - }; + } const size_t* Offsets() const {