[Pidgin] #5212: MSNP14 hangs on connection to login.live.com

Pidgin trac at pidgin.im
Wed Apr 2 12:52:11 EDT 2008


#5212: MSNP14 hangs on connection to login.live.com
--------------------------+-------------------------------------------------
  Reporter:  NTAuthority  |       Owner:  khc             
      Type:  defect       |      Status:  new             
  Priority:  minor        |   Milestone:  Activate MSNPV14
 Component:  MSN          |     Version:  2.4.0           
Resolution:               |    Keywords:                  
   Pending:  0            |  
--------------------------+-------------------------------------------------
Comment (by tomgr):

 Replying to [comment:8 Maiku]:
 > I just tried out your patch and it works quite well. I just want to
 comment on two things. Firstly, I'm not certain doubling the buffer size
 is all that necessary. For a normal login for me, the packet sizes I get
 are 5392, 13941, 2147, 6469, 1468, 16880, 1709, and 761. There are only
 two that go over the 8192 buffer. One of which is the address book which
 should be severely shortened once we get partial address book updates
 working.
 >

 You're quite right however the packet that causes problems is the one of
 length 13941. On my system if I leave the packet size at 8192 when it
 tries to receive that packet it fails every time (with the
 errSSLFatalAlert). It downloads the first 8192 (I guess) bytes and then
 immediately fails.

 > Secondly, There's a bit of logic in the current version that I didn't
 see duplicated in your patch. In the case of:
 >
 > {{{
 > cnt < 0 && errno == EAGAIN && count == 0
 > }}}
 >
 > it returns right away. It doesn't need to process the packet if it's an
 EAGAIN error and nothing new has been read. I get several of these between
 one of the headers and the rest of the packet. So, without it, it
 unnecessarily processes the packet several times before the whole packet
 is retrieved.
 >

 You're quite right, I managed to completely miss that!

 > I'll upload what I came up with to see what you think. It includes your
 patch for simplicity.

 It looks good to me but only works with the buffer size of 16384 (I
 retried just now to check)!

-- 
Ticket URL: <http://developer.pidgin.im/ticket/5212#comment:9>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list