Ignore:
Timestamp:
2010-03-15T01:25:47Z (9 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
9fca0657
Parents:
7e2b593
Message:

Oops.. Today's Jabber fix could get stuck in a somewhat infinite loop if a
Jabber server returns an empty <iq type="result"/> response to the session
establishment request (which is valid and actually done by the example, but
my test Jabberd shows different behaviour). Fixed.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/jabber/io.c

    r7e2b593 r315dd4c  
    380380                jd->flags |= JFLAG_WANT_SESSION;
    381381       
    382         /* This flag is already set if we authenticated via SASL, so now
    383            we can resume the session in the new stream, if we don't have
    384            to bind/initialize the session. */
    385         if( jd->flags & JFLAG_AUTHENTICATED && ( jd->flags & ( JFLAG_WANT_BIND | JFLAG_WANT_SESSION ) ) == 0 )
    386         {
    387                 if( !jabber_get_roster( ic ) )
    388                         return XT_ABORT;
    389         }
    390         else if( jd->flags & JFLAG_AUTHENTICATED )
    391         {
     382        if( jd->flags & JFLAG_AUTHENTICATED )
    392383                return jabber_pkt_bind_sess( ic, NULL, NULL );
    393         }
    394384       
    395385        return XT_HANDLED;
Note: See TracChangeset for help on using the changeset viewer.