]> git.eshelyaron.com Git - emacs.git/commitdiff
Do not recreate full URL for proxied HTTPS requests (Bug#35969)
authorThomas Fitzsimmons <fitzsim@fitzsim.org>
Fri, 16 Aug 2019 03:12:50 +0000 (23:12 -0400)
committerThomas Fitzsimmons <fitzsim@fitzsim.org>
Fri, 16 Aug 2019 03:29:51 +0000 (23:29 -0400)
* 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)

lisp/url/url-http.el

index 94d1ba9668b921d0987dbc7bf2244cc9abee8380..bfc106c2a5c2cad71eaf30c356fe4991c5b8d947 100644 (file)
@@ -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))