about summary refs log tree commit diff homepage
path: root/client.c
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2018-11-29 12:20:49 -0500
committerJune McEnroe <june@causal.agency>2018-11-29 12:20:49 -0500
commit1e69ed10cfe61c82b58b98d82ecba3c31163b44f (patch)
treeff244c0b12a75851584238e94d964a10f8c43fb2 /client.c
parentFix make clean (diff)
downloadtorus-v2.tar.gz
torus-v2.zip
Call cap_enter in client and server v2
Diffstat (limited to 'client.c')
-rw-r--r--client.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/client.c b/client.c
index 7e41b5f..904ded7 100644
--- a/client.c
+++ b/client.c
@@ -33,6 +33,10 @@
 #include <unistd.h>
 #include <wchar.h>
 
+#ifdef __FreeBSD__
+#include <sys/capsicum.h>
+#endif
+
 #include "torus.h"
 #include "help.h"
 
@@ -694,6 +698,11 @@ int main(int argc, char *argv[]) {
 	int error = connect(client, (struct sockaddr *)&addr, SUN_LEN(&addr));
 	if (error) err(EX_NOINPUT, "%s", sockPath);
 
+#ifdef __FreeBSD__
+	error = cap_enter();
+	if (error) err(EX_OSERR, "cap_enter");
+#endif
+
 	struct pollfd fds[2] = {
 		{ .fd = STDIN_FILENO, .events = POLLIN },
 		{ .fd = client, .events = POLLIN },