From 96d8a03c886e67291aff4973582c96f4ba2a4955 Mon Sep 17 00:00:00 2001 From: netblue30 Date: Fri, 8 Jul 2016 08:20:10 -0400 Subject: pulseaudio fix --- src/firejail/pulseaudio.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/firejail/pulseaudio.c b/src/firejail/pulseaudio.c index 767aaab09..908ef1d25 100644 --- a/src/firejail/pulseaudio.c +++ b/src/firejail/pulseaudio.c @@ -56,13 +56,27 @@ void pulseaudio_disable(void) { // blacklist user config directory disable_file(cfg.homedir, ".config/pulse"); + + // blacklist pulseaudio socket in XDG_RUNTIME_DIR + char *name = getenv("XDG_RUNTIME_DIR"); + if (name) + disable_file(name, "pulse/native"); + + // try the default location anyway + char *path; + if (asprintf(&path, "/run/user/%d", getuid()) == -1) + errExit("asprintf"); + disable_file(path, "pulse/native"); + free(path); + + + // blacklist any pulse* file in /tmp directory DIR *dir; if (!(dir = opendir("/tmp"))) { // sleep 2 seconds and try again sleep(2); if (!(dir = opendir("/tmp"))) { - fprintf(stderr, "Warning: cannot open /tmp directory. PulseAudio sockets are not disabled\n"); return; } } @@ -76,10 +90,6 @@ void pulseaudio_disable(void) { closedir(dir); - // blacklist XDG_RUNTIME_DIR - char *name = getenv("XDG_RUNTIME_DIR"); - if (name) - disable_file(name, "pulse/native"); } -- cgit v1.2.3-70-g09d2