Update of /cvsroot/emacs-jabber/emacs-jabber
In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv9948
Modified Files:
jabber-logon.el
Log Message:
Revision: ma...@fr...--2005/emacs-jabber--cvs-head--0--patch-438
Creator: Magnus Henoch <ma...@fr...>
Make sure we always send a resource in legacy authentication
Index: jabber-logon.el
===================================================================
RCS file: /cvsroot/emacs-jabber/emacs-jabber/jabber-logon.el,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- jabber-logon.el 17 Sep 2007 20:25:44 -0000 1.18
+++ jabber-logon.el 21 Jan 2008 21:06:58 -0000 1.19
@@ -1,6 +1,6 @@
;; jabber-logon.el - logon functions
-;; Copyright (C) 2003, 2004, 2007 - Magnus Henoch - ma...@fr...
+;; Copyright (C) 2003, 2004, 2007, 2008 - Magnus Henoch - ma...@fr...
;; Copyright (C) 2002, 2003, 2004 - tom berger - ob...@in...
;; This file is a part of jabber.el.
@@ -54,14 +54,20 @@
;; If auth is still nil, user cancelled process somewhere
(if auth
- (jabber-send-iq jc (plist-get (fsm-get-state-data jc) :server)
- "set"
- `(query ((xmlns . "jabber:iq:auth"))
- (username () ,(plist-get (fsm-get-state-data jc) :username))
- ,auth
- (resource () ,(plist-get (fsm-get-state-data jc) :resource)))
- #'jabber-process-logon t
- #'jabber-process-logon nil)
+ (progn
+ ;; For legacy authentication we must specify a resource.
+ (unless (plist-get (fsm-get-state-data jc) :resource)
+ ;; Yes, this is ugly. Where is my encapsulation?
+ (plist-put (fsm-get-state-data jc) :resource "emacs-jabber"))
+
+ (jabber-send-iq jc (plist-get (fsm-get-state-data jc) :server)
+ "set"
+ `(query ((xmlns . "jabber:iq:auth"))
+ (username () ,(plist-get (fsm-get-state-data jc) :username))
+ ,auth
+ (resource () ,(plist-get (fsm-get-state-data jc) :resource)))
+ #'jabber-process-logon t
+ #'jabber-process-logon nil))
(fsm-send jc :authentication-failure))))
(defun jabber-process-logon (jc xml-data closure-data)
|