]> code.delx.au - gnu-emacs/commitdiff
2008-01-29 John Wiegley <johnw@newartisans.com>
authorJohn Wiegley <johnw@newartisans.com>
Tue, 29 Jan 2008 03:52:05 +0000 (03:52 +0000)
committerJohn Wiegley <johnw@newartisans.com>
Tue, 29 Jan 2008 03:52:05 +0000 (03:52 +0000)
* url-auth.el (url-digest-auth): If the 'opaque' argument is not
being used, don't add it to the response text.  Also, changed an
if so that the interaction between the PROMPT and OVERWRITE
arguments can no longer result in the user being queried twice for
the same login and password information.

lisp/url/ChangeLog
lisp/url/url-auth.el

index 124f3fc9974b5ea1b06315c91df705d4a87d3686..3a70b5343a0973168f9254d53805b2de63df5e1c 100644 (file)
@@ -1,3 +1,11 @@
+2008-01-29  John Wiegley  <johnw@newartisans.com>
+
+       * url-auth.el (url-digest-auth): If the 'opaque' argument is not
+       being used, don't add it to the response text.  Also, changed an
+       if so that the interaction between the PROMPT and OVERWRITE
+       arguments can no longer result in the user being queried twice for
+       the same login and password information.
+
 2008-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * url-handlers.el (unhandled-file-name-directory): Add handler.
index ea96bb0812906ffef24cfd78051842fbd2f5bb53..ed1a79260ee3771111d179c9e97117b9045a7d3f 100644 (file)
@@ -188,31 +188,40 @@ instead of hostname:portnum."
                         (string= data (substring file 0 (length data)))))
                    (setq retval (cdr (car byserv))))
                (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 (setq retval
-                                  (cons user
-                                        (url-digest-auth-create-key
-                                         user pass realm
-                                         (or url-request-method "GET")
-                                         url)))
-                     byserv (assoc server url-digest-auth-storage))
+         (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
+                                           user pass realm
+                                           (or url-request-method "GET")
+                                           url)))
+                       byserv (assoc server url-digest-auth-storage))
                (setcdr byserv
                        (cons (cons file retval) (cdr byserv))))))
         (t (setq retval nil)))
        (if retval
-           (let ((nonce (or (cdr-safe (assoc "nonce" args)) "nonegiven"))
-                 (opaque (or (cdr-safe (assoc "opaque" args)) "nonegiven")))
-             (format
-              (concat "Digest username=\"%s\", realm=\"%s\","
-                      "nonce=\"%s\", uri=\"%s\","
-                      "response=\"%s\", opaque=\"%s\"")
-              (nth 0 retval) realm nonce (url-filename href)
-              (md5 (concat (nth 1 retval) ":" nonce ":"
-                           (nth 2 retval))) opaque))))))
+           (if (cdr-safe (assoc "opaque" args))
+               (let ((nonce (or (cdr-safe (assoc "nonce" args)) "nonegiven"))
+                     (opaque (cdr-safe (assoc "opaque" args))))
+                 (format
+                  (concat "Digest username=\"%s\", realm=\"%s\","
+                          "nonce=\"%s\", uri=\"%s\","
+                          "response=\"%s\", opaque=\"%s\"")
+                  (nth 0 retval) realm nonce (url-filename href)
+                  (md5 (concat (nth 1 retval) ":" nonce ":"
+                               (nth 2 retval))) opaque))
+             (let ((nonce (or (cdr-safe (assoc "nonce" args)) "nonegiven")))
+               (format
+                (concat "Digest username=\"%s\", realm=\"%s\","
+                        "nonce=\"%s\", uri=\"%s\","
+                        "response=\"%s\"")
+                (nth 0 retval) realm nonce (url-filename href)
+                (md5 (concat (nth 1 retval) ":" nonce ":"
+                             (nth 2 retval))))))))))
 
 (defvar url-registered-auth-schemes nil
   "A list of the registered authorization schemes and various and sundry