| | |
| | | $app->log('Created Maildir '.$maildir_path.' with subfolder: '.$subfolder,LOGLEVEL_DEBUG); |
| | | |
| | | } |
| | | |
| | | //* Function to create directory paths and chown them to a user and group |
| | | function mkdirpath($path, $mode = 0755, $user = '', $group = '') { |
| | | $path_parts = explode('/',$path); |
| | | $new_path = ''; |
| | | if(is_array($path_parts)) { |
| | | foreach($path_parts as $part) { |
| | | $new_path .= '/'.$part; |
| | | if(!@is_dir($new_path)) { |
| | | mkdir($new_path); |
| | | chmod($new_path,$mode); |
| | | if($user != '') chown($new_path,$user); |
| | | if($group != '') chgrp($new_path,$group); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | //* Check if a application is installed |
| | | function is_installed($appname) { |
| | | exec('which '.escapeshellcmd($appname).' 2> /dev/null',$out,$returncode); |
| | | if(isset($out[0]) && stristr($out[0],$appname) && $returncode == 0) { |
| | | return true; |
| | | } else { |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | function web_folder_protection($document_root,$protect) { |
| | | global $app,$conf; |
| | | |
| | | //* load the server configuration options |
| | | $app->uses('getconf'); |
| | | $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); |
| | | |
| | | if($protect == true && $web_config['web_folder_protection'] == 'y') { |
| | | //* Add protection |
| | | if($document_root != '' && $document_root != '/' && strlen($document_root) > 6 && !stristr($document_root,'..')) exec('chattr +i '.escapeshellcmd($document_root)); |
| | | } else { |
| | | //* Remove protection |
| | | if($document_root != '' && $document_root != '/' && strlen($document_root) > 6 && !stristr($document_root,'..')) exec('chattr -i '.escapeshellcmd($document_root)); |
| | | } |
| | | } |
| | | |
| | | } |
| | | ?> |