From 883bc202db41392700622bb2b70e79686c851005 Mon Sep 17 00:00:00 2001 From: Nikolai Lifanov Date: Tue, 5 Jul 2016 15:43:03 -0400 Subject: [PATCH] implement get_exec_path for FreeBSD --- src/shared.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/shared.c b/src/shared.c index 30f1f81..c2e7db8 100644 --- a/src/shared.c +++ b/src/shared.c @@ -4371,6 +4371,20 @@ char *get_exec_path () const int len = strlen (exec_path); + #elif __FreeBSD__ + + #include + + int mib[4]; + mib[0] = CTL_KERN; + mib[1] = KERN_PROC; + mib[2] = KERN_PROC_PATHNAME; + mib[3] = -1; + + size_t size = sizeof(exec_path); + + const int len = sysctl(mib, 4, exec_path, &size, NULL, 0); + #else #error Your Operating System is not supported or detected #endif -- 2.25.1