Changeset 304a487848610a5bb10e0e0fdc14694729a85463

Show
Ignore:
Timestamp:
24/09/08 03:08:38 (2 months ago)
Author:
Derk-Jan Hartman <hartman@videolan.org>
git-committer:
Derk-Jan Hartman <hartman@videolan.org> 1222218518 +0200
git-parent:

[97a8b0fb564f9df63c58c9ee840d9e540ecae2a0]

git-author:
Derk-Jan Hartman <hartman@videolan.org> 1222218307 +0200
Message:

httpd: Fix keepalive/close of non-matching HTTP versions.

This is a suggestion by Forum user boing (http://forum.videolan.org/viewtopic.php?f=18&t=47295&p=162690#p162690)

Freebox implements a HTTP/1.0 client, we a HTTP/1.1 server. As such we should base our determination of the keepalive vs. close behaviour on the query (client request) instead of the answer (server response).

See also: http://www.ietf.org/rfc/rfc2145.txt

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • src/network/httpd.c

    r75661a9 r304a487  
    23532353 
    23542354                    if( ( ( cl->query.i_proto == HTTPD_PROTO_HTTP ) && 
    2355                           ( ( cl->answer.i_version == 0 && b_keepalive ) || 
    2356                             ( cl->answer.i_version == 1 && !b_connection ) ) ) || 
     2355                          ( ( cl->query.i_version == 0 && b_keepalive ) || 
     2356                            ( cl->query.i_version == 1 && !b_connection ) ) ) || 
    23572357                        ( ( cl->query.i_proto == HTTPD_PROTO_RTSP ) && 
    23582358                          !b_query && !b_connection ) )