summaryrefslogtreecommitdiffstats
path: root/src/common/sysctl.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/sysctl.h')
-rw-r--r--src/common/sysctl.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/common/sysctl.h b/src/common/sysctl.h
new file mode 100644
index 0000000..1baabe6
--- /dev/null
+++ b/src/common/sysctl.h
@@ -0,0 +1,17 @@
+#pragma once
+
+#include "fastfetch.h"
+
+#include <sys/types.h>
+#include <sys/sysctl.h>
+
+#ifdef __OpenBSD__
+const char* ffSysctlGetString(int mib1, int mib2, FFstrbuf* result);
+FF_A_NODISCARD int ffSysctlGetInt(int mib1, int mib2, int defaultValue);
+FF_A_NODISCARD int64_t ffSysctlGetInt64(int mib1, int mib2, int64_t defaultValue);
+#else
+const char* ffSysctlGetString(const char* propName, FFstrbuf* result);
+FF_A_NODISCARD int ffSysctlGetInt(const char* propName, int defaultValue);
+FF_A_NODISCARD int64_t ffSysctlGetInt64(const char* propName, int64_t defaultValue);
+#endif
+FF_A_NODISCARD void* ffSysctlGetData(int* request, u_int requestLength, size_t* resultLength);