Dimitri Herzog
48dbc5bc13
update: github.com/onsi/gomega
2022-09-03 23:43:26 +02:00
Kwitsch
fd93f67899
feat: new parameter "StartStrategy" ( #566 ) ( #636 )
...
Blocky should start resolving DNS traffic as soon as possible
2022-09-03 22:12:07 +02:00
FileGo
b49695fad3
Added config, simplified check for loopback
2022-08-23 07:54:03 +01:00
FileGo
7ce875f105
Filter loopback addresses from hosts file
2022-08-22 09:28:55 +01:00
FileGo
377f4764fe
Enable start as long as at least one upstream resolver in group is reachable ( #608 )
...
* Enable start if one upstream resolver fails
* Will now check if upstream actually works
* Fixed default upstream in some tests
* Increase timeouts in some tests
* change default value of "StartVerifyUpstream" to false
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-08-21 17:21:08 +02:00
Dimitri Herzog
421807fc22
chore: update golangci-lint ( #631 )
2022-08-19 22:04:35 +02:00
Kwitsch
9c80a5f9a9
test: use dynamic unit test data ( #624 )
2022-08-06 22:44:26 +02:00
Kwitsch
5e9eaa2965
delivery of blocking group as EDNS error(560) ( #611 )
2022-08-06 22:30:26 +02:00
Kwitsch
51ef9ea77f
test: fix flaky test(537) - second hunt ( #610 )
...
* go test -> ginkgo
* removed flake-attempts as suggested
* added FlakeAttempts to flaky test definition
* as net.DNSError qualifies as net.Error check and correct the response
* fix in downloader.go resolves flaky tests
* unwrap maybe?
* excluede DownloadFile from funlen linter
* use eventually on io operations in file_writer_test
* file_writer_test flaky fixes
* fix linter errors
* Serve test reversed go routine
* matcher fix
* serve test rework 2
* DeferCleanup tmp files
* fixed some flakiness in resolver tests
* go mod tidy
* fixed linter errors
* JustAfterEach -> DeferCleanup
* changed close to defer
* moved unwrap from downloader to test
* fix linter error
* propper cleanup in "should return error"
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-08-01 22:27:11 +02:00
Adyanth H
31cf8c77d5
Add fallbackUpstream for conditional mapping ( #593 )
2022-07-11 08:06:42 +02:00
Dimitri Herzog
3b620102a7
set host header for DoH requests ( #580 )
2022-06-29 21:39:39 +02:00
Kwitsch
c912356740
Option to handle FQDN only requests ( #561 )
2022-06-20 13:02:51 +02:00
Dimitri Herzog
fd8c61c57c
improved LRU cache operations (avoid write lock on TotalCount)
2022-06-02 22:58:52 +02:00
FileGo
8bb4f73a38
Removed net.Error.Temporary ( #536 )
2022-05-27 22:22:00 +02:00
FileGo
776c51fc59
Adds user customizable DoH upstream user agent ( #525 )
...
* Adds user customizable DoH upstream user agent
* Changed default user agent to empty
2022-05-18 08:49:15 +02:00
Peter Dave Hello
4690ed89a9
Hide DoH client http header "User-Agent", fix #446 ( #518 )
2022-05-17 08:55:29 +02:00
Dimitri Herzog
2994e2a301
add additional logging context ( #482 ) ( #516 )
2022-05-16 21:42:18 +02:00
Peter Dave Hello
63cfabac7b
Enable "ForceAttemptHTTP2" for DoH upstreamClient ( #519 )
...
According to https://pkg.go.dev/net/http#Transport , when TLSClientConfig
is provided, HTTP/2 will be disabled. Setting this option to true, when
using custom TLS config, will still attempt HTTP/2 upgrades.
2022-05-16 21:35:43 +02:00
Dimitri Herzog
3392de0e16
Cache refresh memory consumption optimization ( #470 ) ( #515 )
2022-05-16 21:32:16 +02:00
Dimitri Herzog
a4b89537db
update golangci-lint ( #510 )
...
* update golangci-lint
* enable gomnd linter
* enable asciicheck linter
* enable bidichk linter
* enable durationcheck linter
* enable errchkjson linter
* enable errorlint linter
* enable exhaustive linter
* enable gomoddirectives linter
* enable gomodguard guard
* enable grouper linter
* enable grouper and ifshort linters
* enable importas linter
* enable makezero linter
* enable nestif linter
* enable nilerr linter
* enable nilnil linter
* enable nlreturn linter
* enable nolintlint linter
* enable predeclared linter
* enable sqlclosecheck linter
* enable tenv linter
* enable wastedassign linter
2022-05-10 09:09:50 +02:00
Dimitri Herzog
41febafd41
chore: test cleanup and refactoring ( #509 )
...
test: added additional assertions, introduced channels for bus event tests, refactoring, eliminating race conditions in tests, enable race check in tests
2022-05-06 22:34:08 +02:00
Dimitri Herzog
53814a2208
chore: refactoring list cache, extracting download functionality ( #508 )
2022-05-06 17:57:33 +02:00
Dimitri Herzog
0a7e46a0d4
test: added additional assertions, introduced channels for bus event tests, refactoring ( #501 )
2022-04-26 10:43:23 +02:00
ThinkChaos
62c7816ab3
Support of DoH/DoT as bootstrap DNS ( #485 )
2022-04-22 22:12:35 +02:00
Dimitri Herzog
28789ee7fe
filtering of queries ( #450 ) ( #474 )
2022-04-01 08:58:09 +02:00
Dimitri Herzog
27f9c8b9a0
chore: improved error logging
2022-03-31 22:29:36 +02:00
Dimitri Herzog
81b896a01d
chore: increased test timeout
2022-03-31 22:27:45 +02:00
Dimitri Herzog
2bb2f97f8f
CustomDNS: parameter "filterUnmappedTypes" to allow/disable forwarding to the upstream resolver ( #467 )
2022-03-22 22:15:31 +01:00
ThinkChaos
f8b6e59ef4
Add rewrite support to custom DNS ( #449 )
...
This commit extracts rewriting logic from `ConditionalUpstreamResolver`
into the new `RewriterResolver`, and uses that to enable rewriting for
the `CustomDNSResolver`.
`RewriterResolver` wraps a resolver and applies the rewrite to the
request that is forwarded to the inner resolver.
It also introduces a new optional interface: `NamedResolver`.
This allows a `Resolver` to choose what its user friendly name is,
instead of always being its type name.
2022-03-17 22:30:21 +01:00
ThinkChaos
27c8cbf2b7
Update to gingko v2 ( #447 )
2022-03-03 11:27:27 +01:00
Dimitri Herzog
f9369d8fe0
Use full qualified client name as group name ( #329 )
2022-02-22 10:55:26 +01:00
Dimitri Herzog
759f55d89c
Rewrite DNS response cache ( #378 ) ( #413 )
2022-01-20 16:45:29 +01:00
Kwitsch
8921a16433
[Feature] Conditional forwarding of all queries for unqualified hostnames ( #363 ) ( #409 )
2022-01-19 22:26:39 +01:00
Kwitsch
ee451f8b36
Sync blocking enable/disable over redis ( #377 ) ( #403 )
...
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-01-19 22:03:41 +01:00
FileGo
c176b02ac9
Support Postgresql database for query log ( #348 )
...
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-01-07 21:42:06 +01:00
FileGo
b43c7aa2cb
Enable resolving hosts file ( #362 )
...
fixes #362
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-01-04 15:40:09 +01:00
Dimitri Herzog
cdec99567a
updated retry-go
2021-12-24 22:40:06 +01:00
Dimitri Herzog
d7bf373b52
Replace all sleeps in tests with "eventually" from gomega ( #379 )
2021-12-22 22:21:04 +01:00
Dimitri Herzog
ccc6f888e3
externalize retry parameters for query log
2021-12-21 22:03:02 +01:00
Kwitsch
d3611fb444
FR: DNS cache sync between multiple blocky instances ( #344 ) ( #365 )
2021-12-21 17:06:16 +01:00
Dimitri Herzog
61ca25c64c
sanitize log output
2021-12-20 22:37:32 +01:00
ThinkChaos
69dc38308c
Allow configuring multiple listen addresses for each port ( #372 )
2021-12-20 22:13:07 +01:00
ThinkChaos
cbcd09c898
Allow configuring custom DNS TTL ( #370 )
2021-12-16 21:38:01 +01:00
Dimitri Herzog
4b85eedc86
Replace retry implementation with retry-go
2021-12-13 22:10:14 +01:00
Dimitri Herzog
9b4752442e
Retry to establish db connection for query log ( #351 )
2021-12-13 22:10:14 +01:00
Kwitsch
2f79086742
Make retry for list download configurable ( #308 ) ( #338 )
...
* DownloadAttempts & DownloadCooldown added to BlockingConfig
* implementation of downloadAttempts & downloadCooldown
* extended NewListCache call
* unit test fix(use old default values)
* documentation of downloadAttempts & downloadCooldown
* linter error(line length)
2021-11-14 21:34:09 +01:00
Kwitsch
bd1886d8fa
Allow to define different client names for the same group ( #251 ) ( #337 )
...
* comama seperated client names
(cherry picked from commit cdb009d0c8e14b2be25b6a8beb563017c603f674)
* blocking_resolver unittest
(cherry picked from commit cb059deb282bcc614939dc021041c0b35665a84e)
* linter errors reduced
* unit test for group merge
2021-11-14 21:28:52 +01:00
Dimitri Herzog
e882fa0a39
Fallback when using mysql or file as query log ( #318 ) ( #336 )
2021-11-11 08:52:21 +01:00
FileGo
98cf484517
Option to disable the query log ( #333 )
2021-11-10 21:54:32 +01:00
Dimitri Herzog
9b9596970c
Improved configuration output (duration format, etc.)
2021-11-07 21:35:16 +01:00