Compare commits

...

2 Commits

Author SHA1 Message Date
3596d35f45 15.0.2
Some checks failed
Default (tags) / security (push) Successful in 41s
Default (tags) / test (push) Failing after 2m10s
Default (tags) / release (push) Has been skipped
Default (tags) / metadata (push) Has been skipped
2025-05-10 00:28:45 +00:00
8dd222443d fix: Make SmartProxy work with pure route-based configuration 2025-05-10 00:28:35 +00:00
2 changed files with 15 additions and 9 deletions

View File

@ -1,6 +1,6 @@
{
"name": "@push.rocks/smartproxy",
"version": "15.0.1",
"version": "15.0.2",
"private": false,
"description": "A powerful proxy package with unified route-based configuration for high traffic management. Features include SSL/TLS support, flexible routing patterns, WebSocket handling, advanced security options, and automatic ACME certificate management.",
"main": "dist_ts/index.js",

View File

@ -301,22 +301,28 @@ export class RouteConnectionHandler {
// Setup direct connection with default settings
let targetHost: string;
let targetPort: number;
if (isRoutedOptions(this.settings) && this.settings.defaults?.target) {
// Use defaults from routed configuration
targetHost = this.settings.defaults.target.host;
targetPort = this.settings.defaults.target.port;
} else {
} else if (this.settings.targetIP && this.settings.toPort) {
// Fall back to legacy settings
targetHost = this.settings.targetIP || 'localhost';
targetHost = this.settings.targetIP;
targetPort = this.settings.toPort;
} else {
// No default target available, terminate the connection
console.log(`[${connectionId}] No default target configured. Closing connection.`);
socket.end();
this.connectionManager.cleanupConnection(record, 'no_default_target');
return;
}
return this.setupDirectConnection(
socket,
record,
undefined,
serverName,
socket,
record,
undefined,
serverName,
initialChunk,
undefined,
targetHost,