|
1 | 1 | // An experimental fake MySQL server for tricky integration tests. Expanded
|
2 | 2 | // as needed.
|
3 | 3 |
|
4 |
| -var Buffer = require('safe-buffer').Buffer; |
5 |
| -var common = require('./common'); |
6 |
| -var Charsets = common.Charsets; |
7 |
| -var Crypto = require('crypto'); |
8 |
| -var Net = require('net'); |
9 |
| -var tls = require('tls'); |
10 |
| -var Packets = common.Packets; |
11 |
| -var PacketWriter = common.PacketWriter; |
12 |
| -var Parser = common.Parser; |
13 |
| -var Types = common.Types; |
14 |
| -var Auth = require(common.lib + '/protocol/Auth'); |
15 |
| -var Errors = common.Errors; |
16 |
| -var EventEmitter = require('events').EventEmitter; |
17 |
| -var Util = require('util'); |
| 4 | +var Buffer = require('safe-buffer').Buffer; |
| 5 | +var common = require('./common'); |
| 6 | +var Charsets = common.Charsets; |
| 7 | +var ClientConstants = common.ClientConstants; |
| 8 | +var Crypto = require('crypto'); |
| 9 | +var Net = require('net'); |
| 10 | +var tls = require('tls'); |
| 11 | +var Packets = common.Packets; |
| 12 | +var PacketWriter = common.PacketWriter; |
| 13 | +var Parser = common.Parser; |
| 14 | +var Types = common.Types; |
| 15 | +var Auth = require(common.lib + '/protocol/Auth'); |
| 16 | +var Errors = common.Errors; |
| 17 | +var EventEmitter = require('events').EventEmitter; |
| 18 | +var Util = require('util'); |
18 | 19 |
|
19 | 20 | module.exports = FakeServer;
|
20 | 21 | Util.inherits(FakeServer, EventEmitter);
|
@@ -257,8 +258,8 @@ FakeConnection.prototype._handleQueryPacket = function _handleQueryPacket(packet
|
257 | 258 | this._parser.resetPacketNumber();
|
258 | 259 | };
|
259 | 260 |
|
260 |
| -FakeConnection.prototype._parsePacket = function(header) { |
261 |
| - var Packet = this._determinePacket(header); |
| 261 | +FakeConnection.prototype._parsePacket = function() { |
| 262 | + var Packet = this._determinePacket(); |
262 | 263 | var packet = new Packet({protocol41: true});
|
263 | 264 |
|
264 | 265 | packet.parse(this._parser);
|
@@ -350,15 +351,11 @@ FakeConnection.prototype._parsePacket = function(header) {
|
350 | 351 | }
|
351 | 352 | };
|
352 | 353 |
|
353 |
| -FakeConnection.prototype._determinePacket = function(header) { |
| 354 | +FakeConnection.prototype._determinePacket = function _determinePacket() { |
354 | 355 | if (!this._clientAuthenticationPacket) {
|
355 |
| - // first packet phase |
356 |
| - |
357 |
| - if (header.length === 32) { |
358 |
| - return Packets.SSLRequestPacket; |
359 |
| - } |
360 |
| - |
361 |
| - return Packets.ClientAuthenticationPacket; |
| 356 | + return !this._ssl && (this._parser.peak(1) << 8) & ClientConstants.CLIENT_SSL |
| 357 | + ? Packets.SSLRequestPacket |
| 358 | + : Packets.ClientAuthenticationPacket; |
362 | 359 | }
|
363 | 360 |
|
364 | 361 | if (this._handshakeOptions.oldPassword && !this._oldPasswordPacket) {
|
|
0 commit comments