Changeset 1113
- Timestamp:
- 06/29/08 17:15:57 (2 months ago)
- Files:
-
- trunk/mango/net/http/server/HttpBridge.d (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/mango/net/http/server/HttpBridge.d
r1112 r1113 13 13 module mango.net.http.server.HttpBridge; 14 14 15 private import tango.net.Socket ;15 private import tango.net.SocketConduit; 16 16 17 17 private import tango.net.http.HttpConst; … … 20 20 21 21 private import mango.net.util.model.IServer; 22 23 private import tango.text.convert.Integer : atoi; 22 24 23 25 private import mango.net.http.server.HttpThread, … … 102 104 response.reset; 103 105 104 // first, extract HTTP headers from input ( this maytimeout)106 // first, extract HTTP headers from input (ignore timeout) 105 107 try { 106 108 request.readHeaders; 107 108 109 } catch (Exception x) 109 { 110 break; 111 } 110 break; 112 111 113 112 // check for Connection:close 114 if (++count < 20 && "close" != request.getInputHeaders.get(HttpHeader.Connection)) 115 response.keepAlive = true; 113 auto headers = request.getInputHeaders; 114 if (++count < 32 && "close" != headers.get(HttpHeader.Connection)) 115 { 116 response.keepAlive = true; 117 118 // set timeout via first request 119 if (count is 1) 120 { 121 auto time = headers.get(HttpHeader.KeepAlive); 122 if (time.length) 123 (cast(SocketConduit) conduit).setTimeout (atoi(time) / 1000.0); 124 } 125 } 116 126 117 127 // pass request off to the provider. It is the provider's
