Mercurial > emacs
comparison lisp/url/url-auth.el @ 95612:26c59cfcaeff
(auth-source-user-or-password): Remove unnecessary eval-and-compile.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Sat, 07 Jun 2008 02:33:51 +0000 |
parents | fc66ed3d9938 |
children | 7369ded3b436 |
comparison
equal
deleted
inserted
replaced
95611:4ad2aacd19df | 95612:26c59cfcaeff |
---|---|
1 ;;; url-auth.el --- Uniform Resource Locator authorization modules | 1 ;;; url-auth.el --- Uniform Resource Locator authorization modules |
2 | 2 |
3 ;; Copyright (C) 1996, 1997, 1998, 1999, 2004, | 3 ;; Copyright (C) 1996, 1997, 1998, 1999, 2004, 2005, 2006, 2007, |
4 ;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc. | 4 ;; 2008 Free Software Foundation, Inc. |
5 | 5 |
6 ;; Keywords: comm, data, processes, hypermedia | 6 ;; Keywords: comm, data, processes, hypermedia |
7 | 7 |
8 ;; This file is part of GNU Emacs. | 8 ;; This file is part of GNU Emacs. |
9 | 9 |
23 ;;; Code: | 23 ;;; Code: |
24 | 24 |
25 (require 'url-vars) | 25 (require 'url-vars) |
26 (require 'url-parse) | 26 (require 'url-parse) |
27 (autoload 'url-warn "url") | 27 (autoload 'url-warn "url") |
28 | 28 (autoload 'auth-source-user-or-password "auth-source") |
29 (eval-and-compile | |
30 (autoload 'auth-source-user-or-password "auth-source")) | |
31 | 29 |
32 (defsubst url-auth-user-prompt (url realm) | 30 (defsubst url-auth-user-prompt (url realm) |
33 "String to usefully prompt for a username." | 31 "String to usefully prompt for a username." |
34 (concat "Username [for " | 32 (concat "Username [for " |
35 (or realm (url-truncate-url-for-viewing | 33 (or realm (url-truncate-url-for-viewing |
81 (t (url-file-directory file))) | 79 (t (url-file-directory file))) |
82 byserv (cdr-safe (assoc server | 80 byserv (cdr-safe (assoc server |
83 (symbol-value url-basic-auth-storage)))) | 81 (symbol-value url-basic-auth-storage)))) |
84 (cond | 82 (cond |
85 ((and prompt (not byserv)) | 83 ((and prompt (not byserv)) |
86 (setq user (or | 84 (setq user (or |
87 (auth-source-user-or-password "login" server type) | 85 (auth-source-user-or-password "login" server type) |
88 (read-string (url-auth-user-prompt url realm) | 86 (read-string (url-auth-user-prompt url realm) |
89 (or user (user-real-login-name)))) | 87 (or user (user-real-login-name)))) |
90 pass (or | 88 pass (or |
91 (auth-source-user-or-password "password" server type) | 89 (auth-source-user-or-password "password" server type) |
92 (read-passwd "Password: " nil (or pass "")))) | 90 (read-passwd "Password: " nil (or pass "")))) |
93 (set url-basic-auth-storage | 91 (set url-basic-auth-storage |
94 (cons (list server | 92 (cons (list server |
95 (cons file | 93 (cons file |
109 (string= data (substring file 0 (length data))))) | 107 (string= data (substring file 0 (length data))))) |
110 (setq retval (cdr (car byserv)))) | 108 (setq retval (cdr (car byserv)))) |
111 (setq byserv (cdr byserv)))) | 109 (setq byserv (cdr byserv)))) |
112 (if (or (and (not retval) prompt) overwrite) | 110 (if (or (and (not retval) prompt) overwrite) |
113 (progn | 111 (progn |
114 (setq user (or | 112 (setq user (or |
115 (auth-source-user-or-password "login" server type) | 113 (auth-source-user-or-password "login" server type) |
116 (read-string (url-auth-user-prompt url realm) | 114 (read-string (url-auth-user-prompt url realm) |
117 (user-real-login-name))) | 115 (user-real-login-name))) |
118 pass (or | 116 pass (or |
119 (auth-source-user-or-password "password" server type) | 117 (auth-source-user-or-password "password" server type) |
120 (read-passwd "Password: ")) | 118 (read-passwd "Password: ")) |
121 retval (base64-encode-string (format "%s:%s" user pass)) | 119 retval (base64-encode-string (format "%s:%s" user pass)) |
122 byserv (assoc server (symbol-value url-basic-auth-storage))) | 120 byserv (assoc server (symbol-value url-basic-auth-storage))) |
123 (setcdr byserv | 121 (setcdr byserv |
203 (string= data (substring file 0 (length data))))) | 201 (string= data (substring file 0 (length data))))) |
204 (setq retval (cdr (car byserv)))) | 202 (setq retval (cdr (car byserv)))) |
205 (setq byserv (cdr byserv)))) | 203 (setq byserv (cdr byserv)))) |
206 (if overwrite | 204 (if overwrite |
207 (if (and (not retval) prompt) | 205 (if (and (not retval) prompt) |
208 (setq user (or | 206 (setq user (or |
209 (auth-source-user-or-password "login" server type) | 207 (auth-source-user-or-password "login" server type) |
210 (read-string (url-auth-user-prompt url realm) | 208 (read-string (url-auth-user-prompt url realm) |
211 (user-real-login-name))) | 209 (user-real-login-name))) |
212 pass (or | 210 pass (or |
213 (auth-source-user-or-password "password" server type) | 211 (auth-source-user-or-password "password" server type) |
214 (read-passwd "Password: ")) | 212 (read-passwd "Password: ")) |
215 retval (setq retval | 213 retval (setq retval |
216 (cons user | 214 (cons user |
217 (url-digest-auth-create-key | 215 (url-digest-auth-create-key |