[pulseaudio-tickets] [PulseAudio] #539: pulseaudio doesn't work on ntfs $HOME
PulseAudio
trac-noreply at tango.0pointer.de
Tue Apr 14 04:29:53 PDT 2009
#539: pulseaudio doesn't work on ntfs $HOME
------------------------+---------------------------------------------------
Reporter: joshsmith | Owner: lennart
Type: defect | Status: closed
Priority: normal | Milestone:
Component: daemon | Severity: normal
Resolution: wontfix | Keywords:
------------------------+---------------------------------------------------
Comment(by joshsmith):
further if the .pulse folder is already a symlink to somewhere with
correct permissions, pulseaudio still fails:
quote:
# ls -ld .pulse ../mario-sync/.pulse/
lrwxrwxrwx 1 mario mario 20 2008-10-10 16:53 .pulse -> ../mario-
sync/.pulse
drwx------ 2 mario mario 4096 2008-10-10 16:53 /home/mario-sync/.pulse
the problem lies in pulsecore/core-util.c, function pa_make_secure_dir
line 206 and following:
#ifdef HAVE_LSTAT
if (lstat(dir, &st) < 0)
#else
if (stat(dir, &st) < 0)
#endif
goto fail;
#ifndef OS_IS_WIN32
if (!S_ISDIR(st.st_mode) ||
(st.st_uid != uid) ||
(st.st_gid != gid) ||
((st.st_mode & 0777) != m)) {
errno = EACCES;
goto fail;
}
#else
pa_log_warn("Secure directory creation not supported on Win32.");
#endif
Since we are compiling for linux, 'lstat' is available. But pulseaudio
should have used 'stat' instead, because in contrast to 'stat', 'lstat'
returns the symlink's permissions (lrwxrwxrwx), not those of the target
directory (drwx------).
--
Ticket URL: <http://pulseaudio.org/ticket/539#comment:4>
PulseAudio <http://pulseaudio.org/>
The PulseAudio Sound Server
More information about the pulseaudio-bugs
mailing list