From d1f8f256d9ababdf316e0f2dfe43a3c7baade62e Mon Sep 17 00:00:00 2001 From: Dave Nicolson Date: Sun, 5 Apr 2026 19:48:27 +0200 Subject: [PATCH] Implement error handling Signed-off-by: Dave Nicolson --- AltSign/Sources/ALTAppleAPI+Authentication.swift | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/AltSign/Sources/ALTAppleAPI+Authentication.swift b/AltSign/Sources/ALTAppleAPI+Authentication.swift index 6293b63..891bf04 100644 --- a/AltSign/Sources/ALTAppleAPI+Authentication.swift +++ b/AltSign/Sources/ALTAppleAPI+Authentication.swift @@ -219,9 +219,16 @@ private extension ALTAppleAPI { let request = makeTwoFactorCodeRequest(url: requestURL, dsid: dsid, idmsToken: idmsToken, anisetteData: anisetteData) - let requestCodeTask = session.dataTask(with: request) { data, _, error in + let requestCodeTask = session.dataTask(with: request) { _, response, error in do { guard error == nil else { throw error! } + guard let httpResponse = response as? HTTPURLResponse, (200...299).contains(httpResponse.statusCode) else { + throw NSError( + domain: ALTUnderlyingAppleAPIErrorDomain, + code: NSURLErrorBadServerResponse, + userInfo: [NSLocalizedDescriptionKey: "Unable to send a verification code to your trusted devices."] + ) + } func responseHandler(verificationCode: String?) { do {