Quentin McGaw (desktop)
f9aadeef1c
Maint: Remove CYBERGHOST_GROUP (change)
...
- It does not make any sense with newer server data
- It was to be deprecated anyway
2021-09-23 13:54:24 +00:00
Quentin McGaw (desktop)
625de1c834
Maint: migrate Cyberghost REGION to COUNTRY
2021-09-23 13:28:32 +00:00
Quentin McGaw (desktop)
c22e0e9db7
Fix: HideMyAss: Cote d'Ivoire server country
2021-09-21 23:56:53 +00:00
Quentin McGaw (desktop)
6bcbaf085d
Maint: remove NordVPN SERVER_NAME filter
...
- Filter was not effective
- Is to be deprecated in v4 anyway
- Bump NordVPN server model version to `3`
- Remove `Name` field from NordVPN server model
2021-09-21 23:56:29 +00:00
Quentin McGaw (desktop)
9afe455635
Fix: missing status code check for Windscribe API
2021-09-08 16:09:32 +00:00
Quentin McGaw (desktop)
3863cc439e
Maint: internal/storage rework
...
- No more global variables
- Inject merged servers to configuration package
- Fix #566 : configuration parsing to use persisted servers.json
- Move server data files from `internal/constants` to `internal/storage`
2021-08-27 19:10:03 +00:00
Quentin McGaw
f1a82d9d9c
Feat: rework Surfshark servers data ( #575 )
...
- Feat: `MULTIHOP_ONLY` variable
- Feat: `COUNTRY` variable
- Feat: `CITY` variable
- Feat: `REGION` variable, with retro-compatibility
- Feat: merge servers from API, zip and hardcoded hostnames
- Fix: remove outdated and duplicate servers
- Maint: faster update with fully parallel DNS resolutions
2021-08-23 10:25:00 -07:00
Quentin McGaw (desktop)
06a2d79cb4
Feat: Wireguard support for Ivpn ( #584 )
2021-08-23 16:01:01 +00:00
Quentin McGaw (desktop)
f41fec57ed
Feat: IVPN supports TCP and custom port
2021-08-23 13:34:00 +00:00
Quentin McGaw
c348343b22
IVPN server data update code and ISP filter ( #578 )
...
- Use IVPN's HTTP API instead of their .zip file
- Unit tests for API and GetServers
- Paves the way for Wireguard
- Update server information for IVPN
- Add `ISP` filter for IVPN
2021-08-22 20:11:56 -07:00
Quentin McGaw
614eb10d67
Wireguard support for Mullvad and Windscribe ( #565 )
...
- `internal/wireguard` client package with unit tests
- Implementation works with kernel space or user space if unavailable
- `WIREGUARD_PRIVATE_KEY`
- `WIREGUARD_ADDRESS`
- `WIREGUARD_PRESHARED_KEY`
- `WIREGUARD_PORT`
- `internal/netlink` package used by `internal/wireguard`
2021-08-22 14:58:39 -07:00
Quentin McGaw
0bfd58a3f5
Fix: sorted IP addresses for servers.json ( #574 )
...
- Reduce deltas between updates
- Applies to the following providers
- IPVanish
- IVPN
- Surfshark
- Torguard
- VPNUnlimited
2021-08-21 16:03:18 -07:00
Quentin McGaw (desktop)
1f47c16102
Fix: windscribe: only get openvpn IP addresses
2021-08-09 01:18:51 +00:00
Quentin McGaw
c777f8d97d
Feat: add verify-x509-name to Windscribe Openvpn config ( #529 )
2021-07-28 07:18:08 -07:00
Quentin McGaw (desktop)
b23eb8f29d
Maint: prefer empty string comparison
2021-07-23 17:39:38 +00:00
Quentin McGaw (desktop)
3c44214d01
Maint: pass only single strings to logger methods
...
- Do not assume formatting from logger's interface
- Allow to change golibs in the future to accept only strings for logger methods
2021-07-23 17:36:08 +00:00
Quentin McGaw (desktop)
da4d528463
Maint: hardcoded data in JSON embedded file
...
- Server information, versions and timestamps together in internal/constants/servers.json
- breaking change: updater cli uses -enduser instead of -file
- breaking change: updater cli uses -maintainer instead of -stdout
- Fix: replace special last a character with 'a' from Bogota for PrivateVPN
- Feat: do not write out servers and timestamp if no change was detected
2021-07-20 03:01:26 +00:00
Quentin McGaw (desktop)
0ed738cd61
Maint: make all set status context aware
2021-07-16 00:49:59 +00:00
Quentin McGaw (desktop)
3f7ccc6c49
Feature: improve Cyberghost updater
...
- Waits up to 20s for resolutions
- Update server information and timestamp
2021-06-21 20:29:55 +00:00
Quentin McGaw (desktop)
266596af68
Fix errors introduced with golangci-lint 1.41.1
2021-06-20 16:39:38 +00:00
Quentin McGaw
2c77b73ebc
IPVanish support ( #475 )
...
- Fix #410 and #416
2021-06-20 09:21:48 -07:00
Quentin McGaw
d81d4bbda3
VPN Unlimited support ( #499 )
...
- Fixes #420
- Revert to docker/build-push-action@v2.4.0
2021-06-20 09:18:03 -07:00
Quentin McGaw (desktop)
9be912e9fd
HotFix: IVPN add TCP and UDP fields
2021-05-31 00:41:44 +00:00
Quentin McGaw (desktop)
8b8bab5c58
Feature: IVPN support
2021-05-31 00:11:16 +00:00
Quentin McGaw (desktop)
876563c492
Maintenance: improve error wrapping
2021-05-30 16:14:08 +00:00
Quentin McGaw (desktop)
be22c8547f
Maintenance: use io instead of ioutil if possible
2021-05-30 03:13:19 +00:00
Quentin McGaw
7d6763cde7
Maintenance: upgrade golibs (affects logger)
2021-05-14 14:07:16 +00:00
Quentin McGaw
cff5e693d2
Maintenance: shutdown order
...
- Order of threads to shutdown (control then tickers then health etc.)
- Rely on closing channels instead of waitgroups
- Move exit logs from each package to the shutdown package
2021-05-11 22:24:32 +00:00
Quentin McGaw
5a0418bba6
Feature: re-fetch PIA API to obtain more servers
2021-05-10 16:17:44 +00:00
Quentin McGaw
baf506ae27
Feature: multiple IP addresses per PIA server
2021-05-10 15:44:46 +00:00
Quentin McGaw
52ff03ae41
Feature: 3 IP addresses per Windscribe server
2021-05-10 14:34:42 +00:00
Quentin McGaw
2d95edf8ab
Feature: Filter VyprVPN servers by hostname, and:
...
- Extract if server supports TCP and UDP (never TCP now)
- Filter servers by protocol (unused for now)
2021-05-10 02:12:13 +00:00
Quentin McGaw
95b0fb81d6
Feature: Multiple IPs for each Torguard server
...
- Fallback on IP from configuration file if DNS resolution fails
- Download both TCP and UDP zip files to detect support for each
- Filter servers by supported network protocol
-
2021-05-10 01:48:52 +00:00
Quentin McGaw
eff65dce00
Feature: filter Surfshark servers by hostname
2021-05-10 01:24:46 +00:00
Quentin McGaw
6c1c069261
Feature: filter by hostname for PureVPN servers
...
- Record support for TCP and UDP for each hostname
- Fix: each hostname supports only TCP or UDP, not both
- Update PureVPN server information
2021-05-10 00:36:14 +00:00
Quentin McGaw
4fe1e062f2
Feature: filter PIA servers by hostname and name
2021-05-09 16:49:22 +00:00
Quentin McGaw
689ddf8bf0
Maintenance: fix flakky ip unit test
2021-05-09 03:30:54 +00:00
Quentin McGaw
8407542600
Feature: filter by country, region and city for Privado
2021-05-09 00:51:34 +00:00
Quentin McGaw
a7a5cca8dd
Maintenance: parallelize IP information fetch
2021-05-08 23:37:32 +00:00
Quentin McGaw
d9a70fd094
Maintenance: improve publicip with Result struct
2021-05-08 23:30:29 +00:00
Quentin McGaw
248cc0d3d3
Feature: filter by name and hostname for NordVPN
2021-05-08 22:51:59 +00:00
Quentin McGaw
2ec2f45c82
Feature: filter by hostname for Mullvad servers
2021-05-08 19:17:36 +00:00
Quentin McGaw
a34769ae02
Feature: filter by hostname for Cyberghost servers
2021-05-08 19:05:11 +00:00
Quentin McGaw
e8e7b83297
Maintenance: refactor servers updater code
...
- Require at least 80% of number of servers now to pass
- Each provider is in its own package with a common structure
- Unzip package with unzipper interface
- Openvpn package with extraction and download functions
2021-05-08 00:59:42 +00:00
Quentin McGaw
d5ef3de64c
Feature: more robust updater DNS resolution
...
- Parallel resolver to resolve multiple hosts
- Repeat resolver to repeat resolution for a single host
- Additional parameters for fault toleration
- Do not update servers if e.g. > 10% DNS resolutions failed
- resolver package in updater package
2021-05-06 18:48:14 +00:00
Quentin McGaw
954e3c70b2
Feature: Protonvpn support ( #437 clone on #434 )
2021-04-25 15:44:45 -04:00
Quentin McGaw
0636123e7a
Feature: add more Surfshark servers
...
- Add servers missing from surfshark zip file
- Fixes #424 and re-add multihop servers
- Fix logic to try resolving old vpn servers for Surfshark
2021-04-16 22:31:09 +00:00
Quentin McGaw
9f4077d35d
Feature: FastestVPN support ( #383 )
2021-03-05 23:12:19 -05:00
Quentin McGaw
9509b855f1
Feature: PrivateVPN support ( #393 )
2021-03-05 22:58:57 -05:00
Quentin McGaw
be72f4a046
Feature: Hide My Ass VPN provider support ( #401 )
2021-03-05 22:45:54 -05:00