SNAC(01,02)  CLI_READY  

This is the last snac in protocol negotiation sequence. It tells BOS that we are ready to go online. Client must send this snac within 30 seconds after signon, or the connection will be dropped. See also known families list.

 00 01   word   SNAC family
 00 02   word   SNAC subtype
 00 00   word   SNAC flags
 xx xx xx xx   dword   SNAC request-id
 xx xx   word   family number #1
 xx xx   word   family #1 version
 xx xx   word   family #1 tool id; see comments below.
 xx xx   word   family #1 tool version
 ...    ...    ...
 xx xx   word   family number #n
 xx xx   word   family #n version
 xx xx   word   family #n tool id
 xx xx   word   family #n tool version

Some years ago in protocol version "2" tool id field has been used to describe client software release (java, mac, win16, win32, mac68k, macppc). It seems what value is from the set of values for TLV(0x16) in the following list. Also i've seen combination of tool_id & tool_version in windows ICQ client protocol dll.

Example SNAC dump with flap header:

  2A 02 22 A3 00 5A 00 01  00 02 00 00 00 00 00 02 *."..Z..........
  00 01 00 03 01 10 04 7B  00 13 00 02 01 10 04 7B ................
  00 02 00 01 01 01 04 7B  00 03 00 01 01 10 04 7B ................
  00 15 00 01 01 10 04 7B  00 04 00 01 01 10 04 7B ................
  00 06 00 01 01 10 04 7B  00 09 00 01 01 10 04 7B ................
  00 0A 00 01 01 10 04 7B  00 0B 00 01 01 10 04 7B ................


  Main | Basic | Login | Snaclist | Sequences | Misc | Changes | Credits | Terms