From 64ad8e38d4e984b216a67d22f147921d1efaaa60 Mon Sep 17 00:00:00 2001 From: David Lawrence Date: Wed, 11 Mar 2015 16:16:31 +0000 Subject: Bug 1141440: OPTION response for CORS requests to REST doesn't allow X-Bugzilla headers - Fixed t/001compile.t error due to tr///r only for 5.14+ --- Bugzilla/WebService/Server/REST.pm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'Bugzilla') diff --git a/Bugzilla/WebService/Server/REST.pm b/Bugzilla/WebService/Server/REST.pm index 9c9141c09..16e041985 100644 --- a/Bugzilla/WebService/Server/REST.pm +++ b/Bugzilla/WebService/Server/REST.pm @@ -134,8 +134,13 @@ sub response { { rpc => $self, result => \$result, response => $response }); # Access Control - my @allowed_headers = (qw(accept content-type origin x-requested-with), - map { tr/A-Z_/a-z\-/r } keys API_AUTH_HEADERS()); + my @allowed_headers = qw(accept content-type origin x-requested-with); + foreach my $header (keys API_AUTH_HEADERS()) { + # We want to lowercase and replace _ with - + my $translated_header = $header; + $translated_header =~ tr/A-Z_/a-z\-/; + push(@allowed_headers, $translated_header); + } $response->header("Access-Control-Allow-Origin", "*"); $response->header("Access-Control-Allow-Headers", join(', ', @allowed_headers)); -- cgit v1.2.3-24-g4f1b