diff --git a/Blink.xcodeproj/project.pbxproj b/Blink.xcodeproj/project.pbxproj index 7dd6662fe..3e2b9a893 100644 --- a/Blink.xcodeproj/project.pbxproj +++ b/Blink.xcodeproj/project.pbxproj @@ -911,6 +911,7 @@ BDD6D148275951D900E76F1F /* BKGlobalSSHConfig.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BKGlobalSSHConfig.swift; sourceTree = ""; }; BDE7125C2A141E3100164F70 /* SSHAgentUserPrompt.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SSHAgentUserPrompt.swift; sourceTree = ""; }; BDE7C45B29DCAEFA005E033E /* FileLocationPathTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileLocationPathTests.swift; sourceTree = ""; }; + BDEEE36B2B8951D3003003FD /* get_frameworks.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = get_frameworks.sh; sourceTree = ""; }; C94437551D8311960096F84E /* BKResource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BKResource.h; sourceTree = ""; }; C94437561D8311960096F84E /* BKResource.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BKResource.m; sourceTree = ""; }; C944375F1D831CD30096F84E /* Themes */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Themes; sourceTree = ""; }; @@ -2309,6 +2310,7 @@ EA0BA1821C0CC57B00719C1A = { isa = PBXGroup; children = ( + BDEEE36B2B8951D3003003FD /* get_frameworks.sh */, D23FFC69261C2D46003E9227 /* template_setup.xcconfig */, D27D01232615F1BD00128C23 /* developer_setup.xcconfig */, D2C243F7238E44960082C69C /* KB */, diff --git a/Blink/Commands/mosh/MoshBootstrap.swift b/Blink/Commands/mosh/MoshBootstrap.swift index 932afcdeb..9fd104ad1 100644 --- a/Blink/Commands/mosh/MoshBootstrap.swift +++ b/Blink/Commands/mosh/MoshBootstrap.swift @@ -134,7 +134,7 @@ extension Architecture { public var downloadableDescription: String { switch self { case .X86_64: - return "x86_64" + return "amd64" case .Aarch64: return "arm64" case .Arm64: diff --git a/Blink/SpaceController.swift b/Blink/SpaceController.swift index 845c34eee..2df0d6fdf 100644 --- a/Blink/SpaceController.swift +++ b/Blink/SpaceController.swift @@ -38,6 +38,7 @@ import MBProgressHUD import SwiftUI +// MARK: UIViewController class SpaceController: UIViewController { struct UIState: UserActivityCodable { @@ -536,6 +537,7 @@ class SpaceController: UIViewController { } +// MARK: UIStateRestorable extension SpaceController: UIStateRestorable { func restore(withState state: UIState) { _viewportsKeys = state.keys @@ -566,6 +568,7 @@ extension SpaceController: UIStateRestorable { } } +// MARK: UIPageViewControllerDelegate extension SpaceController: UIPageViewControllerDelegate { public func pageViewController( _ pageViewController: UIPageViewController, @@ -586,6 +589,7 @@ extension SpaceController: UIPageViewControllerDelegate { } } +// MARK: UIPageViewControllerDataSource extension SpaceController: UIPageViewControllerDataSource { private func _controller(controller: UIViewController, advancedBy: Int) -> UIViewController? { guard let ctrl = controller as? TermController else { @@ -616,6 +620,7 @@ extension SpaceController: UIPageViewControllerDataSource { } +// MARK: TermControlDelegate extension SpaceController: TermControlDelegate { func terminalHangup(control: TermController) { @@ -1146,6 +1151,7 @@ extension SpaceController { } +// MARK: CommandsHUDDelegate extension SpaceController: CommandsHUDDelegate { @objc func currentTerm() -> TermController? { if let currentKey = _currentKey { @@ -1157,6 +1163,8 @@ extension SpaceController: CommandsHUDDelegate { @objc func spaceController() -> SpaceController? { self } } +// MARK: SnippetContext + extension SpaceController: SnippetContext { func _presentSnippetsController(receiver: SpaceController) { diff --git a/SSH/SSHClient.swift b/SSH/SSHClient.swift index 58163b369..41a3cfe0b 100644 --- a/SSH/SSHClient.swift +++ b/SSH/SSHClient.swift @@ -276,7 +276,14 @@ public class SSHClient { let command = String(cString: cmd!) // Will break if unconfigured. It can be considered // a code error. - return ctxt.proxyCb!(command, inSock, outSock) + guard let proxyCb = ctxt.proxyCb else { + ctxt.log.message("No proxy callback configured. Cannot run ProxyCommand", SSH_LOG_WARN) + shutdown(inSock, SHUT_RDWR) + shutdown(outSock, SHUT_RDWR) + return + } + + return proxyCb(command, inSock, outSock) } }