Skip to content
Snippets Groups Projects
Commit cd122462 authored by Laurent Destailleur's avatar Laurent Destailleur
Browse files

Fix errors on files/dir permissions on dolfilemanager.

parent 3720c95a
No related branches found
No related tags found
No related merge requests found
......@@ -102,6 +102,8 @@ function SendError($number, $text)
{
SetXmlHeaders();
dol_syslog('Error: '.$number.' '.$text, LOG_ERR);
// Create the XML document header
echo '<?xml version="1.0" encoding="utf-8" ?>' ;
......
......@@ -266,15 +266,15 @@ function FileUpload($resourceType, $currentFolder, $sCommand, $CKEcallback = '')
break ;
}
$permissions = 0777;
$permissions = '0777';
if ( isset( $Config['ChmodOnUpload'] ) && $Config['ChmodOnUpload'] )
{
$permissions = $Config['ChmodOnUpload'] ;
$permissions = (string) $Config['ChmodOnUpload'] ;
}
$permissionsdec = octdec($permissions);
dol_syslog("commands.php permission = ".$permissions." ".$permissionsdec." ".decoct($permissionsdec));
$oldumask = umask(0);
chmod($sFilePath, $permissions);
chmod($sFilePath, $permissionsdec);
umask($oldumask);
}
......
......@@ -55,8 +55,9 @@ function DoResponse()
// Check if it is an allowed command
if (! IsAllowedCommand($sCommand))
{
SendError(1, 'The "' . $sCommand . '" command isn\'t allowed');
}
// Check if it is an allowed type.
if (! IsAllowedType($sResourceType))
SendError(1, 'Invalid type specified');
......
......@@ -181,14 +181,17 @@ function CreateServerFolder($folderPath, $lastFolder = null)
}
else
{
$permissions = 0777 ;
if ( isset( $Config['ChmodOnFolderCreate'] ) )
$permissions = '0777';
if ( isset( $Config['ChmodOnFolderCreate'] ) && $Config['ChmodOnFolderCreate'])
{
$permissions = $Config['ChmodOnFolderCreate'] ;
$permissions = (string) $Config['ChmodOnFolderCreate'];
}
$permissionsdec = octdec($permissions);
$permissionsdec |= octdec('0111'); // Set x bit required for directories
dol_syslog("io.php permission = ".$permissions." ".$permissionsdec." ".decoct($permissionsdec));
// To create the folder with 0777 permissions, we need to set umask to zero.
$oldumask = umask(0);
mkdir($folderPath, $permissions);
mkdir($folderPath, $permissionsdec);
umask($oldumask);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment