Quentin McGaw
c7fc3afc21
Fix: DNS_KEEP_NAMESERVER behavior
2021-01-06 21:52:55 +00:00
Quentin McGaw
3b91e351b7
Maintenance: using channels instead of wrap functions
2021-01-04 01:49:05 +00:00
Quentin McGaw
31cf5d4a5a
Fix #331 (DNS ready signaling fixed)
2021-01-02 23:51:05 +00:00
Quentin McGaw
20deaf2950
Bug fix: DNS setup failure loop behavior
2021-01-02 20:39:43 +00:00
Quentin McGaw
a67efd1ad1
Code maintenance: Using qdm/dns and qdm12/updated
2021-01-02 18:31:39 +00:00
Quentin McGaw
5dcbe79fa8
Move OS package to golibs
2021-01-02 01:57:00 +00:00
Quentin McGaw
f385c4203a
Bug fix: truncate /etc/resolv.conf, fixing DNS
...
- Refers to #326
- Refers to #329
2020-12-30 20:48:41 +00:00
Quentin McGaw
1e4243dedb
Bug fix: Stop DOT if disabled by new settings
2020-12-30 20:38:59 +00:00
Quentin McGaw
5f78ee7b79
Bug fix: missing mutex Unlock in DNS set settings
2020-12-30 20:37:14 +00:00
Quentin McGaw
c6eb5c1785
Bug fix: Plaintext DNS fix ( #326 , #329 )
2020-12-30 20:36:19 +00:00
Quentin McGaw
25acbf8501
Feature: Increasing backoff time for crashes
...
- Fix #247
2020-12-30 17:22:54 +00:00
Quentin McGaw
0069b59ffe
Change: remove redundant dns over tls log
2020-12-30 15:29:40 +00:00
Quentin McGaw
cb64302294
Rename UID and GID to PUID and PGID
2020-12-29 16:44:35 +00:00
Quentin McGaw
8d5f2fec09
Code maintenance: use native Go HTTP client
2020-12-29 02:55:34 +00:00
Quentin McGaw
cdd1f87437
Code maintenance: Remove unneeded ctrl.Finish()
2020-12-29 01:04:07 +00:00
Quentin McGaw
73479bab26
Code maintenance: OS package for file system
...
- OS custom internal package for file system interaction
- Remove fileManager external dependency
- Closer API to Go's native API on the OS
- Create directories at startup
- Better testability
- Move Unsetenv to os interface
2020-12-29 00:55:31 +00:00
Quentin McGaw
f5366c33bc
Remove unneeded .Times(1) for unit tests mocks
2020-12-28 01:52:30 +00:00
Quentin McGaw
2dc674559e
Re-use username for UID if it exists
2020-12-27 00:36:39 +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
Quentin McGaw
b5fb2b849a
DOT listens on all interfaces, refers to #281
2020-11-04 03:14:27 +00:00
Quentin McGaw
9c73faaaeb
Add linters and fix lint issues
2020-10-20 02:45:28 +00:00
Quentin McGaw
84c1f46ae4
Upgrade dependencies
...
- Use of context for custom http client
- Remove unused nodeid for logger
- Upgrade shadowsocks dependency
2020-10-18 02:24:34 +00:00
Quentin McGaw
98f778c3bb
Improve timing behavior of ticking in loops
2020-10-15 23:20:36 +00:00
Quentin McGaw
464c7074d0
Get public IP and version only when DNS is ready
2020-09-12 18:50:42 +00:00
Quentin McGaw
e0e450ca1c
Revisit waitgroup ( #241 )
...
* Fix Add to waitgroup out of goroutines calling wg.Done()
* Pass waitgroup to other loop functions
2020-09-12 14:34:15 -04:00
Quentin McGaw
5b3cbb6906
Fix #235 : DNS over TLS log messages
2020-09-09 21:44:50 +00:00
Quentin McGaw
f95f6201b1
Rename repo to Gluetun, refers to #112
2020-07-26 12:07:06 +00:00
Quentin McGaw
fab9939b26
Simplify DNS loop a bit and fixes #199
2020-07-17 01:16:49 +00:00
Quentin McGaw
b4a4e441c1
Fix #199 when ticker period is 0
2020-07-16 12:00:25 +00:00
Quentin McGaw
9abb630692
Get and set settings for DNS
2020-07-16 01:45:05 +00:00
Quentin McGaw
83cf59b93e
Start and Stop for dns over tls
2020-07-16 00:04:15 +00:00
Quentin McGaw
616ba0c538
Replace explicit channels with functions
2020-07-15 01:34:46 +00:00
Quentin McGaw
7252ac722c
Logging improvements ( #195 )
...
- Fix (and test) filtering of lines
- Filter out shadowsocks cannot resolve error
- Change tinyproxy color
- Deduct logging level according to message content
2020-07-12 21:19:44 -04:00
Quentin McGaw
07efea612b
Minor changes
...
- Remove unneeded string conversions
- Remove resolve-retry infinite openvpn configuration (unneeded)
- Add cover on single tests and single test files for Vscode
2020-07-12 19:15:05 +00:00
Quentin McGaw
8b096af04e
DNS_KEEP_NAMESERVER variable, refers to #188
2020-07-11 23:51:53 +00:00
Quentin McGaw
2f9d1f09d3
Minor changes
...
- Remove https://ip4.ddnss.de/meineip.php
- Logs when falling back to plaintext DNS
2020-07-11 21:04:46 +00:00
Quentin McGaw
ccf11990f1
Fix several async issues
...
- race conditions between ctx.Done and waitError channel
- Sleep for retry cancels on cancelation of context
- Stops the any loop at the start if the context was canceled
- Mentions when loops exit
- Wait for errors on triggered loop restarts
2020-07-11 20:59:30 +00:00
Quentin McGaw
3d25db1bed
Waits properly for all subprocess to exit
2020-07-08 23:42:54 +00:00
Quentin McGaw
99e386abc8
Using a waitgroup to wait for all programs to exit
2020-07-08 23:36:02 +00:00
Quentin McGaw
a39d885e34
Minor fixes
...
- Not logging program name twice for wait errors
- Wait for tinyproxy to exit
2020-07-08 23:29:22 +00:00
Quentin McGaw
7a136db085
Simplified loop mechanism for openvpn and dns
...
- Refers to #91
- http control server starts without waiting for unbound and/or openvpn
- Trying to get rid of waiter and use channels directly
- Simpler main.go
- More robust logic overall
2020-07-08 13:14:39 +00:00
Quentin McGaw
88c9d3d687
Waits 300ms before first DNS resolution try
2020-04-19 20:44:33 +00:00
Quentin McGaw
e805d42197
Updated dependencies
2020-04-19 18:13:48 +00:00
Quentin McGaw
768147095f
Golangcilint in build pipeline and fix lint errors
...
- Fix bad permissions bits for files
- VPNSP is 'private internet access' instead of 'pia' (retro compatible)
- Check errors of deferred unsetEnv functions in params package
- Other lint errors fixing and code simplifications
2020-04-12 20:05:28 +00:00
Quentin McGaw
3d7cfb125a
Using WithPrefix for loggers
2020-04-12 19:07:19 +00:00
Quentin McGaw
d42de99879
Updated golibs and using gomock+mockgen for tests
2020-04-12 18:09:46 +00:00
Quentin McGaw
da8391e9ae
Using %s instead of %w for format print
2020-04-12 02:42:32 +00:00
Quentin McGaw
ebdf241888
Show DNS lookup error, refers to #127
2020-04-09 13:17:55 +00:00
Quentin McGaw (desktop)
d0f678c315
Add DNS over TLS ipv6 upstream servers, see #88
2020-03-05 00:54:33 +00:00
Quentin McGaw (desktop)
0c48d2d5a0
DOT_IPV6 environment variable added, refers to #88
2020-03-05 00:51:04 +00:00