diff --git a/TunnelKit/Sources/AppExtension/TunnelKitProvider+Interaction.swift b/TunnelKit/Sources/AppExtension/TunnelKitProvider+Interaction.swift index 1dd539f..e035a35 100644 --- a/TunnelKit/Sources/AppExtension/TunnelKitProvider+Interaction.swift +++ b/TunnelKit/Sources/AppExtension/TunnelKitProvider+Interaction.swift @@ -99,10 +99,22 @@ extension TunnelKitProvider { /// Socket failed to reach active state. case socketActivity + /// Credentials authentication failed. + case authenticationFailed + + /// TLS handshake failed. + case tlsFailed + + /// Tunnel timed out. + case timeout + /// An error occurred at the link level. case linkError /// The current network changed (e.g. switched from WiFi to data connection). case networkChanged + + /// The server replied in an unexpected way. + case unexpectedReply } } diff --git a/TunnelKit/Sources/Core/SessionError.swift b/TunnelKit/Sources/Core/SessionError.swift index 90e8656..4f37b6d 100644 --- a/TunnelKit/Sources/Core/SessionError.swift +++ b/TunnelKit/Sources/Core/SessionError.swift @@ -38,7 +38,7 @@ import Foundation /// The possible errors raised/thrown during `SessionProxy` operation. -public enum SessionError: Error { +public enum SessionError: String, Error { /// The negotiation timed out. case negotiationTimeout