class Mysql::Protocol::AuthenticationPacket
Authentication packet
Public Class Methods
Source
# File lib/mysql/protocol.rb, line 784 def self.serialize(client_flags, max_packet_size, charset_number, username, scrambled_password, databasename, auth_plugin, connect_attrs) data = [ client_flags, max_packet_size, charset_number, "", # always 0x00 * 23 username, Packet.lcs(scrambled_password), ] pack = +"VVCa23Z*A*" if databasename data.push databasename pack.concat "Z*" end data.push auth_plugin pack.concat "Z*" attr = connect_attrs.map{|k, v| [Packet.lcs(k.to_s), Packet.lcs(v.to_s)]}.flatten.join data.pack(pack) + Packet.lcb(attr.size)+attr end