From 3863d5cf49625cae2793c0f8fdb5fc58360e6d97 Mon Sep 17 00:00:00 2001 From: Riley Testut Date: Thu, 2 Mar 2023 17:07:38 -0600 Subject: [PATCH] [AltServer] Removes unnecessary #available checks --- AltServer/AnisetteDataManager.swift | 38 ++++++++++------------------ AltServer/Plugin/PluginManager.swift | 20 ++++----------- AltServer/Plugin/PluginVersion.swift | 4 --- 3 files changed, 19 insertions(+), 43 deletions(-) diff --git a/AltServer/AnisetteDataManager.swift b/AltServer/AnisetteDataManager.swift index a54cf02f..b5c26afb 100644 --- a/AltServer/AnisetteDataManager.swift +++ b/AltServer/AnisetteDataManager.swift @@ -53,31 +53,22 @@ class AnisetteDataManager: NSObject func requestAnisetteData(_ completion: @escaping (Result) -> Void) { - if #available(macOS 10.15, *) - { - self.requestAnisetteDataFromXPCService { (result) in - do - { - let anisetteData = try result.get() - completion(.success(anisetteData)) - } - catch CocoaError.xpcConnectionInterrupted - { - // SIP and/or AMFI are not disabled, so fall back to Mail plug-in. - self.requestAnisetteDataFromPlugin { (result) in - completion(result) - } - } - catch - { - completion(.failure(error)) + self.requestAnisetteDataFromXPCService { (result) in + do + { + let anisetteData = try result.get() + completion(.success(anisetteData)) + } + catch CocoaError.xpcConnectionInterrupted + { + // SIP and/or AMFI are not disabled, so fall back to Mail plug-in. + self.requestAnisetteDataFromPlugin { (result) in + completion(result) } } - } - else - { - self.requestAnisetteDataFromPlugin { (result) in - completion(result) + catch + { + completion(.failure(error)) } } } @@ -96,7 +87,6 @@ class AnisetteDataManager: NSObject private extension AnisetteDataManager { - @available(macOS 10.15, *) func requestAnisetteDataFromXPCService(completion: @escaping (Result) -> Void) { guard let proxy = self.xpcConnection.remoteObjectProxyWithErrorHandler({ (error) in diff --git a/AltServer/Plugin/PluginManager.swift b/AltServer/Plugin/PluginManager.swift index 3b2f2202..ddb8b97a 100644 --- a/AltServer/Plugin/PluginManager.swift +++ b/AltServer/Plugin/PluginManager.swift @@ -272,12 +272,6 @@ private extension PluginManager return completionHandler(.success(pluginVersion)) } - guard #available(macOS 11, *) else { - // macOS versions prior to 11.0 require Mail plug-ins be *unsigned*, - // so we hardcode these versions to use the unsigned AltPlugin v1.0. - return completionHandler(.success(.v1_0)) - } - let dataTask = self.session.dataTask(with: .altPluginUpdateURL) { (data, response, error) in do { @@ -313,16 +307,12 @@ private extension PluginManager do { let fileURL = try result.get() + let data = try Data(contentsOf: fileURL) + let sha256Hash = SHA256.hash(data: data) + let hashString = sha256Hash.compactMap { String(format: "%02x", $0) }.joined() - if #available(OSX 10.15, *) - { - let data = try Data(contentsOf: fileURL) - let sha256Hash = SHA256.hash(data: data) - let hashString = sha256Hash.compactMap { String(format: "%02x", $0) }.joined() - - print("Comparing Mail plug-in hash (\(hashString)) against expected hash (\(pluginVersion.sha256Hash))...") - guard hashString == pluginVersion.sha256Hash else { throw PluginError.mismatchedHash(hash: hashString, expectedHash: pluginVersion.sha256Hash) } - } + print("Comparing Mail plug-in hash (\(hashString)) against expected hash (\(pluginVersion.sha256Hash))...") + guard hashString == pluginVersion.sha256Hash else { throw PluginError.mismatchedHash(hash: hashString, expectedHash: pluginVersion.sha256Hash) } completion(.success(fileURL)) } diff --git a/AltServer/Plugin/PluginVersion.swift b/AltServer/Plugin/PluginVersion.swift index 72f7bcb5..1306231a 100644 --- a/AltServer/Plugin/PluginVersion.swift +++ b/AltServer/Plugin/PluginVersion.swift @@ -14,10 +14,6 @@ struct PluginVersion: Decodable var sha256Hash: String var version: String - static let v1_0 = PluginVersion(url: URL(string: "https://f000.backblazeb2.com/file/altstore/altserver/altplugin/1_0.zip")!, - sha256Hash: "070e9b7e1f74e7a6474d36253ab5a3623ff93892acc9e1043c3581f2ded12200", - version: "1.0") - static let v1_9 = PluginVersion(url: Bundle.main.url(forResource: "AltPlugin", withExtension: "zip")!, sha256Hash: "83ead26d8776ef6850e06fe3d1c5c5559aca284718b1cf3cc49785ba6b1e2849", version: "1.9")