From 3625d6a2e2e262b0e303901237f3d89db716bb41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 6 Aug 2014 11:15:26 +0200 Subject: Accept absolute URI scheme as uppercase We should be doing a case insensitive comparison to be correct, but this is more expensive. Almost all clients send lowercase, this patch fixes handling of the aws/aws-sdk-php client which sends uppercase, and no known client sends mixed case so I am holding back on the more expensive solution for the moment. --- src/cowboy_protocol.erl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/cowboy_protocol.erl b/src/cowboy_protocol.erl index 84c4401..cc46590 100644 --- a/src/cowboy_protocol.erl +++ b/src/cowboy_protocol.erl @@ -180,6 +180,10 @@ parse_uri(<< "http://", Rest/bits >>, State, Method) -> parse_uri_skip_host(Rest, State, Method); parse_uri(<< "https://", Rest/bits >>, State, Method) -> parse_uri_skip_host(Rest, State, Method); +parse_uri(<< "HTTP://", Rest/bits >>, State, Method) -> + parse_uri_skip_host(Rest, State, Method); +parse_uri(<< "HTTPS://", Rest/bits >>, State, Method) -> + parse_uri_skip_host(Rest, State, Method); parse_uri(Buffer, State, Method) -> parse_uri_path(Buffer, State, Method, <<>>). -- cgit v1.2.3