? url-auth.auth-source.patch Index: ChangeLog =================================================================== RCS file: /sources/emacs/emacs/lisp/url/ChangeLog,v retrieving revision 1.156 diff -c -r1.156 ChangeLog *** ChangeLog 6 May 2008 04:29:10 -0000 1.156 --- ChangeLog 9 May 2008 19:31:48 -0000 *************** *** 1,3 **** --- 1,10 ---- + 2008-05-09 Teodor Zlatanov + + * 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 * url-vars.el (url-load-hook): Fix typo in docstring. Index: url-auth.el =================================================================== RCS file: /sources/emacs/emacs/lisp/url/url-auth.el,v retrieving revision 1.22 diff -c -r1.22 url-auth.el *** url-auth.el 6 May 2008 04:29:10 -0000 1.22 --- url-auth.el 9 May 2008 19:31:48 -0000 *************** *** 26,31 **** --- 26,34 ---- (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,69 **** --- 67,73 ---- (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,87 **** (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 ""))) (set url-basic-auth-storage (cons (list server (cons file --- 83,95 ---- (symbol-value url-basic-auth-storage)))) (cond ((and prompt (not byserv)) ! (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,111 **** (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: ") retval (base64-encode-string (format "%s:%s" user pass)) byserv (assoc server (symbol-value url-basic-auth-storage))) (setcdr byserv --- 111,123 ---- (setq byserv (cdr byserv)))) (if (or (and (not retval) prompt) overwrite) (progn ! (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,155 **** --- 162,168 ---- (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,169 **** 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: ") url-digest-auth-storage (cons (list server (cons file --- 174,186 ---- byserv (cdr-safe (assoc server url-digest-auth-storage))) (cond ((and prompt (not byserv)) ! (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,196 **** (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: ") retval (setq retval (cons user (url-digest-auth-create-key --- 205,217 ---- (setq byserv (cdr byserv)))) (if overwrite (if (and (not retval) prompt) ! (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