mcramer
2013-07-12 71fee55f3261dccff49097be356de32173a0de03
- Fixed: web folder protection needs to be removed on ftp-user insert and update due to directory creation

1 files modified
12 ■■■■ changed files
server/plugins-available/ftpuser_base_plugin.inc.php 12 ●●●● patch | view | raw | blame | history
server/plugins-available/ftpuser_base_plugin.inc.php
@@ -69,6 +69,8 @@
    function insert($event_name,$data) {
        global $app, $conf;
        
        $app->uses('system');
    if(!is_dir($data['new']['dir'])) {
      $app->log("FTP User directory '".$data['new']['dir']."' does not exist. Creating it now.",LOGLEVEL_DEBUG);
      
@@ -80,9 +82,11 @@
        return false;
      }
      
      $app->system->web_folder_protection($web['document_root'],false);
      exec('mkdir -p '.escapeshellcmd($data['new']['dir']));
      exec('chown '.escapeshellcmd($web["system_user"]).':'.escapeshellcmd($web['system_group']).' '.$data['new']['dir']);
      $app->system->web_folder_protection($web['document_root'],true);
      $app->log("Added ftpuser_dir: ".$data['new']['dir'],LOGLEVEL_DEBUG);
    }
    
@@ -91,6 +95,8 @@
    function update($event_name,$data) {
        global $app, $conf;
        
        $app->uses('system');
    if(!is_dir($data['new']['dir'])) {
      $app->log("FTP User directory '".$data['new']['dir']."' does not exist. Creating it now.",LOGLEVEL_DEBUG);
      
@@ -101,9 +107,11 @@
        $app->log('User dir is outside of docroot.',LOGLEVEL_WARN);
        return false;
      }
      $app->system->web_folder_protection($web['document_root'],false);
      exec('mkdir -p '.escapeshellcmd($data['new']['dir']));
      exec('chown '.escapeshellcmd($web["system_user"]).':'.escapeshellcmd($web['system_group']).' '.$data['new']['dir']);
      $app->system->web_folder_protection($web['document_root'],true);
      
      $app->log("Added ftpuser_dir: ".$data['new']['dir'],LOGLEVEL_DEBUG);
    }