Close#1293
Squashed commit of the following:
commit 0981754c5c2c67f2567ee4af0d9ab24377c53413
Merge: ef81f2c8 a6d75118
Author: Simon Zolin <s.zolin@adguard.com>
Date: Thu Jan 16 14:19:20 2020 +0300
Merge remote-tracking branch 'origin/master' into 1293-install
commit ef81f2c886f3bfcff4e4352d7ecea6642be7d8e1
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 30 18:32:11 2019 +0300
linter
commit 9e205be53d9de25bd2ad63398644e14b09f95238
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 30 17:22:17 2019 +0300
- install: recover from error on DNS server start
Close all modules properly
Don't register HTTP handlers twice
When matched by a host rule, return only the IP address specified in rule.
Respond with an empty IP list to another request type.
:: host -- return nothing to A, return :: to AAAA request
0.0.0.0 host -- return 0.0.0.0 to A, return nothing to AAAA request
Close#1262
Squashed commit of the following:
commit bacd683ef5b52e275323a3c07b370ca08702403e
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 16 17:00:49 2019 +0300
fix
commit 3d4f9626460de3e13a621f2b8e535e9e0939e2bb
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 16 16:54:23 2019 +0300
fix
commit bf924bf90e9b705883bec88f8d7af11c39c1f322
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 16 16:45:41 2019 +0300
add test
commit 43338ea3645a025d69dd838bc732344255960bed
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 16 16:07:51 2019 +0300
- DNS: "custom_ip" blocking mode didn't work after app restart
commit 220f32e713a95d2c67355c61e419dd09df9d42b2
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 16 15:46:01 2019 +0300
- first run: fix panic on stop in case initialization didn't complete
e.g. when Stats module can't be initialized because of incompatible file system
Close#1261
Squashed commit of the following:
commit acc39ea6c0d88cb9d2b07837e89db2c170263891
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 16 12:29:33 2019 +0300
minor
commit 0d2ef3d53185d5ca17797e2ac20f0efc1498a53c
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 16 12:13:17 2019 +0300
add link to GH
commit 0da754b1751057968780b457a2f490f4148275a8
Author: Simon Zolin <s.zolin@adguard.com>
Date: Mon Dec 16 11:53:42 2019 +0300
- clients: IPv6 address matching didn't work
Close#1014
Squashed commit of the following:
commit 759248efc0587ff2f288996c47739e602c557a76
Author: Simon Zolin <s.zolin@adguard.com>
Date: Thu Dec 12 19:26:46 2019 +0300
support empty ServerName
commit 68afecd5eca5ae66262b12dcb414b50efe88dc02
Author: Simon Zolin <s.zolin@adguard.com>
Date: Wed Dec 11 14:40:22 2019 +0300
+ DNS: TLS handshake: terminate handshake on bad SNI
Squashed commit of the following:
commit 653544b98dc4d1b9a74e1509d0e6104b71bcdcb3
Author: Simon Zolin <s.zolin@adguard.com>
Date: Wed Dec 11 17:34:41 2019 +0300
* DNS reconfigure: protect against delayed socket fd close
commit 9e650f37dee7f771bf1d9d714c35f0a81788aa16
Author: Simon Zolin <s.zolin@adguard.com>
Date: Wed Dec 11 15:28:33 2019 +0300
- fix race on startup
commit 878fdb8fc4ebbc6fab683a65f5e4298e64c2073e
Author: Simon Zolin <s.zolin@adguard.com>
Date: Wed Dec 11 15:11:21 2019 +0300
* travis: don't run tests
commit 1c4ab60684ee22d55e6d2a3350c0f24d9844255c
Author: Simon Zolin <s.zolin@adguard.com>
Date: Wed Dec 11 14:56:28 2019 +0300
* travis: 'release.sh' and then run tests
commit e1f644b8d9a1f3b46990cdfb1b75fd81b3a49d33
Author: Simon Zolin <s.zolin@adguard.com>
Date: Wed Dec 11 14:52:59 2019 +0300
* set BlockingMode: "null_ip" by default
+ dnsforward: own HTTP handlers
* dnsforward: no DNS reload on ProtectionEnabled setting change
* dnsforward: move QueryLog* settings out
* dnsforward: move dnsfilter settings out
* clients,i18n: no DNS reload on settings change
* dnsfilter is controlled by package home, not dnsforward
* move HTTP handlers to dnsfilter/
* apply filtering settings without DNS server restart
* use only 1 goroutine for filters update
* apply new filters quickly (after they are ready to be used)
DNS module passes additional parameters to Stats module.
This allows Stats to handle HTTP requests by itself - completely removing
all stats-related code from outside.