GNU bug report logs -
#48559
[PATCH 2/4] scripts: publish: Forward the request connection header.
Previous Next
Reported by: Mathieu Othacehe <othacehe <at> gnu.org>
Date: Fri, 21 May 2021 08:28:03 UTC
Severity: normal
Tags: patch
Done: Mathieu Othacehe <mathieu <at> meije.i-did-not-set--mail-host-address--so-tickle-me>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 48559 in the body.
You can then email your comments to 48559 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#48559
; Package
guix-patches
.
(Fri, 21 May 2021 08:28:03 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Mathieu Othacehe <othacehe <at> gnu.org>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Fri, 21 May 2021 08:28:03 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
The Guile web server is reading the response connection header to decide
whether to close the connection. However, as the request connection header is
not forwarded to the response, this mechanism cannot work.
* guix/scripts/publish.scm (add-extra-headers): New procedure.
(make-request-handler): Use it to forward the request connection header to the
response.
---
guix/scripts/publish.scm | 21 +++++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)
diff --git a/guix/scripts/publish.scm b/guix/scripts/publish.scm
index 19fed574c2..260f98edf0 100644
--- a/guix/scripts/publish.scm
+++ b/guix/scripts/publish.scm
@@ -34,6 +34,7 @@
#:use-module (srfi srfi-2)
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-9 gnu)
+ #:use-module (srfi srfi-11)
#:use-module (srfi srfi-19)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
@@ -1034,6 +1035,14 @@ methods, return the applicable compression."
compressions)
(default-compression requested-type)))
+(define (add-extra-headers request response)
+ "Append the REQUEST connection header to the given RESPONSE headers and
+return them."
+ (if (pair? response)
+ `(,@response
+ ,(assq 'connection (request-headers request)))
+ response))
+
(define* (make-request-handler store
#:key
cache pool
@@ -1047,7 +1056,7 @@ methods, return the applicable compression."
(let ((expected (split-and-decode-uri-path nar-path)))
(cut equal? expected <>)))
- (lambda (request body)
+ (define (handle request body)
(format #t "~a ~a~%"
(request-method request)
(uri-path (request-uri request)))
@@ -1119,7 +1128,15 @@ methods, return the applicable compression."
(not-found request)))
(x (not-found request)))
- (not-found request))))
+ (not-found request)))
+
+ ;; Forward the request connection header to the response, so that the server
+ ;; can close the connection if this is requested by the client.
+ (lambda (request body)
+ (let-values (((response response-body)
+ (handle request body)))
+ (values (add-extra-headers request response)
+ response-body))))
(define (service-name)
"Return the Avahi service name of the server."
--
2.31.1
bug closed, send any further explanations to
48559 <at> debbugs.gnu.org and Mathieu Othacehe <othacehe <at> gnu.org>
Request was from
Mathieu Othacehe <mathieu <at> meije.i-did-not-set--mail-host-address--so-tickle-me>
to
control <at> debbugs.gnu.org
.
(Fri, 21 May 2021 08:55:03 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 18 Jun 2021 11:24:09 GMT)
Full text and
rfc822 format available.
This bug report was last modified 2 years and 284 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.