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
Quentin McGaw
71de05dc68
Maintenance: updater DNS resolution more resilient
2021-03-05 22:46:14 +00:00
Quentin McGaw
1fd3ee7149
Maintenance: sort alphabetically providers in code
2021-02-26 12:58:58 +00:00
Quentin McGaw
b446aa6590
Maintenance: use native HTTP client for updater
2021-02-26 00:42:55 +00:00
Quentin McGaw
c54ee71e1d
Maintenance: new logging, shorter with less deps
2021-02-25 23:51:29 +00:00
Quentin McGaw
f1b1001863
Torguard support ( #387 )
...
See discussion on #374
2021-02-17 20:36:30 -05:00
Quentin McGaw
c5af536299
Maintenance: deduplicate PIA servers by protocols
2021-02-16 13:06:58 +00:00
Quentin McGaw
b9b2f691a5
Fix: pia updater for TCP, fixes #388
2021-02-16 13:06:51 +00:00
Quentin McGaw
adaad62fbd
Feature: updater: no sleep for last DNS resolution
2021-02-12 21:27:26 +00:00
Quentin McGaw
f08a03106f
Feature: updater changes to have more VPN IP addresses ( #364 )
2021-02-11 08:40:25 -05:00
Quentin McGaw
3deb65b529
Feature: log out country, region and city of IP
2021-02-08 00:01:14 +00:00
Quentin McGaw
43e140e6cc
Fix linting errors
2021-02-06 17:16:58 +00:00
Quentin McGaw
7ca9d445f1
Maintenance: package comments
2021-02-06 16:26:23 +00:00
Quentin McGaw
90aaf71270
Configuration package ( #369 )
2021-02-06 11:05:50 -05:00
Quentin McGaw
e254849009
Fix: update mechanism for PIA and update servers
...
- Separate TCP and UDP servers as they have different CNs
- Update server hardcoded information constants
2021-01-30 18:22:15 +00:00
Quentin McGaw
5757f0e201
Fix: Only log subproc error when it's not nil
2021-01-30 18:07:12 +00:00
Quentin McGaw
702eafae4c
Feature: update Surfshark servers information
2021-01-29 18:53:16 +00:00
Quentin McGaw
1abb716bb6
Maintenance: Fix test data race
2021-01-06 06:09:19 +00:00
Quentin McGaw
b8cb181070
Bug fix: PureVPN updater from ZIP files
...
- Fix #317
- Refers to #320
2020-12-31 21:07:30 +00:00
Quentin McGaw
a56471fe73
Code maintenance: rework ovpn host extraction
2020-12-31 20:35:49 +00:00
Quentin McGaw
e827079604
Code maintenance: updater loop waitgroup
2020-12-30 18:32:58 +00:00
Quentin McGaw
cf66db8d4b
Bug fix: Stopping updater loop deadlock
2020-12-30 18:29:28 +00:00
Quentin McGaw
25acbf8501
Feature: Increasing backoff time for crashes
...
- Fix #247
2020-12-30 17:22:54 +00:00
Quentin McGaw
fb8a615660
Feature: Update PIA servers using v5 PIA API
2020-12-30 15:54:13 +00:00
Quentin McGaw
e643ce5b99
Fix publicip and updater loops exit bugs
2020-12-29 16:44:55 +00:00
Quentin McGaw
91f5338db0
Fix updater loop bug
2020-12-28 01:50:13 +00:00
Quentin McGaw
4257581f55
Loops and HTTP control server rework ( #308 )
...
- CRUD REST HTTP server
- `/v1` HTTP server prefix
- Retrocompatible with older routes (redirects to v1 or handles the requests directly)
- DNS, Updater and Openvpn refactored to have a REST-like state with new methods to change their states synchronously
- Openvpn, Unbound and Updater status, see #287
2020-12-19 20:10:34 -05:00