From 25bc661a03ad069a2b6e940a2ae8b99b991e4d2a Mon Sep 17 00:00:00 2001 From: Marc Burns Date: Sun, 23 Sep 2012 19:54:57 -0400 Subject: [PATCH] Fix socket leak on redirected `*-pure-port' calls. A port over which a redirection is served to get-pure-port is not closed if `get-pure-port' follows the redirection. This leaks file descriptors on the host machine. --- collects/net/url.rkt | 1 + 1 file changed, 1 insertion(+) diff --git a/collects/net/url.rkt b/collects/net/url.rkt index 08d642f5cf..bda9cf9891 100644 --- a/collects/net/url.rkt +++ b/collects/net/url.rkt @@ -254,6 +254,7 @@ (regexp-match #rx"^HTTP/[0-9]+[.][0-9]+ 3[0-9][0-9]" status)) (cond [(and redirection-status-line? new-url (not (zero? redirections))) + (close-input-port ip) (redirection-loop (- redirections 1) new-url)] [else (define-values (in-pipe out-pipe) (make-pipe))