Mercurial > hg
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'