Return 403 instead of 500 if no CSRF token given
Not supplying a CSRF token shouldn't return a 500 response because it isn't a server error. The response status code should definitely be in the 400's, because it's the client's fault. And it should be a 403 because the client is forbidden from making that request without the appropriate credential (the CSRF token), though the request may be otherwise valid.
http://en.wikipedia.org/wiki/List_of_HTTP_status_codes
diff --git a/system/core/Security.php b/system/core/Security.php
index c4621d5..f1802f0 100755
--- a/system/core/Security.php
+++ b/system/core/Security.php
@@ -275,7 +275,7 @@
*/
public function csrf_show_error()
{
- show_error('The action you have requested is not allowed.');
+ show_error('The action you have requested is not allowed.', 403);
}
// --------------------------------------------------------------------
@@ -934,4 +934,4 @@
}
/* End of file Security.php */
-/* Location: ./system/core/Security.php */
\ No newline at end of file
+/* Location: ./system/core/Security.php */