Commit Graph

984 Commits

Author SHA1 Message Date
Davide De Rosa e0781926e8
Merge pull request #177 from pahnev/master
Set IV_PLAT based on current OS
2020-06-29 13:35:11 +02:00
Davide De Rosa 5ab86d22bc Merge branch 'manager-subspec' 2020-06-29 13:33:52 +02:00
Kirill Pahnev d3caa5c4ad Set IV_PLAT based on current OS 2020-06-29 13:00:17 +03:00
Davide De Rosa 8c405e7ea5 Add String value to VPNStatus 2020-06-13 17:51:46 +02:00
Davide De Rosa 50d3b4102f Update README with new subspec 2020-06-13 17:38:55 +02:00
Davide De Rosa 10aec5185d Document Manager subspec
Refactor notifications to newer Swift convention.
2020-06-13 17:38:55 +02:00
Davide De Rosa e625360914 Update license headers in Demo 2020-06-13 17:38:55 +02:00
Davide De Rosa eb9eb63658 Reuse code for macOS demo 2020-06-13 17:38:55 +02:00
Davide De Rosa ac46108454 Move parameters to shared Configuration 2020-06-13 17:38:55 +02:00
Davide De Rosa 170c7b9f43 Update Demo with Manager helpers (iOS) 2020-06-13 17:38:55 +02:00
Davide De Rosa 5807924202 Create "Manager" subspec
- Move VPN helpers from Passepartout
- Initialize VPN.shared explicitly
- Expose internal *VPNConfiguration constructors
2020-06-13 17:38:55 +02:00
Davide De Rosa f424d4a064 Add missing entities from docs 2020-06-13 17:38:28 +02:00
Davide De Rosa a232af1100 Redefine generic Session.serverConfiguration()
For reuse in Session implementations.
2020-06-13 13:32:21 +02:00
Davide De Rosa 68f308934a Upgrade Travis-CI YAML 2020-06-13 13:31:57 +02:00
Davide De Rosa 6c3e667f80 Add a few missing nodoc 2020-06-13 13:31:15 +02:00
Davide De Rosa c4959edeeb Fix jazzy YAML
OpenSSL fails to compile without explicit SDK.
2020-06-13 13:31:13 +02:00
Davide De Rosa 48dcad83e2 Fix tunnel bundle identifiers in Demo
Also fix past CHANGELOG.

Fixes #176
2020-06-13 13:24:35 +02:00
Davide De Rosa 0da953fad7 Bump version 2020-06-12 23:00:18 +02:00
Davide De Rosa 74ed3cb4cd Move some initialization after logging configuration
Logging and masking were not configured at Credentials and
ConnectionStrategy initialization time, hence the missing log
entries from e.g. ConnectionStrategy.init().
2020-06-11 16:37:20 +02:00
Davide De Rosa 1ff936895f Improve logging of ConnectionStrategy 2020-06-11 16:22:45 +02:00
Davide De Rosa bb40404a51 Fix routing tests
Broken in 7a278dba69
2020-05-24 00:42:32 +02:00
Davide De Rosa e4588745b5 Update donation URL 2020-05-24 00:10:08 +02:00
Davide De Rosa 7a278dba69 Fix nullability of partitioned route 2020-05-23 17:07:59 +02:00
Davide De Rosa 17cb2601be Fix unused result warning 2020-05-23 17:05:46 +02:00
Davide De Rosa ed82300af9 Bump version 2020-05-22 18:35:17 +02:00
Davide De Rosa e1e386c61a Update CHANGELOG 2020-05-20 00:50:55 +02:00
Davide De Rosa f1f6b1083a Bump version 2020-05-19 19:32:11 +02:00
Davide De Rosa 9095ea250e
Address concerns from Guido Vranken fuzzers (#141)
* 002: Assert return value of snprintf/getnameinfo

* 003: Address OOB reads on decrypted data

* 004: Handle boundary prefixes in .partitioned()

* 005: Fix OOB read in matchesDestination()

* 006: Fix parsing in netname6()

* 007: Fix incorrect use of sizeof()

* 008: Add safety checks in MSSFix()

* 009: Fix bad usage of minilzo calls

* Add checks after RoutingTableEntryAddress4/6
2020-05-16 15:10:07 +02:00
Davide De Rosa 1749eb3ff1 Update podspec email 2020-05-13 13:53:40 +02:00
Davide De Rosa 78da6f16d9 Add GitHub Sponsors 2020-05-13 08:31:59 +02:00
Davide De Rosa 2619036961 Set release date 2020-05-12 15:13:10 +02:00
Davide De Rosa 6c05d2b544 Bump version 2020-05-12 15:10:44 +02:00
Davide De Rosa 6993372e18 Merge branch 'revert-ip-header-parsing' 2020-05-12 15:10:40 +02:00
Davide De Rosa 01554713b8 Move IP header logic to separate struct 2020-05-12 13:07:09 +02:00
Davide De Rosa f1a28a8d32 Revert to more efficient ternary op in IP header
See #169 and 753927f36b
2020-05-12 12:59:33 +02:00
Davide De Rosa 05a55bec4f Add copyright to README 2020-05-11 09:53:09 +02:00
Davide De Rosa fe697c2c56 Update CHANGELOG
And fix year of recent releases (was 2019).
2020-05-10 11:33:37 +02:00
Davide De Rosa 5285ba7aa8 Set reasserting to false if canRebindLink()
Code is currently disabled (canRebindLink() is hardcoded to false),
still it's good to stay consistent with semantics of
reasserting = false, i.e. "connection has become active again".
2020-05-09 15:01:11 +02:00
Davide De Rosa 0d4fc503ec Update CHANGELOG 2020-05-09 12:12:27 +02:00
Davide De Rosa 9b82d7f9ec Evaluate reconnection without touching reasserting
Use a different variable to signal an upcoming reconnection. Make
sure that reasserting is never set to false with the meaning of
"do not reconnect", because doing so would trigger a transient
"connected" state in the VPN.

Reverts use of cancelTunnelWithError() in sessionDidStop.
2020-05-09 12:09:03 +02:00
Davide De Rosa 93c24a96cf Refactor with an error parameter in sessionDidStop
Both versions prevent clients from compiling, but this version
impacts less on existing codebase.
2020-05-09 12:09:03 +02:00
Robert Patchett 1cd00f9459 Call cancelTunnelWithError(_:) if a connection fails and won't be retried 2020-05-09 12:09:03 +02:00
Davide De Rosa 12ba6f34b7 Embed TunnelKit in test host target
Fix "Reason: image not found" dyld error.
2020-05-09 09:50:27 +02:00
Davide De Rosa 77e6c4d305 Add development team to test targets 2020-05-09 09:33:44 +02:00
Jose Blaya c22bfb3edd Set MTU value in Tunnel settings 2020-05-09 01:09:20 +02:00
Jaroslav_ 1ceeb8ddbb
SAN host check (#168)
* Check if host is present in certificates SAN list

* Save .tlsServerHost error as .tlsServerVerification into last error

Co-authored-by: Davide De Rosa <keeshux@gmail.com>
2020-05-09 00:02:16 +02:00
Davide De Rosa 56eda2720e Fix CHANGELOG format 2020-05-08 23:50:03 +02:00
Davide De Rosa 60213bafb8 Fix and improve #169
- Use constants
- Check packet length for OOB read
- Replace assertion with logging
2020-05-08 21:01:36 +02:00
Davide De Rosa aa580240b8
Merge pull request #169 from roop/mojave-ipv4-and-ipv6
Fix how NETunnelInterface handles IP protocol number
2020-05-08 20:19:16 +02:00
Roopesh Chander 753927f36b Fix how NETunnelInterface handles IP protocol number
The IP protocol number passed to NEPacketTunnelFlow is determined per
packet based on the IP header, instead of determining it based on
whether IPv6 settings are available or not.
2020-05-06 09:37:24 +05:30