From 5883bf359cbcbd5c7027aa582e0b7b91cbc74c9c Mon Sep 17 00:00:00 2001 From: Carter Li Date: Wed, 4 Jun 2025 19:05:02 +0800 Subject: [PATCH] Swap (OpenBSD): detect detailed info --- src/detection/swap/swap_obsd.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/detection/swap/swap_obsd.c b/src/detection/swap/swap_obsd.c index 414971d39..fff233ae3 100644 --- a/src/detection/swap/swap_obsd.c +++ b/src/detection/swap/swap_obsd.c @@ -1,4 +1,5 @@ #include "swap.h" +#include "util/FFlist.h" #include "util/mallocHelper.h" #include @@ -6,7 +7,7 @@ #include #include -const char* ffDetectSwap(FFSwapResult* swap) +const char* ffDetectSwap(FFlist* result) { int nswap = swapctl(SWAP_NSWAP, 0, 0); if (nswap < 0) return "swapctl(SWAP_NSWAP) failed"; @@ -17,17 +18,16 @@ const char* ffDetectSwap(FFSwapResult* swap) if (swapctl(SWAP_STATS, swdev, nswap) < 0) return "swapctl(SWAP_STATS) failed"; - uint64_t swapTotal = 0, swapUsed = 0; for (int i = 0; i < nswap; i++) { if (swdev[i].se_flags & SWF_ENABLE) { - swapUsed += (uint64_t) swdev[i].se_inuse; - swapTotal += (uint64_t) swdev[i].se_nblks; + FFSwapResult* swap = ffListAdd(result); + ffStrbufInitS(&swap->name, swdev[i].se_path); + swap->bytesUsed = (uint64_t) swdev[i].se_inuse * DEV_BSIZE; + swap->bytesTotal = (uint64_t) swdev[i].se_nblks * DEV_BSIZE; } } - swap->bytesUsed = swapUsed * DEV_BSIZE; - swap->bytesTotal = swapTotal * DEV_BSIZE; return NULL; }