From: Thomas Fitzsimmons Date: Fri, 16 Aug 2019 03:12:50 +0000 (-0400) Subject: Do not recreate full URL for proxied HTTPS requests (Bug#35969) X-Git-Tag: emacs-27.0.90~1600 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=c02f3125cd6c1843731ab96f156c8ea24dcfe898;p=emacs.git Do not recreate full URL for proxied HTTPS requests (Bug#35969) * lisp/url/url-http.el (url-http-create-request): Do not recreate full URL for proxied HTTPS requests. (url-https-proxy-after-change-function): Do not bind url-http-proxy to nil before calling url-http-create-request. (Bug#35969) --- diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el index 94d1ba9668b..bfc106c2a5c 100644 --- a/lisp/url/url-http.el +++ b/lisp/url/url-http.el @@ -329,7 +329,10 @@ Use `url-http-referer' as the Referer-header (subject to `url-privacy-level')." ;; The request (or url-http-method "GET") " " (url-http--encode-string - (if using-proxy (url-recreate-url url-http-target-url) real-fname)) + (if (and using-proxy + ;; Bug#35969. + (not (equal "https" (url-type url-http-target-url)))) + (url-recreate-url url-http-target-url) real-fname)) " HTTP/" url-http-version "\r\n" ;; Version of MIME we speak "MIME-Version: 1.0\r\n" @@ -1439,9 +1442,7 @@ The return value of this function is the retrieval buffer." 'url-http-wait-for-headers-change-function) (set-process-filter tls-connection 'url-http-generic-filter) (process-send-string tls-connection - ;; Use the non-proxy form of the request - (let (url-http-proxy) - (url-http-create-request)))) + (url-http-create-request))) (gnutls-error (url-http-activate-callback) (error "gnutls-error: %s" e))