Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
66fc66ed80 | ||
|
|
c970a42132 | ||
|
|
30ae54a952 |
6
ftp-srv.d.ts
vendored
6
ftp-srv.d.ts
vendored
@@ -78,7 +78,7 @@ export class FtpServer extends EventEmitter {
|
||||
|
||||
emitPromise(action: any, ...data: any[]): Promise<any>;
|
||||
|
||||
emit(action: any, ...data: any[]): void;
|
||||
// emit is exported from super class
|
||||
|
||||
setupTLS(_tls: boolean): boolean | {
|
||||
cert: string;
|
||||
@@ -108,7 +108,7 @@ export class FtpServer extends EventEmitter {
|
||||
whitelist?: Array<string>
|
||||
}) => void,
|
||||
reject: (err?: Error) => void
|
||||
) => void): EventEmitter;
|
||||
) => void): this;
|
||||
|
||||
on(event: "client-error", listener: (
|
||||
data: {
|
||||
@@ -116,7 +116,7 @@ export class FtpServer extends EventEmitter {
|
||||
context: string,
|
||||
error: Error,
|
||||
}
|
||||
) => void): EventEmitter;
|
||||
) => void): this;
|
||||
}
|
||||
|
||||
export {FtpServer as FtpSrv};
|
||||
|
||||
1643
package-lock.json
generated
1643
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -37,7 +37,6 @@
|
||||
"verify": "npm run verify:js --silent",
|
||||
"verify:js": "eslint -c config/verify/.eslintrc \"src/**/*.js\" \"test/**/*.js\" \"config/**/*.js\" && echo ✅ verify:js success",
|
||||
"verify:js:fix": "eslint --fix -c config/verify/.eslintrc \"src/**/*.js\" \"test/**/*.js\" \"config/**/*.js\" && echo ✅ verify:js:fix success",
|
||||
"verify:js:watch": "chokidar 'src/**/*.js' 'test/**/*.js' 'config/**/*.js' -c 'npm run verify:js:fix' --initial --silent",
|
||||
"verify:watch": "npm run verify:js:watch --silent"
|
||||
},
|
||||
"release": {
|
||||
@@ -63,7 +62,6 @@
|
||||
"devDependencies": {
|
||||
"@icetee/ftp": "^1.0.2",
|
||||
"chai": "^4.0.2",
|
||||
"chokidar-cli": "1.2.0",
|
||||
"condition-circle": "^1.6.0",
|
||||
"cross-env": "3.1.4",
|
||||
"cz-customizable": "5.2.0",
|
||||
@@ -76,7 +74,7 @@
|
||||
"eslint-plugin-node": "5.1.1",
|
||||
"husky": "0.13.3",
|
||||
"istanbul": "0.4.5",
|
||||
"mocha": "3.5.0",
|
||||
"mocha": "^5.2.0",
|
||||
"mocha-junit-reporter": "1.13.0",
|
||||
"mocha-multi-reporters": "1.1.5",
|
||||
"npm-run-all": "^4.1.3",
|
||||
|
||||
@@ -48,16 +48,7 @@ class Passive extends Connector {
|
||||
}
|
||||
this.log.trace({port, remoteAddress: socket.remoteAddress}, 'Passive connection fulfilled.');
|
||||
|
||||
if (this.connection.secure) {
|
||||
const secureContext = tls.createSecureContext(this.server._tls);
|
||||
const secureSocket = new tls.TLSSocket(socket, {
|
||||
isServer: true,
|
||||
secureContext
|
||||
});
|
||||
this.dataSocket = secureSocket;
|
||||
} else {
|
||||
this.dataSocket = socket;
|
||||
}
|
||||
this.dataSocket = socket;
|
||||
this.dataSocket.connected = true;
|
||||
this.dataSocket.setEncoding(this.connection.transferType);
|
||||
this.dataSocket.on('error', err => this.server && this.server.emit('client-error', {connection: this.connection, context: 'dataSocket', error: err}));
|
||||
@@ -68,8 +59,11 @@ class Passive extends Connector {
|
||||
};
|
||||
|
||||
this.dataSocket = null;
|
||||
this.dataServer = net.createServer({pauseOnConnect: true}, connectionHandler);
|
||||
|
||||
const serverOptions = Object.assign({}, this.connection.secure ? this.server._tls : {}, {pauseOnConnect: true});
|
||||
this.dataServer = (this.connection.secure ? tls : net).createServer(serverOptions, connectionHandler);
|
||||
this.dataServer.maxConnections = 1;
|
||||
|
||||
this.dataServer.on('error', err => this.server && this.server.emit('client-error', {connection: this.connection, context: 'dataServer', error: err}));
|
||||
this.dataServer.on('close', () => {
|
||||
this.log.trace('Passive server closed');
|
||||
|
||||
@@ -46,7 +46,7 @@ class FtpServer extends EventEmitter {
|
||||
return connection.reply(220, ...greeting, features)
|
||||
.finally(() => socket.resume());
|
||||
};
|
||||
const serverOptions = _.assign(this.isTLS ? this._tls : {}, {pauseOnConnect: true});
|
||||
const serverOptions = Object.assign({}, this.isTLS ? this._tls : {}, {pauseOnConnect: true});
|
||||
|
||||
this.server = (this.isTLS ? tls : net).createServer(serverOptions, serverConnectionHandler);
|
||||
this.server.on('error', err => this.log.error(err, '[Event] error'));
|
||||
|
||||
@@ -385,7 +385,7 @@ describe('Integration', function () {
|
||||
runFileSystemTests('binary');
|
||||
});
|
||||
|
||||
describe.skip('#EXPLICIT', function () {
|
||||
describe('#EXPLICIT', function () {
|
||||
before(() => {
|
||||
return server.close()
|
||||
.then(() => startServer('ftp://127.0.0.1:8880', {
|
||||
|
||||
Reference in New Issue
Block a user