all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#1173: gnus/imap.el should quote quotes in password
@ 2008-10-15 18:11 Aaron D. Ball
       [not found] ` <handler.1173.B.122409431211114.ack@emacsbugs.donarmstrong.com>
  0 siblings, 1 reply; 4+ messages in thread
From: Aaron D. Ball @ 2008-10-15 18:11 UTC (permalink / raw
  To: bug-gnu-emacs

When sending a LOGIN command, the imap-login-auth function in imap.el 
does not quote double quotes in the password string, so passwords 
containing double quotes result in an error.

I'm using stock Emacs 22.3, compiled by our sysadmin team here:

GNU Emacs 22.3.2 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d scroll 
bars) of 2008-09-26 on node106

Below is the patch I am using, which fixed the problem for me:

--- lisp/gnus/imap.el~      2008-01-06 20:22:42.000000000 -0500
+++ lisp/gnus/imap.el       2008-10-15 13:58:06.124586000 -0400
@@ -922,7 +922,7 @@
                           (lambda (user passwd)
                             (imap-ok-p (imap-send-command-wait
                                         (concat "LOGIN \"" user "\" \""
-                                               passwd "\""))))))
+ 
(replace-regexp-in-string "\"" "\\\"" passwd) "\""))))))

  (defun imap-anonymous-p (buffer)
    t)

-- 
Aaron D. Ball <adb@broad.mit.edu>
Senior Systems Analyst
Broad Institute of MIT and Harvard







^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#1173: Acknowledgement (gnus/imap.el should quote quotes in password)
       [not found] ` <handler.1173.B.122409431211114.ack@emacsbugs.donarmstrong.com>
@ 2008-10-15 18:43   ` Aaron D. Ball
  2008-10-15 19:00   ` Aaron D. Ball
       [not found]   ` <mailman.1169.1224132508.25473.bug-gnu-emacs@gnu.org>
  2 siblings, 0 replies; 4+ messages in thread
From: Aaron D. Ball @ 2008-10-15 18:43 UTC (permalink / raw
  To: 1173

I was mistaken about that patch fixing the problem.  It had a syntax 
error, so I didn't get the IMAP server error message, just an Emacs 
error message that went by fast enough that I missed it.

If someone can provide a patch that (unlike mine) actually works, I'd 
appreciate that.  In the meantime I'll see if I can figure out elisp 
string replacement again---it's been a while.

-- 
Aaron D. Ball <adb@broad.mit.edu>
Senior Systems Analyst
Broad Institute of MIT and Harvard






^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#1173: Acknowledgement (gnus/imap.el should quote quotes in password)
       [not found] ` <handler.1173.B.122409431211114.ack@emacsbugs.donarmstrong.com>
  2008-10-15 18:43   ` bug#1173: Acknowledgement (gnus/imap.el should quote quotes in password) Aaron D. Ball
@ 2008-10-15 19:00   ` Aaron D. Ball
       [not found]   ` <mailman.1169.1224132508.25473.bug-gnu-emacs@gnu.org>
  2 siblings, 0 replies; 4+ messages in thread
From: Aaron D. Ball @ 2008-10-15 19:00 UTC (permalink / raw
  To: 1173

Looks like all I needed was to specify that the replacement is literal. 
  This patch let me read my mail for real.

--- lisp/gnus/imap.el~  2008-01-06 20:22:42.000000000 -0500
+++ lisp/gnus/imap.el   2008-10-15 14:58:40.890800000 -0400
@@ -922,7 +922,7 @@
                           (lambda (user passwd)
                             (imap-ok-p (imap-send-command-wait
                                         (concat "LOGIN \"" user "\" \""
-                                               passwd "\""))))))
+ 
(replace-regexp-in-string "\"" "\\\"" passwd t t) "\""))))))

  (defun imap-anonymous-p (buffer)
    t)


-- 
Aaron D. Ball <adb@broad.mit.edu>
Senior Systems Analyst
Broad Institute of MIT and Harvard






^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: bug#1173: Acknowledgement (gnus/imap.el should quote quotes in password)
       [not found]   ` <mailman.1169.1224132508.25473.bug-gnu-emacs@gnu.org>
@ 2008-10-16 16:16     ` Ted Zlatanov
  0 siblings, 0 replies; 4+ messages in thread
From: Ted Zlatanov @ 2008-10-16 16:16 UTC (permalink / raw
  To: bug-gnu-emacs

On Wed, 15 Oct 2008 15:00:22 -0400 "Aaron D. Ball" <adb@broad.mit.edu> wrote: 

ADB> Looks like all I needed was to specify that the replacement is
ADB> literal. This patch let me read my mail for real.

ADB> --- lisp/gnus/imap.el~  2008-01-06 20:22:42.000000000 -0500
ADB> +++ lisp/gnus/imap.el   2008-10-15 14:58:40.890800000 -0400
ADB> @@ -922,7 +922,7 @@
ADB>                           (lambda (user passwd)
ADB>                             (imap-ok-p (imap-send-command-wait
ADB>                                         (concat "LOGIN \"" user "\" \""
ADB> -                                               passwd "\""))))))
ADB> + (replace-regexp-in-string "\"" "\\\"" passwd t t) "\""))))))

ADB>  (defun imap-anonymous-p (buffer)
ADB>    t)

Aaron,

the latest CVS Gnus and Emacs have:

(defun imap-quote-specials (string)
  (with-temp-buffer
    (insert string)
    (goto-char (point-min))
    (while (re-search-forward "[\\\"]" nil t)
      (forward-char -1)
      (insert "\\")
      (forward-char 1))
    (buffer-string)))

(it gets called for user name, password, etc. and escapes backslash as
well)

I think that will solve your problem, if you can use a more recent Emacs
or Gnus.

Thanks
Ted


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-10-16 16:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-15 18:11 bug#1173: gnus/imap.el should quote quotes in password Aaron D. Ball
     [not found] ` <handler.1173.B.122409431211114.ack@emacsbugs.donarmstrong.com>
2008-10-15 18:43   ` bug#1173: Acknowledgement (gnus/imap.el should quote quotes in password) Aaron D. Ball
2008-10-15 19:00   ` Aaron D. Ball
     [not found]   ` <mailman.1169.1224132508.25473.bug-gnu-emacs@gnu.org>
2008-10-16 16:16     ` Ted Zlatanov

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.