Quentin McGaw
c4f2a224d4
change(dns): log filtered requests at the debug level
2025-11-25 16:50:17 +00:00
Quentin McGaw
6023eb1878
hotfix(dns): compilation error due to dns package upgrade on master
2025-11-14 21:24:40 +00:00
Quentin McGaw
a1ece20617
feat(dns): resolve network-local names ( #2970 )
2025-11-14 17:30:05 +01:00
Quentin McGaw
0bc67b73a8
feat(dns): info log all requests filtered out
2025-11-14 16:19:07 +00:00
Quentin McGaw
30640eefe2
chore(deps): upgrade dns to v2.0.0-cr7
2024-10-25 14:01:29 +00:00
Quentin McGaw
76a4bb5dc3
chore: use gofumpt for code formatting
2024-10-11 19:27:29 +00:00
Quentin McGaw
4d60b71583
feat(dns): replace unbound with qdm12/dns@v2.0.0-beta-rc6 ( #1742 )
...
- Faster start up
- Clearer error messages
- Allow for more Gluetun-specific customization
- DNSSEC validation is dropped for now (it's sort of unneeded)
- Fix #137
2024-08-21 14:35:41 +02:00
Quentin McGaw
6826b05d58
chore(all): remove all package comments
2022-07-02 20:58:43 +00:00
Quentin McGaw
bda6707685
chore(all): remove unexported interfaces
2022-06-12 01:15:14 +00:00
Quentin McGaw
578ef768ab
chore(all): return concrete types, accept interfaces
...
- Remove exported interfaces unused locally
- Define interfaces to accept arguments
- Return concrete types, not interfaces
2022-06-11 01:34:30 +00:00
Quentin McGaw
7d824a5179
chore(settings): refactor settings processing ( #756 )
...
- Better settings tree structure logged using `qdm12/gotree`
- Read settings from environment variables, then files, then secret files
- Settings methods to default them, merge them and override them
- `DNS_PLAINTEXT_ADDRESS` default changed to `127.0.0.1` to use DoT. Warning added if set to something else.
- `HTTPPROXY_LISTENING_ADDRESS` instead of `HTTPPROXY_PORT` (with retro-compatibility)
2022-01-06 06:40:23 -05:00
Quentin McGaw (desktop)
cf95692b93
Maint: package local narrow Logger interfaces
2021-09-23 17:06:09 +00:00
Quentin McGaw (laptop)
7b20cec035
Maint: rename SettingsGetterSetter to SettingsGetSetter
2021-07-24 19:49:50 +00:00
Quentin McGaw (laptop)
7479974d79
Maint: dns package state rework
...
- Interface composition with loopstate interfaces
- Use loopstate.Manager
- Create dns/state package for handling settings
2021-07-24 18:34:55 +00:00
Quentin McGaw (desktop)
02492c34a7
Maint: dns package interface rework
...
- return concrete struct type
- split interface is sub-interfaces
2021-07-23 18:57:29 +00:00
Quentin McGaw (desktop)
9436f604ba
Maint: split Go files in dns package
2021-07-23 18:55:53 +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)
7e50c95823
Maint: minor DNS loop fixes and changes
2021-07-16 21:21:09 +00:00
Quentin McGaw (desktop)
8185979ca4
Fix: deadlock on dns shutdown when starting up
2021-07-16 20:11:57 +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)
bb2b8b4514
Fix: events routing exit when gluetun stops at start
2021-07-15 22:42:58 +00:00
Quentin McGaw (desktop)
05c6b9379a
Maintenance: prevent exit race condition for loops
2021-06-10 14:13:08 +00:00
Quentin McGaw
13e75aaf20
Maintenance: upgrade to qdm12/dns v1.7.0
...
- Fix rebinding protection for IPv6 mapped IPv4 networks
- Use netaddr package for DNS blacklisting
2021-05-14 17:54:35 +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
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
c54ee71e1d
Maintenance: new logging, shorter with less deps
2021-02-25 23:51:29 +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
5757f0e201
Fix: Only log subproc error when it's not nil
2021-01-30 18:07:12 +00:00
Quentin McGaw
5194361f3b
Fix public IP on restarts, refers to 359
2021-01-29 00:06:55 +00:00
Quentin McGaw
b1ff95affa
Maintenance: Fix exit race condition
2021-01-26 01:04:15 +00:00
Quentin McGaw
a243d48fb1
Maintenance: improve stream merging
2021-01-26 04:17:22 +00:00
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
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
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
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