From 1309c4b3d5335bd4a70123accb801ccbc609519d Mon Sep 17 00:00:00 2001 From: Benny Baumann Date: Fri, 28 Jul 2023 13:06:14 +0200 Subject: Avoid VLA on OpenBSD when reading swap information --- openbsd/OpenBSDMachine.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'openbsd') diff --git a/openbsd/OpenBSDMachine.c b/openbsd/OpenBSDMachine.c index e3e30990..e8ff9232 100644 --- a/openbsd/OpenBSDMachine.c +++ b/openbsd/OpenBSDMachine.c @@ -163,7 +163,7 @@ static void OpenBSDMachine_scanMemoryInfo(OpenBSDMachine* this) { */ int nswap = swapctl(SWAP_NSWAP, 0, 0); if (nswap > 0) { - struct swapent swdev[nswap]; + struct swapent* swdev = xMallocArray(nswap, sizeof(struct swapent)); int rnswap = swapctl(SWAP_STATS, swdev, nswap); /* Total things up */ @@ -177,6 +177,8 @@ static void OpenBSDMachine_scanMemoryInfo(OpenBSDMachine* this) { super->totalSwap = total; super->usedSwap = used; + + free(swdev); } else { super->totalSwap = super->usedSwap = 0; } -- cgit v1.2.3