-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102822/#review7283
-----------------------------------------------------------

Ship it!



kioslave/http/http.cpp
<http://git.reviewboard.kde.org/r/102822/#comment6377>

    I guess the parser just lowercases the key ("keep-alive"), not the values. 
Lowercasing the keys is okay because per the spec they are case-insensitive, 
and it has the advantage that you can look up keys in more or less constant 
time when using a hashtable.
    In many cases the values are case sensitive (usernames, something 
Base64-encoded for example), so the parser better leaves them alone. So you 
need to normalize the case yourself.


- Andreas Hartmetz


On Oct. 10, 2011, 10:35 p.m., Andrea Iacovitti wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/102822/
> -----------------------------------------------------------
> 
> (Updated Oct. 10, 2011, 10:35 p.m.)
> 
> 
> Review request for kdelibs, Andreas Hartmetz and Dawit Alemayehu.
> 
> 
> Description
> -------
> 
> Keep-alive header can specify multiple, comma-separated, value pairs.
> For example what apache web server normally sends is something like that:
> 
> "Keep-Alive: timeout=5, max=99"
> 
> Actually kio_http fails to extract timeout value because it assumes
> keep-alive header can contain only a single value pair.
> In the case of example above what it end up to do is
> m_request.keepAliveTimeout = QString("5, max=99").toInt(), that returns 0 
> (wrong!).
> 
> 
> Diffs
> -----
> 
>   kioslave/http/http.cpp 2862707 
>   kioslave/http/parsinghelpers.cpp fc75d68 
> 
> Diff: http://git.reviewboard.kde.org/r/102822/diff/diff
> 
> 
> Testing
> -------
> 
> -Patched code compiles
> -Hacked a web server and made tests against following keep-alive header 
> variants:
>  "Keep-Alive: timeout=5, max=99"
>  "Keep-Alive: Timeout=5, max=99"     (uppercase 'T')
>  "Keep-Alive: Timeout=5 , max=99"    (extra space before comma)
> 
> 
> Thanks,
> 
> Andrea Iacovitti
> 
>

Reply via email to