|
41 | 41 | format_hdrs/1,
|
42 | 42 | dec/1,
|
43 | 43 | get_cookies/1,
|
44 |
| - update_cookies/2]). |
| 44 | + update_cookies/2, |
| 45 | + to_lower/1]). |
45 | 46 |
|
46 | 47 | -include("lhttpc_types.hrl").
|
47 | 48 | -include("lhttpc.hrl").
|
@@ -90,7 +91,7 @@ header_value(Hdr, [{ThisHdr, Value}| Hdrs], Default) when is_atom(ThisHdr) ->
|
90 | 91 | header_value(Hdr, [{ThisHdr, Value}| Hdrs], Default) when is_binary(ThisHdr) ->
|
91 | 92 | header_value(Hdr, [{binary_to_list(ThisHdr), Value}| Hdrs], Default);
|
92 | 93 | header_value(Hdr, [{ThisHdr, Value}| Hdrs], Default) ->
|
93 |
| - case string:equal(string:to_lower(ThisHdr), Hdr) of |
| 94 | + case string:equal(lhttpc_lib:to_lower(ThisHdr), Hdr) of |
94 | 95 | true -> case is_list(Value) of
|
95 | 96 | true -> string:strip(Value);
|
96 | 97 | false -> Value
|
@@ -129,7 +130,7 @@ parse_url(URL) ->
|
129 | 130 | {User, Passwd, HostPortPath} = split_credentials(CredsHostPortPath),
|
130 | 131 | {Host, PortPath} = split_host(HostPortPath, []),
|
131 | 132 | {Port, Path} = split_port(Scheme, PortPath, []),
|
132 |
| - #lhttpc_url{host = string:to_lower(Host), port = Port, path = Path, |
| 133 | + #lhttpc_url{host = lhttpc_lib:to_lower(Host), port = Port, path = Path, |
133 | 134 | user = User, password = Passwd, is_ssl = (Scheme =:= https)}.
|
134 | 135 |
|
135 | 136 | %%------------------------------------------------------------------------------
|
@@ -216,6 +217,15 @@ update_cookies(RespHeaders, StateCookies) ->
|
216 | 217 | %% Delete the cookies that are expired (check max-age and expire fields).
|
217 | 218 | delete_expired_cookies(NewCookies).
|
218 | 219 |
|
| 220 | + |
| 221 | +%%------------------------------------------------------------------------------ |
| 222 | +%% @doc Converts characters in a string ro lower case. |
| 223 | +%% @end |
| 224 | +%%------------------------------------------------------------------------------ |
| 225 | +-spec to_lower(string()) -> string(). |
| 226 | +to_lower(String) -> |
| 227 | + [char_to_lower(X) || X <- String]. |
| 228 | + |
219 | 229 | %%==============================================================================
|
220 | 230 | %% Internal functions
|
221 | 231 | %%==============================================================================
|
@@ -555,7 +565,7 @@ add_content_headers(Hdrs, _Body, true) ->
|
555 | 565 | {undefined, undefined} ->
|
556 | 566 | [{"Transfer-Encoding", "chunked"} | Hdrs];
|
557 | 567 | {undefined, TransferEncoding} ->
|
558 |
| - case string:to_lower(TransferEncoding) of |
| 568 | + case lhttpc_lib:to_lower(TransferEncoding) of |
559 | 569 | "chunked" -> Hdrs;
|
560 | 570 | _ -> erlang:error({error, unsupported_transfer_encoding})
|
561 | 571 | end;
|
@@ -586,7 +596,7 @@ add_host(Hdrs, Host, Port) ->
|
586 | 596 | %%------------------------------------------------------------------------------
|
587 | 597 | -spec is_chunked(headers()) -> boolean().
|
588 | 598 | is_chunked(Hdrs) ->
|
589 |
| - TransferEncoding = string:to_lower( |
| 599 | + TransferEncoding = lhttpc_lib:to_lower( |
590 | 600 | header_value("transfer-encoding", Hdrs, "undefined")),
|
591 | 601 | case TransferEncoding of
|
592 | 602 | "chunked" -> true;
|
@@ -619,3 +629,36 @@ maybe_ipv6_enclose(Host) ->
|
619 | 629 | _ ->
|
620 | 630 | Host
|
621 | 631 | end.
|
| 632 | + |
| 633 | +%%------------------------------------------------------------------------------ |
| 634 | +%% @private |
| 635 | +%% @doc |
| 636 | +%% @end |
| 637 | +%%------------------------------------------------------------------------------ |
| 638 | +char_to_lower($A) -> $a; |
| 639 | +char_to_lower($B) -> $b; |
| 640 | +char_to_lower($C) -> $c; |
| 641 | +char_to_lower($D) -> $d; |
| 642 | +char_to_lower($E) -> $e; |
| 643 | +char_to_lower($F) -> $f; |
| 644 | +char_to_lower($G) -> $g; |
| 645 | +char_to_lower($H) -> $h; |
| 646 | +char_to_lower($I) -> $i; |
| 647 | +char_to_lower($J) -> $j; |
| 648 | +char_to_lower($K) -> $k; |
| 649 | +char_to_lower($L) -> $l; |
| 650 | +char_to_lower($M) -> $m; |
| 651 | +char_to_lower($N) -> $n; |
| 652 | +char_to_lower($O) -> $o; |
| 653 | +char_to_lower($P) -> $p; |
| 654 | +char_to_lower($Q) -> $q; |
| 655 | +char_to_lower($R) -> $r; |
| 656 | +char_to_lower($S) -> $s; |
| 657 | +char_to_lower($T) -> $t; |
| 658 | +char_to_lower($U) -> $u; |
| 659 | +char_to_lower($V) -> $v; |
| 660 | +char_to_lower($W) -> $w; |
| 661 | +char_to_lower($X) -> $x; |
| 662 | +char_to_lower($Y) -> $y; |
| 663 | +char_to_lower($Z) -> $z; |
| 664 | +char_to_lower(Ch) -> Ch. |
0 commit comments