mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
Add autoload cookie for
`auth-source-user-or-password'. (url-basic-auth, url-digest-auth): Use it with any realm, overriding the user name and password before the prompt.
This commit is contained in:
parent
ee5657de26
commit
97d1c23634
2 changed files with 40 additions and 12 deletions
|
|
@ -1,3 +1,10 @@
|
|||
2008-05-12 Teodor Zlatanov <tzz@lifelogs.com>
|
||||
|
||||
* url-auth.el: Add autoload cookie for
|
||||
`auth-source-user-or-password'.
|
||||
(url-basic-auth, url-digest-auth): Use it with any realm,
|
||||
overriding the user name and password before the prompt.
|
||||
|
||||
2008-04-28 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* url-vars.el (url-load-hook): Fix typo in docstring.
|
||||
|
|
|
|||
|
|
@ -26,6 +26,9 @@
|
|||
(require 'url-parse)
|
||||
(autoload 'url-warn "url")
|
||||
|
||||
(eval-and-compile
|
||||
(autoload 'auth-source-user-or-password "auth-source"))
|
||||
|
||||
(defsubst url-auth-user-prompt (url realm)
|
||||
"String to usefully prompt for a username."
|
||||
(concat "Username [for "
|
||||
|
|
@ -64,6 +67,7 @@ instead of the filename inheritance method."
|
|||
(url-generic-parse-url url)
|
||||
url))
|
||||
(server (url-host href))
|
||||
(type (url-type href))
|
||||
(port (url-port href))
|
||||
(file (url-filename href))
|
||||
(user (url-user href))
|
||||
|
|
@ -79,9 +83,13 @@ instead of the filename inheritance method."
|
|||
(symbol-value url-basic-auth-storage))))
|
||||
(cond
|
||||
((and prompt (not byserv))
|
||||
(setq user (read-string (url-auth-user-prompt url realm)
|
||||
(or user (user-real-login-name)))
|
||||
pass (read-passwd "Password: " nil (or pass "")))
|
||||
(setq user (or
|
||||
(auth-source-user-or-password "login" server type)
|
||||
(read-string (url-auth-user-prompt url realm)
|
||||
(or user (user-real-login-name))))
|
||||
pass (or
|
||||
(auth-source-user-or-password "password" server type)
|
||||
(read-passwd "Password: " nil (or pass ""))))
|
||||
(set url-basic-auth-storage
|
||||
(cons (list server
|
||||
(cons file
|
||||
|
|
@ -103,9 +111,13 @@ instead of the filename inheritance method."
|
|||
(setq byserv (cdr byserv))))
|
||||
(if (or (and (not retval) prompt) overwrite)
|
||||
(progn
|
||||
(setq user (read-string (url-auth-user-prompt url realm)
|
||||
(user-real-login-name))
|
||||
pass (read-passwd "Password: ")
|
||||
(setq user (or
|
||||
(auth-source-user-or-password "login" server type)
|
||||
(read-string (url-auth-user-prompt url realm)
|
||||
(user-real-login-name)))
|
||||
pass (or
|
||||
(auth-source-user-or-password "password" server type)
|
||||
(read-passwd "Password: "))
|
||||
retval (base64-encode-string (format "%s:%s" user pass))
|
||||
byserv (assoc server (symbol-value url-basic-auth-storage)))
|
||||
(setcdr byserv
|
||||
|
|
@ -150,6 +162,7 @@ instead of hostname:portnum."
|
|||
(url-generic-parse-url url)
|
||||
url))
|
||||
(server (url-host href))
|
||||
(type (url-type href))
|
||||
(port (url-port href))
|
||||
(file (url-filename href))
|
||||
user pass byserv retval data)
|
||||
|
|
@ -161,9 +174,13 @@ instead of hostname:portnum."
|
|||
byserv (cdr-safe (assoc server url-digest-auth-storage)))
|
||||
(cond
|
||||
((and prompt (not byserv))
|
||||
(setq user (read-string (url-auth-user-prompt url realm)
|
||||
(user-real-login-name))
|
||||
pass (read-passwd "Password: ")
|
||||
(setq user (or
|
||||
(auth-source-user-or-password "login" server type)
|
||||
(read-string (url-auth-user-prompt url realm)
|
||||
(user-real-login-name)))
|
||||
pass (or
|
||||
(auth-source-user-or-password "password" server type)
|
||||
(read-passwd "Password: "))
|
||||
url-digest-auth-storage
|
||||
(cons (list server
|
||||
(cons file
|
||||
|
|
@ -188,9 +205,13 @@ instead of hostname:portnum."
|
|||
(setq byserv (cdr byserv))))
|
||||
(if overwrite
|
||||
(if (and (not retval) prompt)
|
||||
(setq user (read-string (url-auth-user-prompt url realm)
|
||||
(user-real-login-name))
|
||||
pass (read-passwd "Password: ")
|
||||
(setq user (or
|
||||
(auth-source-user-or-password "login" server type)
|
||||
(read-string (url-auth-user-prompt url realm)
|
||||
(user-real-login-name)))
|
||||
pass (or
|
||||
(auth-source-user-or-password "password" server type)
|
||||
(read-passwd "Password: "))
|
||||
retval (setq retval
|
||||
(cons user
|
||||
(url-digest-auth-create-key
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue