Skip to content

Commit 7861baf

Browse files
committed
fix: also preserve original port for pgpass lookup through SSH tunnel
1 parent fc73dff commit 7861baf

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

TablePro/Core/Database/DatabaseDriver.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -337,9 +337,11 @@ enum DatabaseDriverFactory {
337337
private static func resolvePassword(for connection: DatabaseConnection) -> String {
338338
if connection.usePgpass {
339339
let pgpassHost = connection.additionalFields["pgpassOriginalHost"] ?? connection.host
340+
let pgpassPort = connection.additionalFields["pgpassOriginalPort"]
341+
.flatMap(Int.init) ?? connection.port
340342
return PgpassReader.resolve(
341343
host: pgpassHost.isEmpty ? "localhost" : pgpassHost,
342-
port: connection.port,
344+
port: pgpassPort,
343345
database: connection.database,
344346
username: connection.username
345347
) ?? ""

TablePro/Core/Database/DatabaseManager.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -443,6 +443,7 @@ final class DatabaseManager {
443443
var effectiveFields = connection.additionalFields
444444
if connection.usePgpass {
445445
effectiveFields["pgpassOriginalHost"] = connection.host
446+
effectiveFields["pgpassOriginalPort"] = String(connection.port)
446447
}
447448

448449
return DatabaseConnection(

0 commit comments

Comments
 (0)