summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorDimitri Staessens <dimitri@ouroboros.rocks>2026-05-26 23:18:29 +0200
committerSander Vrijders <sander@ouroboros.rocks>2026-05-27 15:55:08 +0200
commit44b7980a95107a564670393e4a2450e953223436 (patch)
treedd80b7463b8d8e72f65fe9940b3ef2d6b07070a1 /cmake
parentce340a4892b445c7e4d6a0ce3cb2c1972a862080 (diff)
downloadouroboros-44b7980a95107a564670393e4a2450e953223436.tar.gz
ouroboros-44b7980a95107a564670393e4a2450e953223436.zip
ipcpd: Fully gate fa/dt RIB ops on IPCP_FLOW_STATStestingbe
The previous shape registered no-op _rib_read / _rib_readdir / _rib_getattr handlers when IPCP_FLOW_STATS was off, and there was a bug where *buf was not set in the no-op causing free on an uninitialized pointer. IPCP_FLOW_STATS was referenced by config.h.in but the declaration was lost during the CMake refactor. Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks> Signed-off-by: Sander Vrijders <sander@ouroboros.rocks>
Diffstat (limited to 'cmake')
-rw-r--r--cmake/config/ipcp/common.cmake9
1 files changed, 7 insertions, 2 deletions
diff --git a/cmake/config/ipcp/common.cmake b/cmake/config/ipcp/common.cmake
index 0c873b76..7dbc252b 100644
--- a/cmake/config/ipcp/common.cmake
+++ b/cmake/config/ipcp/common.cmake
@@ -42,9 +42,14 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
"Slack value for high resolution timers on Linux systems.")
endif()
-# ipcpd-eth flow statistics (requires FUSE - eth.c relies on
-# IPCP_ETH_FLOW_STATS implying HAVE_FUSE for rib_reg/rib_unreg)
+# Per-flow statistics exposed via the RIB (requires FUSE).
if(HAVE_FUSE)
+ set(IPCP_FLOW_STATS TRUE CACHE BOOL
+ "Enable per-flow statistics via the RIB")
+ if(IPCP_FLOW_STATS)
+ message(STATUS "IPCP flow statistics enabled")
+ endif()
+
set(IPCP_ETH_FLOW_STATS FALSE CACHE BOOL
"Enable ipcpd-eth flow statistics via RIB")
if(IPCP_ETH_FLOW_STATS)