mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
Change gnutls-verify-error to be first-match
* doc/misc/url.texi (Customization): Describe the new user option url-lastloc-privacy-level. * lisp/net/eww.el (eww-render): Set url-current-lastloc to the url we are rendering, to get the referer header right on subsequent requests. * lisp/url/url-http.el (url-http--get-referer): New function to determine which referer to send, if any, considering the users privacy settings and the target url we are visiting. (url-http-referer): New variable keeping track of the referer computed by url-http--get-referer (url-http-create-request): Use url-http-referer instead of the optional argument to set up the referer header. Leave checking of privacy settings to url-http--get-referer. (url-http): Set up url-http-referer by using url-http--get-referer. * lisp/url/url-queue.el (url-queue): New struct member context-buffer for keeping track of the context a queued job started from. (url-queue-retrieve): Store the current buffer in the queue object. (url-queue-start-retrieve): Make sure url-retrieve is called in the context of the original buffer, if available. * lisp/url/url-util.el (url-domain): New function to determine the domain of a given URL. * lisp/url/url-vars.el (url-current-lastloc): New variable to keep track of the desired "last location" (referer header). (url-lastloc-privacy-level): New custom setting for more fine-grained control over how lastloc (referer) is sent to servers (Bug#27012).
This commit is contained in:
parent
fa41693799
commit
9822a6a570
6 changed files with 126 additions and 22 deletions
|
|
@ -52,7 +52,7 @@
|
|||
(cl-defstruct url-queue
|
||||
url callback cbargs silentp
|
||||
buffer start-time pre-triggered
|
||||
inhibit-cookiesp)
|
||||
inhibit-cookiesp context-buffer)
|
||||
|
||||
;;;###autoload
|
||||
(defun url-queue-retrieve (url callback &optional cbargs silent inhibit-cookies)
|
||||
|
|
@ -67,7 +67,8 @@ The variable `url-queue-timeout' sets a timeout."
|
|||
:callback callback
|
||||
:cbargs cbargs
|
||||
:silentp silent
|
||||
:inhibit-cookiesp inhibit-cookies))))
|
||||
:inhibit-cookiesp inhibit-cookies
|
||||
:context-buffer (current-buffer)))))
|
||||
(url-queue-setup-runners))
|
||||
|
||||
;; To ensure asynch behavior, we start the required number of queue
|
||||
|
|
@ -147,11 +148,14 @@ The variable `url-queue-timeout' sets a timeout."
|
|||
(defun url-queue-start-retrieve (job)
|
||||
(setf (url-queue-buffer job)
|
||||
(ignore-errors
|
||||
(let ((url-request-noninteractive t))
|
||||
(url-retrieve (url-queue-url job)
|
||||
#'url-queue-callback-function (list job)
|
||||
(url-queue-silentp job)
|
||||
(url-queue-inhibit-cookiesp job))))))
|
||||
(with-current-buffer (if (buffer-live-p (url-queue-context-buffer job))
|
||||
(url-queue-context-buffer job)
|
||||
(current-buffer))
|
||||
(let ((url-request-noninteractive t))
|
||||
(url-retrieve (url-queue-url job)
|
||||
#'url-queue-callback-function (list job)
|
||||
(url-queue-silentp job)
|
||||
(url-queue-inhibit-cookiesp job)))))))
|
||||
|
||||
(defun url-queue-prune-old-entries ()
|
||||
(let (dead-jobs)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue