1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-06-09 07:58:56 +02:00

[ticket/10041] Use send_status_line more in download/file.php

PHPBB3-10041
This commit is contained in:
Oleg Pudeyev 2011-02-23 18:15:54 -05:00
parent 510248da28
commit 786078d423

View File

@ -125,11 +125,13 @@ $user->setup('viewtopic');
if (!$download_id) if (!$download_id)
{ {
send_status_line(404, 'Not Found');
trigger_error('NO_ATTACHMENT_SELECTED'); trigger_error('NO_ATTACHMENT_SELECTED');
} }
if (!$config['allow_attachments'] && !$config['allow_pm_attach']) if (!$config['allow_attachments'] && !$config['allow_pm_attach'])
{ {
send_status_line(404, 'Not Found');
trigger_error('ATTACHMENT_FUNCTIONALITY_DISABLED'); trigger_error('ATTACHMENT_FUNCTIONALITY_DISABLED');
} }
@ -142,11 +144,13 @@ $db->sql_freeresult($result);
if (!$attachment) if (!$attachment)
{ {
send_status_line(404, 'Not Found');
trigger_error('ERROR_NO_ATTACHMENT'); trigger_error('ERROR_NO_ATTACHMENT');
} }
if ((!$attachment['in_message'] && !$config['allow_attachments']) || ($attachment['in_message'] && !$config['allow_pm_attach'])) if ((!$attachment['in_message'] && !$config['allow_attachments']) || ($attachment['in_message'] && !$config['allow_pm_attach']))
{ {
send_status_line(404, 'Not Found');
trigger_error('ATTACHMENT_FUNCTIONALITY_DISABLED'); trigger_error('ATTACHMENT_FUNCTIONALITY_DISABLED');
} }
@ -159,6 +163,7 @@ if ($attachment['is_orphan'])
if (!$own_attachment || ($attachment['in_message'] && !$auth->acl_get('u_pm_download')) || (!$attachment['in_message'] && !$auth->acl_get('u_download'))) if (!$own_attachment || ($attachment['in_message'] && !$auth->acl_get('u_pm_download')) || (!$attachment['in_message'] && !$auth->acl_get('u_download')))
{ {
send_status_line(404, 'Not Found');
trigger_error('ERROR_NO_ATTACHMENT'); trigger_error('ERROR_NO_ATTACHMENT');
} }
@ -191,6 +196,7 @@ else
} }
else else
{ {
send_status_line(403, 'Forbidden');
trigger_error('SORRY_AUTH_VIEW_ATTACH'); trigger_error('SORRY_AUTH_VIEW_ATTACH');
} }
} }
@ -231,6 +237,7 @@ else
$extensions = array(); $extensions = array();
if (!extension_allowed($row['forum_id'], $attachment['extension'], $extensions)) 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'])); trigger_error(sprintf($user->lang['EXTENSION_DISABLED_AFTER_POSTING'], $attachment['extension']));
} }
} }
@ -253,6 +260,7 @@ $db->sql_freeresult($result);
if (!$attachment) if (!$attachment)
{ {
send_status_line(404, 'Not Found');
trigger_error('ERROR_NO_ATTACHMENT'); trigger_error('ERROR_NO_ATTACHMENT');
} }
@ -295,6 +303,7 @@ else
// This presenting method should no longer be used // This presenting method should no longer be used
if (!@is_dir($phpbb_root_path . $config['upload_path'])) if (!@is_dir($phpbb_root_path . $config['upload_path']))
{ {
send_status_line(500, 'Internal Server Error');
trigger_error($user->lang['PHYSICAL_DOWNLOAD_NOT_POSSIBLE']); trigger_error($user->lang['PHYSICAL_DOWNLOAD_NOT_POSSIBLE']);
} }
@ -419,6 +428,7 @@ function send_file_to_browser($attachment, $upload_dir, $category)
if (!@file_exists($filename)) if (!@file_exists($filename))
{ {
send_status_line(404, 'Not Found');
trigger_error($user->lang['ERROR_NO_ATTACHMENT'] . '<br /><br />' . sprintf($user->lang['FILE_NOT_FOUND_404'], $filename)); trigger_error($user->lang['ERROR_NO_ATTACHMENT'] . '<br /><br />' . sprintf($user->lang['FILE_NOT_FOUND_404'], $filename));
} }
@ -445,9 +455,11 @@ function send_file_to_browser($attachment, $upload_dir, $category)
// PHP track_errors setting On? // PHP track_errors setting On?
if (!empty($php_errormsg)) if (!empty($php_errormsg))
{ {
send_status_line(500, 'Internal Server Error');
trigger_error($user->lang['UNABLE_TO_DELIVER_FILE'] . '<br />' . sprintf($user->lang['TRACKED_PHP_ERROR'], $php_errormsg)); trigger_error($user->lang['UNABLE_TO_DELIVER_FILE'] . '<br />' . sprintf($user->lang['TRACKED_PHP_ERROR'], $php_errormsg));
} }
send_status_line(500, 'Internal Server Error');
trigger_error('UNABLE_TO_DELIVER_FILE'); trigger_error('UNABLE_TO_DELIVER_FILE');
} }