D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
etb1lp46s9ed
/
washeet.softurecs.com
/
node_modules
/
mysql2
/
lib
/
packets
/
Filename :
auth_switch_request.js
back
Copy
'use strict'; // http://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::AuthSwitchRequest const Packet = require('../packets/packet'); class AuthSwitchRequest { constructor(opts) { this.pluginName = opts.pluginName; this.pluginData = opts.pluginData; } toPacket() { const length = 6 + this.pluginName.length + this.pluginData.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(0xfe); // TODO: use server encoding packet.writeNullTerminatedString(this.pluginName, 'cesu8'); packet.writeBuffer(this.pluginData); return packet; } static fromPacket(packet) { packet.readInt8(); // marker // assert marker == 0xfe? // TODO: use server encoding const name = packet.readNullTerminatedString('cesu8'); const data = packet.readBuffer(); return new AuthSwitchRequest({ pluginName: name, pluginData: data, }); } } module.exports = AuthSwitchRequest;