Ticket #1663: licq-ru_login_fix.patch

File licq-ru_login_fix.patch, 1.7 kB (added by emostar, 14 months ago)

updated to fix a mistake

  • icqpacket.cpp

     
    135135}; 
    136136#endif 
    137137 
     138static unsigned short login_fix [] = { 
     139  5695, 23595, 23620, 23049, 0x2886, 0x2493, 23620, 23049, 2853, 17372, 1255, 1796, 1657, 13606, 1930, 23918, 31234, 30120, 0x1BEA, 0x5342, 0x30CC, 0x2294, 0x5697, 0x25FA, 0x3303, 0x078A, 0x0FC5, 0x25D6, 0x26EE,0x7570, 0x7F33, 0x4E94, 0x07C9, 0x7339, 0x42A8 
     140}; 
     141 
    138142void Encrypt_Server(CBuffer* /* buffer */) 
    139143{ 
    140144#if ICQ_VERSION == 2 
     
    275279 
    276280//======Server TCP============================================================ 
    277281bool CSrvPacketTcp::s_bRegistered = false; 
    278 unsigned short CSrvPacketTcp::s_nSequence[32] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
    279                                                   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; 
     282unsigned short CSrvPacketTcp::s_nSequence[32] = { 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 
     283                                                  0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff }; 
    280284unsigned short CSrvPacketTcp::s_nSubSequence = 0; 
    281285pthread_mutex_t CSrvPacketTcp::s_xMutex = PTHREAD_MUTEX_INITIALIZER; 
    282286 
     
    311315{ 
    312316  pthread_mutex_lock(&s_xMutex); 
    313317  if (s_nSequence[m_nService] == 0xffff) 
    314     s_nSequence[m_nService] = rand() & 0x7fff; 
     318    s_nSequence[m_nService] = login_fix[ rand() % (sizeof(login_fix)/sizeof(login_fix[0])-1) ]; 
    315319  m_nSequence = s_nSequence[m_nService]++; 
    316320  s_nSequence[m_nService] &= 0x7fff; 
    317321  pthread_mutex_unlock(&s_xMutex);