changeset 578:b3ab662757a0

Fix connection issue
author Mikael Berthe <mikael@lilotux.net>
date Sun, 04 Dec 2005 11:51:47 +0100
parents 5c6d364130ee
children 0c67755e0fa7
files mcabber/src/jab_iq.c mcabber/src/jab_priv.h mcabber/src/jabglue.c
diffstat 3 files changed, 17 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/mcabber/src/jab_iq.c	Sun Dec 04 11:06:59 2005 +0100
+++ b/mcabber/src/jab_iq.c	Sun Dec 04 11:51:47 2005 +0100
@@ -163,22 +163,21 @@
     int iid = atoi(p);
 
     //scr_LogPrint(LPRINT_DEBUG, "iid = %d", iid);
+    scr_LogPrint(LPRINT_DEBUG, "iid = %d  sid = %d", iid, s_id); // XXX DBG XXX
+    scr_LogPrint(LPRINT_DEBUG, "jstate = %d", jstate); // XXX DBG XXX
     if (iid == s_id) {
-      if (!regmode) {
-        if (jstate == STATE_GETAUTH) {
-          if ((x = xmlnode_get_tag(xmldata, "query")) != NULL)
-            if (!xmlnode_get_tag(x, "digest")) {
-              jc->sid = 0;
-            }
+      if (jstate == STATE_GETAUTH) {
+        if ((x = xmlnode_get_tag(xmldata, "query")) != NULL)
+          if (!xmlnode_get_tag(x, "digest")) {
+            jc->sid = 0;
+          }
 
-          s_id = atoi(jab_auth(jc));
-          jstate = STATE_SENDAUTH;
-        } else {
-          gotloggedin();
-          jstate = STATE_LOGGED;
-        }
-      } else {
-        regdone = TRUE;
+        scr_LogPrint(LPRINT_DEBUG, "jc = %p", jc); // XXX DBG XXX
+        s_id = atoi(jab_auth(jc));
+        jstate = STATE_SENDAUTH;
+      } else if (jstate == STATE_SENDAUTH) {
+        gotloggedin();
+        jstate = STATE_LOGGED;
       }
       return;
     }
--- a/mcabber/src/jab_priv.h	Sun Dec 04 11:06:59 2005 +0100
+++ b/mcabber/src/jab_priv.h	Sun Dec 04 11:51:47 2005 +0100
@@ -7,19 +7,19 @@
 
 #define JABBER_AGENT_GROUP "Jabber Agents"
 
-static enum {
+enum enum_jstate {
   STATE_CONNECTING,
   STATE_GETAUTH,
   STATE_SENDAUTH,
   STATE_LOGGED
-} jstate;
+};
 
 struct T_presence {
   enum imstatus st;
   const char *msg;
 };
 
-extern int regmode, regdone;
+extern enum enum_jstate jstate;
 extern int s_id;
 
 char *jidtodisp(const char *jid);
--- a/mcabber/src/jabglue.c	Sun Dec 04 11:06:59 2005 +0100
+++ b/mcabber/src/jabglue.c	Sun Dec 04 11:51:47 2005 +0100
@@ -37,7 +37,7 @@
 #define JABBERSSLPORT   5223
 
 jconn jc;
-int regmode, regdone;
+enum enum_jstate jstate;
 
 char imstatus2char[imstatus_size+1] = {
     '_', 'o', 'i', 'f', 'd', 'n', 'a', '\0'