Quentin McGaw (desktop)
d9fbecaa01
Maint: minor changes to openvpn/config package
...
- Constructor returns concrete struct instead of interface
- Rename conf to openvpnConf in openvpn loop
2021-08-18 20:28:42 +00:00
Quentin McGaw (desktop)
ecdf9396a5
Maint: move OpenVPN configurator to openvpn/config
2021-08-18 20:23:50 +00:00
Quentin McGaw (desktop)
14c3b6429b
Maint: openvpn process user in Openvpn settings
2021-08-18 16:16:47 +00:00
Quentin McGaw (desktop)
5140a7b010
Maint: set PUID and PGID in openvpn configurator
2021-08-18 15:44:58 +00:00
Quentin McGaw (desktop)
bd74879303
Maint: read all settings first
2021-08-18 15:42:19 +00:00
Quentin McGaw (desktop)
6a545aa088
Maint: tun package to handle tun device operations
...
- Moved from openvpn package to tun package
- TUN check verifies Rdev value
- TUN create
- Inject as interface to main function
- Add integration test
- Clearer log message for end users if tun device does not exist
- Remove unix package (unneeded for tests)
- Remove tun file opening at the end of tun file creation
- Do not mock unix.Mkdev (no OS operation)
- Remove Tun operations from OpenVPN configurator
2021-08-18 15:31:08 +00:00
Quentin McGaw (desktop)
cc2235653a
Maint: refactor VPN configuration structure
...
- Paves the way for Wireguard
- VPN struct contains Type, Openvpn and Provider configurations
- OpenVPN specific options (e.g. client key) moved from Provider to Openvpn configuration struct
- Move Provider configuration from OpenVPN configuration to VPN
- HTTP control server returns only openvpn settings (not provider settings)
2021-08-17 15:44:11 +00:00
Quentin McGaw (desktop)
836412b032
Maint: move routeReadyEvents to openvpn package
2021-08-16 19:19:41 +00:00
Quentin McGaw (desktop)
abbcf60aed
Fix: port forward get route, fixes #552
2021-08-01 15:01:28 +00:00
Quentin McGaw
2998cf5e48
Maint: port forwarding refactoring ( #543 )
...
- portforward package
- portforward run loop
- Less functional arguments and cycles
2021-07-28 08:35:44 -07:00
Quentin McGaw (desktop)
d7a6caa2ac
Maint: routing interface composition
2021-07-26 16:18:53 +00:00
Quentin McGaw (desktop)
73c383fd65
Maint: remove routing configurator from Openvpn Loop
2021-07-26 16:18:35 +00:00
Quentin McGaw (desktop)
10b270f742
Maint: remove routing from firewall configurator
2021-07-26 16:17:01 +00:00
Quentin McGaw (laptop)
8d512852a4
Maint: rework publicip package
...
- Use loopstate package
- Loop interface composition
- Return concrete struct from constructors
- Split into more files
- Add publicip/state package
2021-07-24 19:49:11 +00:00
Quentin McGaw (laptop)
c8ad9b942a
Maint: openvpn loop is a concrete struct
2021-07-24 19:14:49 +00:00
Quentin McGaw (laptop)
849dfee200
Maint: http proxy return concrete Loop struct
2021-07-24 18:52:19 +00:00
Quentin McGaw (laptop)
3f1fb52fcb
Maint: upgrade qdm12 dependencies
...
- Upgrade qdm12/golibs
- Upgrade qdm12/dns to v1.11.0
2021-07-24 17:59:22 +00:00
Quentin McGaw (desktop)
2ddc784965
Maint: firewall package interface rework
...
- return concrete struct type
- split interface is sub-interfaces
2021-07-23 19:12:16 +00:00
Quentin McGaw (desktop)
10aabe8375
Hotfix: cli, alpine and dns interface name changes
2021-07-23 19:11:49 +00:00
Quentin McGaw (desktop)
122647b39d
Maint: pass network values to firewall constructor
2021-07-23 19:04:17 +00:00
Quentin McGaw (desktop)
c5d92ae02c
Maint: inject Commander to openvpn and firewall
2021-07-23 18:25:30 +00:00
Quentin McGaw (desktop)
94b60d9f70
Maint: firewall and routing use logger.Debug
...
- Remove SetVerbose and SetDebug from both
- Log routing teardown
- Default logging level set to info
2021-07-23 18:20:18 +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)
21f4cf7ab5
Maint: do not mock os functions
...
- Use filepaths with /tmp for tests instead
- Only mock functions where filepath can't be specified such as user.Lookup
2021-07-23 16:06:19 +00:00
Quentin McGaw (desktop)
5b9887dade
Maint: use qdm12/gosplash
2021-07-22 20:56:47 +00:00
Quentin McGaw (desktop)
c33402ce66
Feat: HEALTH_SERVER_ADDRESS
2021-07-22 20:45:17 +00:00
Quentin McGaw (desktop)
6acb7caf5b
Feat: Env variables to set health timeouts
...
- HEALTH_OPENVPN_DURATION_INITIAL
- HEALTH_OPENVPN_DURATION_ADDITION
2021-07-22 20:13:20 +00:00
Quentin McGaw (desktop)
1e0bfc3b0c
Maint: rename BUILD_DATE to CREATED
2021-07-20 15:28:02 +00:00
Quentin McGaw (desktop)
c0d27b4bfc
Maint: rework openvpn restart on unhealthy
2021-07-18 03:17:48 +00:00
Quentin McGaw (desktop)
39068dda17
Maint: rework Openvpn run loop
2021-07-16 21:20:34 +00:00
Quentin McGaw (desktop)
ac3ff095a1
Maint: rework DNS run loop
...
- Fix fragile user triggered logic
- Simplify state
- Lock loop when crashed
2021-07-16 19:00:56 +00:00
Quentin McGaw (desktop)
0ed738cd61
Maint: make all set status context aware
2021-07-16 00:49:59 +00:00
Quentin McGaw (desktop)
d29429808c
Maint: deduplicate error logs for goshutdown
2021-07-15 23:02:33 +00:00
Quentin McGaw (desktop)
09eccd7cd9
Fix: events routing behavior when version information is disabled
2021-07-15 22:43:30 +00:00
Quentin McGaw (desktop)
bb2b8b4514
Fix: events routing exit when gluetun stops at start
2021-07-15 22:42:58 +00:00
Quentin McGaw (desktop)
4c0df96a95
Maintenance: use github.com/qdm12/goshutdown
2021-06-10 15:03:47 +00:00
Quentin McGaw (desktop)
b829490aac
Feature: OPENVPN_VERSION which can be 2.4 or 2.5
2021-05-31 18:54:36 +00:00
Quentin McGaw (desktop)
7002bf8e34
Maintenance: improve printVersion function
...
- Print program versions in order given
- Exit program on any error as each program is required
2021-05-31 18:47:38 +00:00
Quentin McGaw (desktop)
876563c492
Maintenance: improve error wrapping
2021-05-30 16:14:08 +00:00
Quentin McGaw (desktop)
f1b5341f33
Maintenance: listen on all IP interfaces
2021-05-30 02:58:10 +00:00
Quentin McGaw
da65f3b016
Maintenance: generate Openvpn conf for 2.4 or 2.5
2021-05-23 17:40:14 +00:00
Quentin McGaw
4f521e4dcb
Feature: show Alpine version at start
2021-05-19 14:30:43 +00:00
Quentin McGaw
5dba91c9ab
Maintenance: qdm12/dns from v1.4.0 to v1.6.0
2021-05-14 14:07:17 +00:00
Quentin McGaw
7d6763cde7
Maintenance: upgrade golibs (affects logger)
2021-05-14 14:07:16 +00:00
Quentin McGaw
1540660cc3
Change: keep firewall on shutdown to avoid leaks
2021-05-11 22:25:42 +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
ccc7ad7cbd
Change: do not exit on Openvpn config error
2021-05-11 18:23:19 +00:00
Quentin McGaw
c8a61ca687
Maintenance: use signal.NotifyContext
2021-05-11 18:17:59 +00:00
Quentin McGaw
61e36d6aff
Maintenance: error wrapping of alpine package
2021-05-11 17:52:29 +00:00
Quentin McGaw
dadc939aab
Feature: NET_ADMIN tip on routing permission error
2021-05-10 21:31:08 +00:00