]> code.delx.au - pulseaudio/blobdiff - src/daemon/caps.c
Add support for FreeBSD <sys/capability.h>
[pulseaudio] / src / daemon / caps.c
index 2251cb3738367d0855f9df8c339ab3c0be02bff2..68b79cebd2e53943e2ec8355f20a9130e80702f9 100644 (file)
@@ -80,12 +80,18 @@ void pa_drop_root(void) {
 
 void pa_drop_caps(void) {
 #ifdef HAVE_SYS_CAPABILITY_H
+#ifdef __linux
     cap_t caps;
     pa_assert_se(caps = cap_init());
     pa_assert_se(cap_clear(caps) == 0);
     pa_assert_se(cap_set_proc(caps) == 0);
     pa_assert_se(cap_free(caps) == 0);
+#elif __FreeBSD__
+    pa_assert_se (cap_enter () == 0);
 #else
+#error Don't know how to do capabilities on your system.  Please send a patch.
+#endif /* __linux */
+#else /* HAVE_SYS_CAPABILITY_H */
     pa_log_warn("Normally all extra capabilities would be dropped now, but "
                 "that's impossible because this Pulseaudio was built without "
                 "libcap support.");