Fix errors on files/dir permissions on dolfilemanager.
This commit is contained in:
parent
3720c95a52
commit
cd122462aa
@ -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);
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user