aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--phpBB/download/file.php7
-rw-r--r--phpBB/includes/functions_download.php22
2 files changed, 2 insertions, 27 deletions
diff --git a/phpBB/download/file.php b/phpBB/download/file.php
index c300df0235..b1a376155d 100644
--- a/phpBB/download/file.php
+++ b/phpBB/download/file.php
@@ -290,11 +290,8 @@ else if ($download_id)
}
}
- // disallowed?
- $extensions = $cache->obtain_attach_extensions($row['forum_id']);
-
- $attachments_filtered = phpbb_filter_disallowed_extensions($extensions, array($attachment));
- if (empty($attachments_filtered))
+ $extensions = array();
+ if (!extension_allowed($row['forum_id'], $attachment['extension'], $extensions))
{
send_status_line(404, 'Forbidden');
trigger_error(sprintf($user->lang['EXTENSION_DISABLED_AFTER_POSTING'], $attachment['extension']));
diff --git a/phpBB/includes/functions_download.php b/phpBB/includes/functions_download.php
index 8453469e83..b01712357d 100644
--- a/phpBB/includes/functions_download.php
+++ b/phpBB/includes/functions_download.php
@@ -613,25 +613,3 @@ function phpbb_increment_downloads($db, $ids)
WHERE ' . $db->sql_in_set('attach_id', $ids);
$db->sql_query($sql);
}
-
-/**
-* Checks every attachment to see if it has an allowed extension
-*
-* @param array $extensions As generated by phpbb_cache_service::obtain_attach_extensions
-* @param array $attachments An array of attachment row to check
-*
-* @return array Array of attachment rows with allowed extension
-*/
-function phpbb_filter_disallowed_extensions($extensions, $attachments)
-{
- $result = array();
- foreach ($attachments as $key => $row)
- {
- if (isset($extensions['_allowed_'][$row['extension']]))
- {
- $result[$key] = $row;
- }
- }
-
- return $result;
-}