1234567891011121314151617181920212223242526272829303132 |
- 'use strict';
- //const PLUGIN_NAME = 'mysql_native_password';
- const auth41 = require('../auth_41.js');
- module.exports = pluginOptions => ({ connection, command }) => {
- const password =
- command.password || pluginOptions.password || connection.config.password;
- const passwordSha1 =
- command.passwordSha1 ||
- pluginOptions.passwordSha1 ||
- connection.config.passwordSha1;
- return data => {
- const authPluginData1 = data.slice(0, 8);
- const authPluginData2 = data.slice(8, 20);
- let authToken;
- if (passwordSha1) {
- authToken = auth41.calculateTokenFromPasswordSha(
- passwordSha1,
- authPluginData1,
- authPluginData2
- );
- } else {
- authToken = auth41.calculateToken(
- password,
- authPluginData1,
- authPluginData2
- );
- }
- return authToken;
- };
- };
|