Changelog
All notable changes to this project will be documented in this file.
Last updated
Was this helpful?
All notable changes to this project will be documented in this file.
Last updated
Was this helpful?
Changed
EnableKillSwitch and DisableKillSwitch requests response type changed to MethodResponse
PermitProcess and RemoveProcessPermit requests parameter type changed to ProcessRequest
Changed the logging level for some internal checks and background requests
Updated the list of possible Backend server error codes, see the
Updated Hydra API to version 5.14.1
Added
ARM processor architecture support for OpenVPN protocol
New method GetCurrentLogLevel to get logging level used by SDK at the moment
New method ConfigureLogLevel to change log level without SDK service reinstall
New service installation command line argument "InstallerLogFolderPath" for providing path to the folder where log files from service installation/uninstallation process should be stored.
Fixed
Pipe stream issue with Task Scheduler unobserved exceptions
Command pipe issues with "Broken pipe message" errors and IO exceptions
Reports sending failure under active KillSwitch
The issue with duplicating WFP rules creation after service restart
StopVPN request is not working when Primary network interface has been changed during VPN connection process
Changed
Enhanced custom DnsResolver by adding support to resolve through IPv6
GetCredentialsRequest parameter "hydra_routes" default value changed to "true"
Fixed
Missing metadata on socket errors for WireguardConnectAsync call
SDK service uninstallation issue when service installed incorrectly
SDK service crash due to invalid security identifiers in registry
Fixed
Fixed address resolving issue for Wireguard servers on devices with IPv6
Fixed path to netfilter x86 in release archive
Fixed an issue with Tunnel check error code
Changed
GetCredentialsRequest, GetLocationsRequest, GetNodesRequest, GetRemoteConfigRequest now requires AccessToken instead of Carrier/CarrierId
StartVpnRequest now requires AccessToken instead of DeviceId
InitializeRequest now requires the following parameters:
CarrierId
DeviceId
PrependDeviceIdWithCarrierId
PreventDeviceIdEncode
DeviceName
Added
Added new AdapterName property to StartVpnRequest which allows setting up the custom VPN adapter name (available for hydra, Wireguard, and IPSec protocols)
Added Personal Bridge feature for Wireguard protocol
Added a unique ErrorCode for PlatformNotSupported exception
Added a unique response result for NotInitialized method response
Removed
Removed Carrier model from UnifiedSdk.Core assembly
Removed the Carrier property from VpnNode
Removed the following parameters from the Login request:
CarrierId
DeviceId
PrependDeviceIdWithCarrierId
PreventDeviceIdEncode
DeviceName
Removed CarrierId and DeviceId parameters from the following methods:
Login
GetCredentials
StartVpn
Fixed
VPN bypass does not work when the application path has certain Unicode characters
SDK calls not returning ResponseResult.ConnectionTimeout when service is not available
After the system returned from sleep, the hydra tunnel was up but network traffic did not work
The hydra tunnel disconnected but wasn't reported to SDK users
Changed
Removed redundant native images from the Executable folder (i.e. removed x64 DLLs from the x86 build of the service)
Updated Hydra API to version 5.13.3
Added
Added validation of Backend Urls on SDK initialize
Fixed
Fixed an issue when WinTun adapter was not disabled after disconnecting from VPN in some cases
Resolved DNS issues when the kill switch is enabled, and no internet connection is available
Fixed an issue when DNS resolution caused stops of the VPN tunnel
Changed
Improved error's data collection for the backend requests
Improved reserve backend addresses rotation
Added
Removed
Removed empty command line options support for the Service installation process
Fixed
Fixed WFP rules creation for tunnel processes and multi-hop servers
Changed
Validation for "AppVersion" parameter changed to allow 3 digits for Minor and Build components
Added
Added "PrependDeviceIdWithCarrierId" parameter to LoginRequest
Removed
Removed "DeviceId" parameter from GetRemoteConfigRequest
Fixed
Fixed issue when VPN state change events stop occurring suddenly
Fixed event pipe issue "Event message is too big"
Fixed issue when InitializeAsync fails first but succeeds later, events are not received until client process is restarted
Fixed Killswitch rules for tunnel process and proxy servers
Changed
Updated hydra protocol API to the version 5.13.0
Moved AppVersion parameter from GetCredentials to SDK Initialize methods
Removed possibility to provide custom Hydra configuration template
Added
Added fetching of the Hydra configuration template from the Backend
Fixed
Sometimes Block Local Network feature doesn't work properly
Non self-contained SDK requires to install ASP.NET Core Runtime
Occasionally issue with some of the requests to the Backend after interrupted vpn connection
Changed
Updated hydra protocol API to the version 5.12.0
Core and Service upgraded from .NET 6 to .NET 8
Removed build configurations for x64/x86 targets for Unified SDK Core
Enabled GS and CFG security features for native libraries and executables owned by Pango
Added
Added new request GetConnectedServerInfo
Added new installation arguments for pipe permissions
Added new -install option to specify path to the service configuration file
Added new SDK service command-line argument to create configuration file without installation
Fixed
Fixed issue when no ErrorOccured notification during connection without internet access
Fixed issue when Event pipe can stop to receive connections after error
Changed
Updated hydra protocol API to the version 5.11.0
Improved error reporting for ErrorOccured and StateChanged events.
Added
Added new -install command line option -tools (-t) for binary tools subfolder path
Added new aliases for command line options
Added support of config file that can contains all required parameters for service installation
Fixed
Fixed Wireguard connection drops every 15 minutes.
Fixed issue when StopVpn returned StartVpnFailed for connection cancelling.
Fixed issue when StopVpn returned TooManyRequest for connection cancelling.
Fixed service crash when lost and gained network.
Fixed clean up issue for temp files on connection cancel.
Changed
Improved event pipe handling
Added
Added non self contained version of Unified SDK
Added new Unified SDK service installation parameters
DATA - responsible for the location of the auxiliary SDK files
CMD - responsible for naming the command named pipe
EVENT - responsible for naming of the event named pipe
Added license file to the release archive
Fixed
Sometimes canceling VPN connection establishment breaks all further VPN connection attempts
Sometimes TunnelConnected state is not reported although connection gets established successfully
Changed
Improved errors for backend requests
Improved error messages for tunnel issues
Improved reserve addresses rotation
Modified pipe conversation between service and client to prevent very rare hunging
The version of the Unified SDK Core based on .NET Framework 4.5.2 excluded from release bundle
Added missed Sync/Async methods (e.g. GetNodesAsync, StartVpnAsync etc.) to Unified SDK Core
Added build configuration for AnyCPU target for Unified SDK Core
Manual process bypass modules could be activated when the tunnel is off
Fixed rare unhandled exception on SDK class disposing
Fixed rare thread synchronization issue
Fixed GetUserInfoAsync error when user has no photo
Fixed GetRemoteConfigResponse issue when Result is always set to None
Fixed service crash when OpenVpn client is exiting right after starting
Archive checksum
Algorithm: SHA256
Hash: 6A19B026C8C57F8AED363B902EFF012B5137F8827D82D232A07E6EB31B6086C9
Move the hydra protocol executable binaries from "x32bit/x64bit" folders to "x86/x64" folders
Add possibility to forward MTU setting for hydra protocol through configuration
Add an API for building and configuring the Fireshield configuration
Add a possibility to provide to Initialize method optional reserve backend server URIs
Add the Unified SDK Core assemblies based on .NET Standard 2.0 and .NET Framework 4.8 to release the bundle. The version of the Unified SDK Core based on .NET Framework 4.5.2 is obsolete and will be removed in the next release
The Unified SDK service is crashing on service stop
The Unified SDK service doesn't populate Metadata if BackendRequestException occurs
the Unified SDK does not throw any error when the Fireshield configuration is broken
The type of "Credentials" field in "GetCredentialsResponse'' was changed from "ProvidedServers" to "Credentials" for a better matching property with data from response
RouteViaVPN feature for domains and processes
Knows issue: Currently, the Unified SDK does not support this feature on Windows 7
Bypass domains module which can be explicitly enabled
Bypass processes module which can be explicitly enabled
Network interface configuration manager (saving the current network adapter preset (IP, DNS, Subnet Mask) to use this configuration in the following connections)
VPN operational error "ConnectionCanceled"
Synchronous GetConnectionState method
Functionality for server side bypass domains (this is obsolete and no longer used)
Support of the bypass domains by using hydra protocol (this is obsolete and no longer used)
WireGuard protocol wrapper requires C++ runtime
The Unified SDK crashes if the config.xml file is being used by another process
The Unified SDK service log file path ("LF") parameter doesn't apply
Opportunity to send a custom hydra config template in StartVpnRequest
Hydra routes parsing from provide response
GetConnectionState method
Calling a service method does not return a result if the service is stopped
Sometimes the service crashes during the "clear-after-crash" operation
Connect on OpenVPN doesn't work with error "Certificate is null or empty"
Connect with multihope location doesn't work on hydra
Connect failed with error "ManagementException: Invalid class"
Added
Possibility to use hydra routes from GetCredentials response
New exception for handling cases when running the IPsec on Windows 7
Rotation of Wintun adapter static IP for hydra protocol
Additional build information e.g. checksum, size, version
Fixed
The WireGuard tunnel is dropped if the Connected event is received later than 10 sec after connection start
Incorrect hydra config generation if remote configuration is null or empty
WireGuard sends Update requests too often
Login responds with "Internal Service Error" after stopping the VPN with enabled KillSwitch
GetUserInfo returns "Internal Service Error" for all users
Async invokes for TunnelNotificationProxy can be processed unordered when system is hunged by antivirus
Unified SDK is creating a new network profile with name "Network %d" on some machines in Registry
Unified SDK service crash at system start with error "There are no more endpoints available from the endpoint mapper."
Unified SDK does not return an error if force end wireguard.exe
Hydra/Wireguard VPN connection failed with error "Remote procedure call failed"
Unified SDK is creating a new network profile in Registry at every connection
IP leak with IPv6 protocol
IP leak with IPv6 protocol
Added inner exception details for message "Cannot start VPN tunnel."
Connection error with 182 error code
"No internet connection" error even if an internet connection is available
Add more detailed logging for hydra protocol
Very rarely Unified SDK service crashes with error "There are no more endpoints available from the endpoint mapper" during create new session of WFP (Windows Filtering Platform)
Cannot start VPN tunnel with Unsupported IP address family error
Added new error codes for more detailed tracking of VPN connection
StartVpnFailed (8192) - General exception if something goes wrong during "StartVpn" method
DisconnectedBeforeConnected (8193) - Tunnel disconnected during connection
ConnectionTimeout (8194) - Tunnel process exited during connection
DisconnectedAfterStart (8195) - Disconnected in 10 sec when connected
StoppedAfterStart (8196) - Tunnel process exited in 10 sec when connected
TunnelExited (8197) - Tunnel unexpectedly exited
PrimaryNetworkInterfaceChanged (8198) - Primary network interface changed
TrafficLeak (8199) - Traffic is going outside the tunnel
TunnelBroken (8200) - Traffic is going through the tunnel but has no internet access
Very rarely socket creation is failing with hydra protocol
Update hydra protocol API to the LTS release 5.4.2
Add handling of events "Info" and "Success" for OpenVPN protocol
Split tunneling for domains doesn't work if the VPN server has IPV6 IP
Unified SDK service crashes when try to write logs to EventLog via native EventLog logger
First connection takes a long time
If connect fails with "Failed to start VPN" twice “Disconnected” messages are received instead of once
"GetCredentialsRequest" now requires an additional “DeviceId” field
Kill switch firewall rules don't allow DHCP traffic
"StartVpn" method may fail in "RemoteConfigAsync" with "No such host is known" error if the operating system prefers IPv6 addresses for hydra protocol
Unhandled exception when starting Unified SDK service with "Backend provider is not initialized" error
VPN is not started if Unified SDK service is initialized while the internet connection is off
Internet speed limit setting for applications does not work
"StopVpn" does not disable KillSwitch after the hydra tunnel crash
No internet connection after disconnecting on OpenVPN TCP in case the openvpn.exe process is blocked by Windows firewall
KillSwitch blocks the internet when Wireguard can not connect to the node
SDK service blocked after multiple connect/disconnect on OpenVPN TCP
SDK service crashes when connected on OpenVPN UDP
Wireguard reports connected state and no disconnected state when blocked by firewall at connect
OpenVPN-TCP remains connected if the openvpn.exe process is blocked by a Windows firewall at connect
OpenVPN-UDP reports disconnected with no error in case the openvpn.exe process is blocked by Windows firewall at connect
Crash SDK service while connected on OpenVPN
Backend request issue when KillSwitch is active and VPN tunnel is off
Prevent IP/DNS leak not disabled after traffic exceeded
Crash on close SDK service still shown on event log
Local network access is blocked even if local network access wasn't blocked
Update projects and dependencies
Add setting to block access to local network when VPN is ON
Add logging for firewall rules
Add a function to get sdk kill switch state
DNS leak when application traffic optimizer is ON
Crash on close SDK service shown on event log
Add possibility to send Fireshield config categories as files or only once
VPN can't connect if internet connection is made with PPPOE
Unlimited traffic response is sent as limited and with an exception
Fireshield "HydraUnsafeBlockedResource" event not sent
Torrent leak when VPN is connected
DNS leaks when throttling is enabled
Crash at start of SDK service
Add single file bundle obfuscation
Killswitch breaks DNS resolving for bypassed domains
Multiple DNS monitor events are sent with the same value
Unified SDK speed tests issues
Update Hydra client config
Add DNS monitor
Add backend URLs switching if URL are blocked
Connecting state breaks with IDLE state
Throttling does not working on OpenVPN and Wireguard
An application disconnects without an error if hydra.exe is blocked by a Windows firewall
DNS leak after applying bypass/splittunneling rules on Wireguard
Bypass domain rules apply too long if they send a connection request
Bypass/splittunneling rules broke Killswitch functionality
Applying bypass rules before connection broken resolving of domain name
Move WFP and Netfilter logic into one provider class
Add "Custom DNS" feature
Add "Custom profile" feature
Provide to Unified SDK same errors as errors received from backend
Improve logging
Wireguard corrupts DNS resolving when Killswitch is on
Add SetKillswitchException feature
Make sure that "StartVpn", "GetCredentials", "GetLocations", "GetRemainingTraffic", "Login" calls always succeed, even if Killswitch is on
Killswitch is activated after reconnecting
Connect doesn't work after hydra is killed on win 11
Wintun adapter is not removed after disconnecting on Windows 7
Sometimes the first connection on hydra protocol gives error on Windows 7
Improve security for DLL search order in Unified SDK executables
Prevent DNS leak when Killswitch is off
Wireguard connection spams "Traffic changed" event
Connection is unstable when other adapters are existed
Update OpenSSL version for Hydra and OpenVPN protocol
Add correct WireGuard status handling
Add support to reconnect in case of no error without turning off kill switch on disconnect
Service installation for win 7
Hydra don't exit when traffic is over
Sometimes the first connection on hydra protocol gives error
Incorrect Wireguard tunnel health check
OpenVPN doesn't create a WinTun adapter when it starts after hydra
KillSwitch blocked the first connection if it was on before connection
Traffic exceeded error don't affect connection with OpenVPN
UltimateGuard doesn't apply filters when it is in active state
Wireguard cannot reconnect if Killswitch is active
Credentials cannot be received in the tunnel
NetFilter SDK driver is now optional during the service installation, new -netfilter
command line argument was added.
NOTE: Now the users need to specify the NetFilter SDK driver name during the service installation name in the -netfilter
command line argument instead of passing it to the Initialize
method. If the -netfilter
command line argument is not specified, some (like route via VPN and bypass) will not work.
Added ARM processor architecture support for Hydra and Wireguard. Not all the features are currently supported on ARM, .
Improved NoInternetConnection detection for event
Added new response error NoInternetConnection for
Parameter "WaitConnected" for "StartVpnRequest" (Please see the "" method description for more detailed information)