chown() and chmod() /tmp/.esd/ before checking if everything is ok with it

git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@770 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
Lennart Poettering 2006-04-22 14:31:47 +00:00
parent a7c5ed1994
commit 0cc2e04157

View file

@ -140,13 +140,16 @@ int pa_make_secure_dir(const char* dir) {
if (errno != EEXIST)
return -1;
chown(dir, getuid(), getgid());
chmod(dir, 0700);
#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 != getuid()) || ((st.st_mode & 0777) != 0700))
goto fail;