diff options
| author | Diego Nehab <diego.nehab@gmail.com> | 2016-04-12 09:28:27 -0300 |
|---|---|---|
| committer | Diego Nehab <diego.nehab@gmail.com> | 2016-04-12 09:28:27 -0300 |
| commit | 6a0506ca44f4939764aecf8091765a7d772975f5 (patch) | |
| tree | a93ff159aae465af85a8864c3e3616d0976d36df /src | |
| parent | 23ce5aeaa22b49d6649096b520b292a3626474ef (diff) | |
| parent | b9f6fd215a8f522733caedcb4d6d6b0c6e55103e (diff) | |
| download | luasocket-6a0506ca44f4939764aecf8091765a7d772975f5.tar.gz luasocket-6a0506ca44f4939764aecf8091765a7d772975f5.tar.bz2 luasocket-6a0506ca44f4939764aecf8091765a7d772975f5.zip | |
Merge pull request #170 from bytefire/master
URL-decode user password before adding to authorization header.
Diffstat (limited to 'src')
| -rw-r--r-- | src/http.lua | 3 | ||||
| -rw-r--r-- | src/url.lua | 6 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/http.lua b/src/http.lua index f2fff01..a386165 100644 --- a/src/http.lua +++ b/src/http.lua | |||
| @@ -222,7 +222,8 @@ local function adjustheaders(reqt) | |||
| 222 | -- if we have authentication information, pass it along | 222 | -- if we have authentication information, pass it along |
| 223 | if reqt.user and reqt.password then | 223 | if reqt.user and reqt.password then |
| 224 | lower["authorization"] = | 224 | lower["authorization"] = |
| 225 | "Basic " .. (mime.b64(reqt.user .. ":" .. reqt.password)) | 225 | "Basic " .. (mime.b64(reqt.user .. ":" .. |
| 226 | url.unescape(reqt.password))) | ||
| 226 | end | 227 | end |
| 227 | -- if we have proxy authentication information, pass it along | 228 | -- if we have proxy authentication information, pass it along |
| 228 | local proxy = reqt.proxy or _M.PROXY | 229 | local proxy = reqt.proxy or _M.PROXY |
diff --git a/src/url.lua b/src/url.lua index fbd93d1..b59960a 100644 --- a/src/url.lua +++ b/src/url.lua | |||
| @@ -64,11 +64,11 @@ local function protect_segment(s) | |||
| 64 | end | 64 | end |
| 65 | 65 | ||
| 66 | ----------------------------------------------------------------------------- | 66 | ----------------------------------------------------------------------------- |
| 67 | -- Encodes a string into its escaped hexadecimal representation | 67 | -- Unencodes a escaped hexadecimal string into its binary representation |
| 68 | -- Input | 68 | -- Input |
| 69 | -- s: binary string to be encoded | 69 | -- s: escaped hexadecimal string to be unencoded |
| 70 | -- Returns | 70 | -- Returns |
| 71 | -- escaped representation of string binary | 71 | -- unescaped binary representation of escaped hexadecimal binary |
| 72 | ----------------------------------------------------------------------------- | 72 | ----------------------------------------------------------------------------- |
| 73 | function _M.unescape(s) | 73 | function _M.unescape(s) |
| 74 | return (string.gsub(s, "%%(%x%x)", function(hex) | 74 | return (string.gsub(s, "%%(%x%x)", function(hex) |
