tbrehm
2013-03-19 217596a74fa638f20c4240b5177fbab468403270
Fixed: FS#2787 - Adding new FTP directory to a user not working properly
1 files modified
8 ■■■■ changed files
server/plugins-available/ftpuser_base_plugin.inc.php 8 ●●●● patch | view | raw | blame | history
server/plugins-available/ftpuser_base_plugin.inc.php
@@ -75,15 +75,15 @@
      $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($data['new']['parent_domain_id']));
      
      //* Check if the resulting path is inside the docroot
      if(substr(realpath($data['new']['dir']),0,strlen($web['document_root'])) != $web['document_root']) {
      if(substr($data['new']['dir'],0,strlen($web['document_root'])) != $web['document_root']) {
        $app->log('User dir is outside of docroot.',LOGLEVEL_WARN);
        return false;
      }
      
      exec('mkdir -p '.escapeshellcmd($data['new']['dir']));
      exec('chown '.escapeshellcmd($web["system_user"]).':'.escapeshellcmd($web['system_group']).' '.$data['new']['dir']);
      $app->log("Added ftpuser_dir: ".$data['new']['dir'],LOGLEVEL_DEBUG);
      $app->log("Added ftpuser_dir: ".$data['new']['dir'],LOGLEVEL_DEBUG);
    }
    
    }
@@ -97,7 +97,7 @@
      $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($data['new']['parent_domain_id']));
      
      //* Check if the resulting path is inside the docroot
      if(substr(realpath($data['new']['dir']),0,strlen($web['document_root'])) != $web['document_root']) {
      if(substr($data['new']['dir'],0,strlen($web['document_root'])) != $web['document_root']) {
        $app->log('User dir is outside of docroot.',LOGLEVEL_WARN);
        return false;
      }