|
| 1 | +var _ = require('underscore'); |
1 | 2 | var Auth = require('../../../Auth');
|
2 | 3 | var OutgoingPacket = require('../../../OutgoingPacket');
|
3 | 4 |
|
4 | 5 | // Client_Authentication_Packet (MySql >= 4.1)
|
5 | 6 | // http://forge.mysql.com/wiki/MySQL_Internals_ClientServer_Protocol#Client_Authentication_Packet
|
6 | 7 | module.exports = AuthenticationPacket;
|
7 | 8 | function AuthenticationPacket(properties) {
|
8 |
| - this._number = properties.number; |
9 |
| - this._scrambleBuffer = properties.scrambleBuffer; |
10 |
| - this._password = properties.password; |
11 |
| - this._user = properties.user; |
12 |
| - this._database = properties.database; |
13 |
| - this._flags = properties.flags; |
14 |
| - this._maxPacketSize = properties.maxPacketSize; |
15 |
| - this._charsetNumber = properties.charsetNumber; |
| 9 | + this.number = null; |
| 10 | + this.scrambleBuffer = null; |
| 11 | + this.password = null; |
| 12 | + this.user = null; |
| 13 | + this.database = null; |
| 14 | + this.flags = null; |
| 15 | + this.maxPacketSize = null; |
| 16 | + this.charsetNumber = null; |
| 17 | + |
| 18 | + _.extend(this, properties); |
16 | 19 | }
|
17 | 20 |
|
18 | 21 | AuthenticationPacket.prototype.toBuffer = function() {
|
19 |
| - var token = Auth.token(this._password, this._scrambleBuffer); |
| 22 | + var token = Auth.token(this.password, this.scrambleBuffer); |
20 | 23 | var packetSize = (
|
21 | 24 | 4 + 4 + 1 + 23 +
|
22 |
| - this._user.length + 1 + |
| 25 | + this.user.length + 1 + |
23 | 26 | token.length + 1 +
|
24 |
| - this._database.length + 1 |
| 27 | + this.database.length + 1 |
25 | 28 | );
|
26 |
| - var packet = new OutgoingPacket(packetSize, this._number); |
| 29 | + var packet = new OutgoingPacket(packetSize, this.number); |
27 | 30 |
|
28 |
| - packet.writeNumber(4, this._flags); |
29 |
| - packet.writeNumber(4, this._maxPacketSize); |
30 |
| - packet.writeNumber(1, this._charsetNumber); |
| 31 | + packet.writeNumber(4, this.flags); |
| 32 | + packet.writeNumber(4, this.maxPacketSize); |
| 33 | + packet.writeNumber(1, this.charsetNumber); |
31 | 34 | packet.writeFiller(23);
|
32 |
| - packet.writeNullTerminated(this._user); |
| 35 | + packet.writeNullTerminated(this.user); |
33 | 36 | packet.writeLengthCoded(token);
|
34 |
| - packet.writeNullTerminated(this._database); |
| 37 | + packet.writeNullTerminated(this.database); |
35 | 38 |
|
36 | 39 | return packet.buffer;
|
37 | 40 | };
|
0 commit comments