ID
Origin
Name
Foodgroup
Service
Status
Version
0x0017, 0x0002
Client
BUCP__LOGIN_REQUEST
Unspecified
BUCP
Active
1.15
Client login request.
Foodgroup
uint16 (word)
00 17
Subgroup
uint16 (word)
00 02
Flags
uint16 (word)
00 00
Request ID
uint32 (dword)
00 00 00 00
SNAC Data
Unconfirmed: This SNAC contains no data
From Aleksandr Shutko: SNAC(17,02) BUCP__LOGIN_REQUEST
Client use this snac to login to server
(md5 login sequence ). Server should reply via
SNAC(17,03) , containing BOS address/cookie or
errorcode. Password hash creating:
You'll need password, authkey from SNAC(17,07) and RFC 1321 md5 routines:
<font color=red>#define AUTH_SALT_MD5 "AOL Instant Messenger (SM)"</font>
<font color=gray>/* calculate md5-hash to send to server */</font>
md5_init(&state);
md5_append(&state, (const md5_byte_t *)authkey, strlen(authkey));
md5_append(&state, (const md5_byte_t *)passwd, strlen(passwd));
md5_append(&state, (const md5_byte_t *)AUTH_SALT_MD5, strlen(AUTH_SALT_MD5));
md5_finish(&state, (md5_byte_t *)auth_hash);
<font color=gray>/* Now we ready send to server auth_hash array (16 bytes long) */</font>
00 17
word
SNAC family
00 02
word
SNAC subtype
00 00
word
SNAC flags
xx xx xx xx
dword
SNAC request-id
00 01
word
TLV.Type(0x01) - screen name
xx xx
word
TLV.Length
00 03
word
TLV.Type(0x03) - client id string
xx xx
word
TLV.Length
xx ..
string
Client id string (name, version)
00 25
word
TLV.Type(0x25) - password md5 hash
00 10
word
TLV.Length
xx xx xx xx
xx xx xx xx
xx xx xx xx
xx xx xx xx
array
password md5 hash
00 16
word
TLV.Type(0x16) - client id
00 02
word
TLV.Length
xx xx
word
Client id number
00 17
word
TLV.Type(0x17) - client major version
00 02
word
TLV.Length
xx xx
word
Client major version
00 18
word
TLV.Type(0x18) - client minor version
00 02
word
TLV.Length
xx xx
word
Client minor version
00 19
word
TLV.Type(0x19) - client lesser version
00 02
word
TLV.Length
xx xx
word
Client lesser version
00 1A
word
TLV.Type(0x1A) - client build number
00 02
word
TLV.Length
xx xx
word
Client build number
00 14
word
TLV.Type(0x14) - distribution number
00 04
word
TLV.Length
xx xx xx xx
dword
Distribution number
00 0F
word
TLV.Type(0x0F) - client language (2 symbols)
xx xx
word
TLV.Length
xx ..
string
Client language
00 0E
word
TLV.Type(0x0E) - client country (2 symbols)
xx xx
word
TLV.Length
xx ..
string
Client country
00 0F
word
TLV.Type(0x4A) - SSI use flag
00 01
word
TLV.Length
xx
char
SSI flag: 1 - SSI only, 0 - family 0x03
Example SNAC dump with flap header:
2A 02 50 0F 00 95 00 17 00 02 00 00 00 00 00 00 *.P.............
00 01 00 07 36 32 31 38 38 39 35 00 25 00 10 77 ....6218895.%..w
D2 88 A0 1B 2E 22 D0 8A 75 A6 34 DD 7C 7C A9 00 ....."..u.4.....
4C 00 00 00 03 00 2D 41 4F 4C 20 49 6E 73 74 61 L.....-AOL Insta
6E 74 20 4D 65 73 73 65 6E 67 65 72 2C 20 76 65 nt Messenger, ve
72 73 69 6F 6E 20 35 2E 31 2E 33 30 33 36 2F 57 rsion 5.1.3036/W
49 4E 33 32 00 16 00 02 01 09 00 17 00 02 00 05 IN32............
00 18 00 02 00 01 00 19 00 02 00 00 00 1A 00 02 ................
0B DC 00 14 00 04 00 00 00 D2 00 0F 00 02 65 6E ..............en
00 0E 00 02 75 73 00 4A 00 01 01 ....us.J...
BUCP SNACs
SNAC List
Expand
Subgroup
Origin
Name
0x0001
Any
BUCP__ERR
This is the error SNAC for the BUCP foodgroup.
0x0002
Client
BUCP__LOGIN_REQUEST
Client login request.
0x0003
Host
BUCP__LOGIN_RESPONSE
Host login response, will contain reconnect information with login cookie or an error code and/or URL.
0x0004
Client
BUCP__REGISTER_REQUEST
Client registration for legacy ICQ clients.
0x0005
Host
BUCP__REGISTER_RESPONSE
Host response to BUCP__REGISTER_REQUEST. May contain confirmation of registration or an error code and/or URL.
0x0006
Client
BUCP__CHALLENGE_REQUEST
Request challenge for login request.
0x0007
Host
BUCP__CHALLENGE_RESPONSE
Response to BUCP__CHALLENGE_REQUEST with challenge.
0x0008
Client
BUCP__ASASN_REQUEST
AOL Suggest A Screenname Request, suggests screennames based on other parameters.
0x0009
Host
BUCP__ASASN_RESPONSE
Response to BUCP__ASASN_REQUEST with a list of suggestions
0x000A
Host
BUCP__SECURID_REQUEST
Host SecurID request for client to continue logging in.
0x000B
Client
BUCP__SECURID_RESPONSE
Client response to BUCP__SECURID_RESPONSE with SecurID code.
0x000C
Client
BUCP__REGISTRATION_IMAGE_REQUEST
Request registration image, or CAPTCHA
0x000D
Host
BUCP__REGISTRATION_IMAGE_REPLY
Response to BUCP__REGISTRATION_IMAGE_REQUEST containing image information