summaryrefslogtreecommitdiff
path: root/module/web/response.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2010-11-29 12:05:57 +0100
committerAndy Wingo <wingo@pobox.com>2010-12-01 10:13:30 +0100
commitc6371902036f68c96c2bdb22d2ff9f57846ea652 (patch)
treec4d505d080f619a819037ec790f81f6e3219c0c4 /module/web/response.scm
parentc0f6c1638bb920d5cf5ec3210d91bc9fb0c70319 (diff)
downloadguile-c6371902036f68c96c2bdb22d2ff9f57846ea652.tar.gz
stub fixes to http 1.0 support in the web server
* module/web/server.scm (read-client): Fix number of returned values in the case in which there is an error reading the client. (sanitize-response): Add a case to adapt the reponse to the request version. (handle-request): Sanitize the response within an error-handling block. (serve-one-client): Move sanitation out of here. * module/web/server/http.scm (keep-alive?): A more proper detection on whether we should support persistent connections. * module/web/response.scm (adapt-response-version): New routine, to adapt a response to a given version. Currently a stub.
Diffstat (limited to 'module/web/response.scm')
-rw-r--r--module/web/response.scm7
1 files changed, 7 insertions, 0 deletions
diff --git a/module/web/response.scm b/module/web/response.scm
index 1c0ba3d18..ef222f7f4 100644
--- a/module/web/response.scm
+++ b/module/web/response.scm
@@ -34,6 +34,7 @@
read-response
build-response
extend-response
+ adapt-response-version
write-response
read-response-body/latin-1
@@ -164,6 +165,12 @@
(lambda (version code reason-phrase)
(make-response version code reason-phrase (read-headers port) port))))
+(define (adapt-response-version response version)
+ (build-response #:code (response-code response)
+ #:version version
+ #:headers (response-headers response)
+ #:port (response-port response)))
+
(define (write-response r port)
(write-response-line (response-version r) (response-code r)
(response-reason-phrase r) port)