Quentin McGaw
4105f74ce1
feat(portforward): port redirection with VPN_PORT_FORWARDING_LISTENING_PORT
2023-11-23 08:37:43 +00:00
Quentin McGaw
919b55c3aa
feat(wireguard): WIREGUARD_ALLOWED_IPS variable ( #1291 )
2023-07-06 09:08:59 +02:00
Quentin McGaw
fae6544431
feat(pf): VPN_PORT_FORWARDING_PROVIDER variable ( #1616 )
2023-06-30 19:24:01 +02:00
Quentin McGaw
d3d8484b8e
hotfix(env): case sensitivity for OPENVPN_CUSTOM_CONFIG
2023-06-28 12:27:13 +00:00
Quentin McGaw
a9cd7be3f9
chore(sources/env): bump gosettings to v0.3.0-rc13
...
- Use `RetroKeys` option with env.* method calls
- Use `CSV*` typed methods
- Inject `handleDeprecatedKey` function
2023-06-08 07:40:37 +00:00
Quentin McGaw
482447c151
chore(env): bump qdm12/gosettings to v0.3.0-rc11
2023-06-01 09:07:22 +00:00
Quentin McGaw
2ab80771d9
feat(shadowsocks): bump from v0.4.0 to v0.5.0-rc1
2023-05-31 14:31:56 +00:00
Quentin McGaw
7399c00508
chore(sources/env): bump gosettings to v0.3.0-rc9
2023-05-31 14:31:56 +00:00
Quentin McGaw
b87b2109b1
chore(settings): use gosettings/sources/env functions
2023-05-30 13:02:10 +00:00
Quentin McGaw
2c30984a10
hotfix(env): read some settings with case sensitivity
2023-05-30 12:46:10 +00:00
Quentin McGaw
47593928f9
fix(settings): use qdm12/gosettings env.Get
2023-05-29 20:43:06 +00:00
Quentin McGaw
75670a80b8
chore(deps): bump gosettings and govalid
2023-05-27 08:52:41 +00:00
Lars Haalck
1dd38bc658
feat(wireguard): WIREGUARD_MTU enviromnent variable ( #1571 )
2023-05-21 15:11:07 +02:00
Quentin McGaw
0a29337c3b
chore(all): replace net.IP with netip.Addr
2023-05-20 20:06:12 +00:00
Quentin McGaw
b6c8399c3b
feat(health): HEALTH_SUCCESS_WAIT_DURATION
2023-05-07 09:35:51 +00:00
Quentin McGaw
d21a943779
chore(all): use netip.Prefix for ip networks
...
- remove usage of `net.IPNet`
- remove usage of `netaddr.IPPrefix`
2023-04-27 13:42:50 +00:00
Quentin McGaw
67bd1171ae
feat(env): rename vpn port forwarding variables
...
- `VPN_PORT_FORWARDING_STATUS_FILE`
- `VPN_PORT_FORWARDING`
- Deprecate PIA specific variables for VPN port forwarding
2023-04-27 10:23:55 +00:00
Quentin McGaw
4e2e46014d
chore(settings): inet.af/netaddr -> net/netip
2023-04-23 11:43:50 +00:00
Quentin McGaw
1693c59e0d
chore(lint): fix issues
...
- sources/env: remove unused `envToInt`
- fix `ireturn` error for `newCipherDESCBCBlock`
2023-04-22 11:02:53 +00:00
Quentin McGaw
fa7fd5f076
fix(pprof): settings rates can be nil
2023-04-20 23:10:02 +00:00
Quentin McGaw
4ba159e483
chore(all): review error wrappings
...
- remove repetitive `cannot` and `failed` prefixes
- rename `unmarshaling` to `decoding`
2023-04-01 16:57:18 +00:00
Quentin McGaw
03ed3cb1c8
feat(wireguard): WIREGUARD_IMPLEMENTATION variable
...
- Can be `auto` (default), `userspace` or `kernelspace`
2022-12-02 11:16:27 +00:00
Quentin McGaw
b275354a92
fix(env): trim space for wireguard addresses
2022-10-28 10:49:51 +00:00
Quentin McGaw
5ddd703f6a
feat(vpn): auto detection of IPv6 support
...
- `OPENVPN_IPV6` removed
- Affects OpenVPN
- Use the same mechanism for OpenVPN and Wireguard
- Check only once at program start since this is unlikely to change at runtime
- Log if IPv6 is supported
- Remove `IPv6` boolean from settings structs
- Move IPv6 detection as a method on NetLinker
2022-09-06 12:16:29 +00:00
Quentin McGaw
e583f9de47
fix(codeql): fix integer parsing (false positive)
2022-08-27 16:45:29 +00:00
Quentin McGaw
8570e09eb9
chore(config): rename Reader to Source struct
2022-08-26 15:40:35 +00:00
Quentin McGaw
ae5cba519c
chore(config): define Source interface locally where needed
2022-08-26 15:03:59 +00:00
Quentin McGaw
fba73a0a0f
fix(settings): OPENVPN_CUSTOM_CONFIG precedence for custom provider only if VPN_SERVICE_PROVIDER is empty
2022-08-25 04:01:17 +00:00
Quentin McGaw
062b6a276c
fix(settings): read PEM files but b64 env vars
...
- Extract base64 data from PEM files and secret files
- Environment variables are not PEM encoded and only the base64 data
- Affects OpenVPN certificate, key and encrypted key
2022-08-24 17:48:45 +00:00
Quentin McGaw
a182e3503b
feat: add VPNsecure.me support ( #848 )
...
- `OPENVPN_ENCRYPTED_KEY` environment variable
- `OPENVPN_ENCRYPTED_KEY_SECRETFILE` environment variable
- `OPENVPN_KEY_PASSPHRASE` environment variable
- `OPENVPN_KEY_PASSPHRASE_SECRETFILE` environment variable
- `PREMIUM_ONLY` environment variable
- OpenVPN user and password not required for vpnsecure provider
2022-08-15 16:54:58 -07:00
Quentin McGaw
8db2944749
chore(settings): OpenVPN ClientCrt -> Cert
2022-08-13 18:59:07 +00:00
Quentin McGaw
5986432a22
chore(settings): OpenVPN ClientKey -> Key
2022-08-13 18:58:09 +00:00
Quentin McGaw
652daec509
Change: OPENVPN_CLIENTKEY -> OPENVPN_KEY
...
- No breaking change since this was undocumented
2022-08-13 18:56:37 +00:00
Quentin McGaw
f94d4b761a
Change: OPENVPN_CLIENTCRT -> OPENVPN_CERT
...
- No breaking change since this was undocumented
2022-08-13 18:55:29 +00:00
Quentin McGaw
1ab74e6bb3
chore: OpenVPN user and password as nullable
...
- Username and password can be the empty string for custom provider
2022-08-13 18:01:26 +00:00
Quentin McGaw
9898387579
feat(updater): Configurable min ratio
...
- `UPDATER_MIN_RATIO` variable
- `-minratio` flag for CLI operation
2022-06-12 14:03:00 +00:00
Quentin McGaw
33b8f5f596
chore(settings): updater DNS address as string
2022-06-11 20:11:20 +00:00
Quentin McGaw
364f9de756
feat(env): clean env variable values
...
- Remove surrounding spaces
- Remove suffix new line characters
2022-05-27 17:27:54 +00:00
Quentin McGaw
9dd5e7bf1d
fix: PUID and PGID as 32 bit unsigned integers
2022-05-01 16:29:56 +00:00
Quentin McGaw
e1f89bb569
fix(health): HEALTH_VPN_DURATION_ADDITION
2022-04-23 11:09:24 +00:00
Quentin McGaw
934fafb64b
chore(constants): internal/constants/vpn package
2022-04-18 11:14:07 +00:00
Quentin McGaw
54b7e23974
chore(constants): internal/constants/providers
...
- New package to avoid package import cycles
2022-04-16 19:30:26 +00:00
Quentin McGaw
c33fb8bb97
fix(env): OPENVPN_FLAGS functionality
2022-03-31 20:49:01 +00:00
Quentin McGaw
179274ade0
feat(log): use github.com/qdm12/log library
2022-03-30 09:03:20 +00:00
Quentin McGaw
c6f68a64e6
fix(health): use TCP dialing instead of ping
...
- `HEALTH_TARGET_ADDRESS` to replace `HEALTH_ADDRESS_TO_PING`
- Remove `github.com/go-ping/ping` dependency
- Dial TCP the target address, appending `:443` if port is not set
2022-03-22 08:50:56 +00:00
Quentin McGaw
ae0334c930
chore(sources): wrap error with source string
2022-02-20 03:04:16 +00:00
Quentin McGaw
920ad8b54b
chore(errors): review all errors in codebase
2022-02-20 02:58:16 +00:00
Quentin McGaw (desktop)
576c1ee0c5
fix(env): accept uppercase SHADOWSOCKS_CIPHER
2022-02-09 12:33:47 +00:00
Quentin McGaw (desktop)
5d4032edf4
fix(env): accept uppercase OPENVPN_PROTOCOL
2022-02-09 12:33:24 +00:00
Quentin McGaw (desktop)
ff3f84f9fd
hotfix(env): OPENVPN_CIPHERS empty parsing
2022-02-06 22:58:23 +00:00