Commit Graph

895 Commits

Author SHA1 Message Date
Davide De Rosa d107e485d1 Merge branch 'refactor-multiple-protocols' 2021-09-20 20:21:28 +02:00
Davide De Rosa 48c7e068e6 Expose MockVPNProvider 2021-09-20 19:43:17 +02:00
Davide De Rosa ff4a1e3945 Ditch non-scalable VPN.shared 2021-09-20 18:52:34 +02:00
Davide De Rosa c442d44a0f Complete jazzy documentation 2021-09-20 18:35:33 +02:00
Davide De Rosa 70f8c6cc2b Reorganize VPNProvider related components
Reuse most code for native or custom providers.
2021-09-20 18:34:45 +02:00
Davide De Rosa e6e37cd528 Relax protocol type in base VPN configuration
NETunnelProviderProtocol -> NEVPNProtocol
2021-08-25 18:00:48 +02:00
Davide De Rosa 9a00befca9 Move configuration implementation to single file 2021-08-25 18:00:25 +02:00
Davide De Rosa d5e849f699 Bump version and update library purpose 2021-08-09 10:30:22 +02:00
Davide De Rosa 13b255623a Prepare for release
- Upgrade OpenSSL
- Set release date
2021-08-07 23:15:53 +02:00
Davide De Rosa e3157343dc
Merge pull request #170 from passepartoutvpn/add-scramble-xormask
Add scramble xormask
2021-07-23 17:09:53 +02:00
Davide De Rosa 434817c563 Mention XOR option in README 2021-07-23 11:15:08 +02:00
Davide De Rosa 65774c9a09 Update CHANGELOG
Move XOR PR credits to README.
2021-07-22 10:55:57 +02:00
sam e69079d1f6 Add xormask option 2021-07-22 10:55:57 +02:00
Davide De Rosa 642a6763d1 Bump version 2021-07-20 10:31:41 +02:00
Davide De Rosa 194f74e126 Set release date 2021-07-18 22:53:40 +02:00
Davide De Rosa 7a6e97da36 Merge branch 'support-stub-v2' 2021-07-18 22:50:30 +02:00
Davide De Rosa a98943728f Relax handling of .ovpn whitespaces 2021-07-17 09:46:32 +02:00
Davide De Rosa 4dc3eeeeea Handle stub/stub-v2 as viable --compress arguments 2021-07-17 09:44:38 +02:00
Davide De Rosa b9d7473eae Update bundle 2021-07-17 09:40:41 +02:00
Davide De Rosa 6020ee2251 Bump version 2021-07-16 21:24:57 +02:00
Davide De Rosa 0a1f33823a Return error in install completion handler
Fixes #206
2021-07-02 11:23:58 +02:00
Davide De Rosa 68d7e08461 Update CHANGELOG 2021-06-26 11:13:51 +02:00
Davide De Rosa e3a5f14e9f Update bundle 2021-06-26 11:08:01 +02:00
Davide De Rosa 7f84d8338c Upgrade Xcode project 2021-06-26 11:00:24 +02:00
Davide De Rosa ccfd92870c Update bundle/pods + OpenSSL 2021-06-26 11:00:24 +02:00
Davide De Rosa f4b2cb1227 Bump version 2021-03-02 15:01:11 +01:00
Davide De Rosa d03204589f Update + fix CHANGELOG 2021-03-02 15:00:40 +01:00
Davide De Rosa 2caaae5969
Merge pull request #203 from roop/cleanup_cache
Cleanup cached PEMs at the end of a Session
2021-03-02 14:59:12 +01:00
Roopesh Chander d8ed0c7d41 Cleanup cached PEMs at the end of a Session 2021-03-01 13:11:51 +05:30
Davide De Rosa f33fcf4975 Move badges 2021-02-12 01:57:20 +01:00
Davide De Rosa 4fe379a239 Update CHANGELOG 2021-02-12 01:40:53 +01:00
Davide De Rosa 59e30cdd42
Merge pull request #200 from roop/access_password_ref_in_macos
macOS: Enable accessing a password reference without system prompt
2021-02-12 01:09:28 +01:00
Roopesh Chander 433e3f8dc9 Keychain: Enable correct keychain sharing in macOS
To enable sharing of keychain items using access groups in macOS,
the kSecUseDataProtectionKeychain attribute should be set.
This key has effect only in macOS, and is unavailable in iOS 12,
so we set it only in macOS.
2021-02-12 01:07:43 +01:00
Davide De Rosa 123f4d658e Bump vesion 2021-02-11 23:14:14 +01:00
Davide De Rosa 1620fb0f99
Merge pull request #201 from passepartoutvpn/reference-passwords-in-app-group
Keychain: Use app group when dereferencing a password reference
2021-02-11 22:44:50 +01:00
Davide De Rosa 3ba63e9a88 Extend peer info with IV_PLAT_VER
Will then make them conditional based on --push-peer-info

See #202
2021-02-11 22:23:47 +01:00
Roopesh Chander 2b3eb5412c Keychain: Use app group when dereferencing a password reference
Co-authored-by: Davide De Rosa <keeshux@gmail.com>

Better retain access group every time keychain is written to or
read from, there is no good reason to omit it. Requires Keychain
method to be reverted to non-static.

Partially revert 4490f0c116, based
on wrong assumptions about password references.
2021-02-11 13:44:00 +01:00
Davide De Rosa 4114605520 Fix keychain method in Demo
Fixes #199
2021-02-02 09:03:18 +01:00
Davide De Rosa 8618b66900 Set release date 2021-01-28 10:43:54 +01:00
Davide De Rosa 1343fa592f Log time intervals better 2021-01-27 02:15:18 +01:00
Davide De Rosa 4490f0c116 Pick tunnel password reference from existing item
Assume that credentials already exist elsewhere for reuse as
password reference. Avoids a redundant keychain entry.
2021-01-27 01:28:27 +01:00
Jose Blaya 4b3f3dee5f
Check if cfg.sessionConfiguration.dnsServers is empty (#198) 2021-01-26 16:31:57 +01:00
Davide De Rosa 790ec276db Restrain DNS servers according to protocol
- Cleartext: pick any available
- HTTPS/TLS: only pick local servers, secure DNS may NEVER come
  from VPN server

Require for TLS, not for HTTPS (not even sure about their need).
2021-01-26 11:20:01 +01:00
Davide De Rosa 3abb7cbccc Fix up misleading log from condition in latest commit 2021-01-26 10:59:37 +01:00
Davide De Rosa 0f097d50af Fall back to network settings when no DNS servers
Rather than forcing CloudFlare (by default).

Fixes #197
2021-01-26 10:18:04 +01:00
Davide De Rosa 9567be7563
Merge pull request #196 from passepartoutvpn/secure-dns
DNS over HTTPS/TLS
2021-01-26 10:02:47 +01:00
Davide De Rosa fd9d34b49c Print description of new DNS settings 2021-01-22 21:14:38 +01:00
Davide De Rosa dd81ad7a99 Pick proper DNS settings according to protocol 2021-01-22 21:14:38 +01:00
Davide De Rosa 3c92e18c0e Add DNSProtocol 2021-01-22 21:14:38 +01:00
Davide De Rosa e388842d37 Add fallback compression algorithm
Disabled.
2021-01-13 08:10:33 +01:00