Skip to content

Commit

Permalink
Check permissions when downloading files.
Browse files Browse the repository at this point in the history
  • Loading branch information
yunosh committed Sep 19, 2017
1 parent 3ab01b8 commit 2763cd9
Showing 1 changed file with 12 additions and 3 deletions.
15 changes: 12 additions & 3 deletions gollem/lib/Application.php
Expand Up @@ -312,9 +312,17 @@ public function topbarCreate(Horde_Tree_Renderer_Base $tree, $parent = null,
*/
public function download(Horde_Variables $vars)
{
$vfs = $GLOBALS['injector']
->getInstance('Gollem_Factory_Vfs')
global $injector, $session;

// Check permissions.
if ($vars->backend != $session->get('gollem', 'backend_key')) {
throw new Horde_Exception_PermissionDenied();
}
Gollem::changeDir();

$vfs = $injector->getInstance('Gollem_Factory_Vfs')
->create($vars->backend);

$res = array(
'data' => is_callable(array($vfs, 'readStream'))
? $vfs->readStream($vars->dir, $vars->filename)
Expand All @@ -323,7 +331,8 @@ public function download(Horde_Variables $vars)

try {
$res['size'] = $vfs->size($vars->dir, $vars->filename);
} catch (Horde_Vfs_Exception $e) {}
} catch (Horde_Vfs_Exception $e) {
}

return $res;
}
Expand Down

0 comments on commit 2763cd9

Please sign in to comment.