// // RESTURLSession.swift // MullvadREST // // Created by pronebird on 18/04/2022. // Copyright © 2025 Mullvad VPN AB. All rights reserved. // import Foundation import Network extension REST { public static func makeURLSession(addressCache: AddressCache) -> URLSession { let certificatePath = Bundle(for: SSLPinningURLSessionDelegate.self) .path(forResource: "le_root_cert", ofType: "cer")! let data = FileManager.default.contents(atPath: certificatePath)! let secCertificate = SecCertificateCreateWithData(nil, data as CFData)! let sessionDelegate = SSLPinningURLSessionDelegate( sslHostname: defaultAPIHostname, trustedRootCertificates: [secCertificate], addressCache: addressCache ) let sessionConfiguration = URLSessionConfiguration.ephemeral let session = URLSession( configuration: sessionConfiguration, delegate: sessionDelegate, delegateQueue: nil ) return session } }