From dc8f52dbb1e3ca48622629a76000b5fea021697d Mon Sep 17 00:00:00 2001 From: Jay McCarthy Date: Tue, 27 Aug 2013 09:07:45 -0600 Subject: [PATCH] Do not send Host or Content-Length if user has --- racket/collects/net/http-client.rkt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/racket/collects/net/http-client.rkt b/racket/collects/net/http-client.rkt index 47bf18a971..00bf0f5032 100644 --- a/racket/collects/net/http-client.rkt +++ b/racket/collects/net/http-client.rkt @@ -76,13 +76,15 @@ #:data [data-bsf #f]) (match-define (http-conn host to from _) hc) (fprintf to "~a ~a HTTP/~a\r\n" method-bss url-bs version-bs) - (fprintf to "Host: ~a\r\n" host) + (unless (regexp-member #rx"^(?i:Host:) +.+$" headers-bs) + (fprintf to "Host: ~a\r\n" host)) (define data (if (string? data-bsf) (string->bytes/utf-8 data-bsf) data-bsf)) (when data - (fprintf to "Content-Length: ~a\r\n" (bytes-length data))) + (unless (regexp-member #rx"^(?i:Content-Length:) +.+$" headers-bs) + (fprintf to "Content-Length: ~a\r\n" (bytes-length data)))) (for ([h (in-list headers-bs)]) (fprintf to "~a\r\n" h)) (fprintf to "\r\n")