[Pidgin] #9034: Pidgin won't let me block people

Pidgin trac at pidgin.im
Thu Mar 17 17:07:54 EDT 2011


#9034: Pidgin won't let me block people
----------------------+-----------------------------------------------------
 Reporter:  jewel460  |        Owner:  MarkDoliner
     Type:  defect    |       Status:  new        
Milestone:            |    Component:  AIM        
  Version:  2.5.5     |   Resolution:             
 Keywords:            |  
----------------------+-----------------------------------------------------

Comment(by dustin):

 Unfortunately, it's probably hard to compare the behaviour of Pidgin and
 other clients that way.
 As I mentioned in #13223, other clients generate Buddy IDs with random
 numbers, so hitting an occupied bid is very unlikely for those. (See
 [http://developer.pidgin.im/attachment/ticket/9034/comparison-
 icq_invisibility-debug.log debug log] as an example.)

 A while ago MatthiasL mentioned an alternative (but outdated) method of
 setting visibility through BOS snacs (family 0x0009), ticket #12933.

 That method would send only the buddy name and leave the rest to server.
 I wondered whether that was how the bids where generated, so I had a look
 at some other clients with wireshark to see how setting
 visibility/blocking was done.

 Comparing ICQ7.2, Miranda, QIP and Trillian ...

 * All of the clients use the SSI list method (snac family 0x0013).
 * All generate Buddy/Item IDs by some kind of randomization (probably
 without any special meaning, see excerpt from Miranda code).
 * (random IDs are not only used for visibility/etc. entries, but also for
 the actual buddy entries).
 * For all clients, the generated bids stay below 0x8000.


 Particularities:

 Miranda

 * sends an additional (useless?) BOS snac before the SSI snac.
 * uses a range for bids from 0x1000 to 0x7fff (see
 [http://developer.pidgin.im/attachment/ticket/9034/excerpt_miranda-
 icq_servlist.cpp excerpt from Miranda code]).

 ICQ7.2

 * seems to use to full range of bids (lowest bid was 0x0051, see debug
 log).

 Trillian

 * lowest bid found was 0x0fd3.

 qip 2010

 * seems to use a rather small range, all bids found are between 0x0800 and
 0x1000.


 Maybe there is some protocol magic to make the remaining SSI entries
 appear, but I don't see how.

 Moreover, Pidgin seems to be the only client that cares about this, so
 it's hard to tell if there is a bug-free behaviour, anyway.

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


More information about the Tracker mailing list