daemon: Debian/kFreeBSD 9.2 fails to compile due to caps

Debian/kFreeBSD 9.2 comes with sys/capability.h but it is not usable; work around it

the patch does several things:
* it makes the comment point to the correct bugtracker issue: https://bugs.freedesktop.org/show_bug.cgi?id=72580
* it handles Debian/kFreeBSD the same way as FreeBSD
* it logs a warning that capabilities are actually NOT dropped

daemon/caps.c: In function ‘pa_drop_caps’:
daemon/caps.c:93:2: error: #error "Don't know how to do capabilities on your system.  Please send a patch."
 #error "Don't know how to do capabilities on your system.  Please send a patch."
  ^
Makefile:9575: recipe for target 'daemon/pulseaudio-caps.o' failed

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
This commit is contained in:
Peter Meerwald 2014-09-01 22:53:29 +02:00
parent 58cffdcfc8
commit c6bc835e45

View file

@ -86,9 +86,10 @@ void pa_drop_caps(void) {
pa_assert_se(cap_clear(caps) == 0); pa_assert_se(cap_clear(caps) == 0);
pa_assert_se(cap_set_proc(caps) == 0); pa_assert_se(cap_set_proc(caps) == 0);
pa_assert_se(cap_free(caps) == 0); pa_assert_se(cap_free(caps) == 0);
#elif defined(__FreeBSD__) #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
/* FreeBSD doesn't have this functionality, even though sys/capability.h is /* FreeBSD doesn't have this functionality, even though sys/capability.h is
* available. See https://bugs.freedesktop.org/show_bug.cgi?id=73967 */ * available. See https://bugs.freedesktop.org/show_bug.cgi?id=72580 */
pa_log_warn("FreeBSD cannot drop extra capabilities, implementation needed.");
#else #else
#error "Don't know how to do capabilities on your system. Please send a patch." #error "Don't know how to do capabilities on your system. Please send a patch."
#endif /* __linux__ */ #endif /* __linux__ */