CMSG AUTH SESSION: Difference between revisions

From wowdev
Jump to navigation Jump to search
(Add categories)
(Add next/previous packets)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''CMSG_AUTH_SESSION''' is a [[World Packet]] that initiates the connection between the client and the world server.
'''CMSG_AUTH_SESSION''' is a [[World Packet]] that initiates the connection between the client and the world server. It is preceded by [[SMSG_AUTH_CHALLENGE]] and succeeded by [[SMSG_AUTH_RESPONSE]].


It is one of only two world packets with unencrypted headers, the other being [[SMSG_AUTH_CHALLENGE]].
It is one of only two world packets with unencrypted headers, the other being [[SMSG_AUTH_CHALLENGE]].


{{CMSG_Header}}
{{CMSG_Header|opcode=0x1ED}}


{| class="wikitable"
{| class="wikitable"
Line 29: Line 29:




[[Category:Packet]]
{{CMSG_Categories}}
[[Category:World_Packets]]
[[Category:Login]]
[[Category:Packet/Login]]

Latest revision as of 19:55, 9 June 2021

CMSG_AUTH_SESSION is a World Packet that initiates the connection between the client and the world server. It is preceded by SMSG_AUTH_CHALLENGE and succeeded by SMSG_AUTH_RESPONSE.

It is one of only two world packets with unencrypted headers, the other being SMSG_AUTH_CHALLENGE.

CMSG Header
Offset Size / Endianness Type Name Description
0x0 2 / Big uint16 size Size of the packet including the opcode field.
0x2 4 / Little uint32 opcode Opcode for the packet.
Determines the structure of the body.
Always 0x1ED.


Body
Offset Size / Endianness Type Name Description
0x0 4 / Little uint32 build Revision of client.
0x4 4 / Little uint32 server_id
0x8 - / Big char[] username Null terminated string.
- 4 / Little uint32 client_seed Client seed for proving knowledge of session key.
- 20 / Little uint8[20] client_proof Client proof of knowing the session key.
- 4 / Little uint32 decompressed_addon_info_size
- 4 / Little uint8[] compressed_addon_info This field lasts until the end of the packet.
The size of this can be calculated from the size field in the header.