Mcat12
5937391020
Merge branch 'development' into new/IP-NODATA-AAAA-blocking
...
# Conflicts:
# FTL.h
2018-05-27 11:17:30 -04:00
DL6ER
77e85ad144
Re-parse regex.list on receive of SIGHUP and use possibly changed blocking mode for regex blocked domains
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-27 11:40:40 +02:00
DL6ER
d3e9365f53
Remove obsolete readGravityFiles() funtion
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-26 19:24:34 +02:00
DL6ER
a5f31c2d67
Pass has_IPv4/6 as bool (and not bool*) to add_blocked_domain_cache()
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-26 12:08:28 +02:00
DL6ER
556993ca5a
Replace while() continue; by if() continue; for the sake of readability (there really is no need for a while() loop being used here)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-26 12:01:44 +02:00
DL6ER
a1cb443ce6
Add blocking mode IP-NODATA-AAAA
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-20 12:54:08 +02:00
DL6ER
b6dd8ec47f
Implement reading regex from file
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-19 17:21:56 +02:00
DL6ER
a783798575
Simplify cache handling routines (remove all code duplication) + ensure that regex blocked entries follow the user defined blocking mode (previously, they always returned NXDOMAIN)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-19 16:58:41 +02:00
DL6ER
db7dbda9da
Use status == QUERY_WILDCARD to identify regex blocked queries
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-19 16:37:25 +02:00
DL6ER
79fb026278
Improve blocking regex implementation (block both A and AAAA requests, not only A)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-19 16:32:52 +02:00
DL6ER
decef2e5fd
Remove special support for old type of wildcard lists as dnsmasq config file
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-19 14:46:21 +02:00
DL6ER
fd57e9f601
Add new BLOCKINGMODE "NULL" responding with "0.0.0.0" and "::" to A and AAAA queries, respectively
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-13 12:16:26 +02:00
DL6ER
50e4f57f08
Re-parse BLOCKINGMODE on receive of SIGHUP for being able to change it without a full restart of pihole-FTL
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-13 12:04:42 +02:00
DL6ER
599e27b324
Revert "No forking"
2018-05-12 14:39:44 +02:00
DL6ER
64fc0c3e59
Merge pull request #274 from pi-hole/no-initial-forking
...
No forking
2018-05-12 13:12:50 +02:00
DL6ER
cfece8d9f9
Remove debug statement
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-10 14:38:35 +02:00
DL6ER
f6e4ec4230
Add blocked domains counter for individual clients
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-10 14:22:58 +02:00
DL6ER
0714bd6ed1
Don't go into background, just let this be handled by init (sys-V, systemd)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-08 18:02:18 +02:00
DL6ER
ff35a43b12
Analyze incoming TCP queries. There have been no hooks here as TCP queries are handled in a different part of the resolver (as the resolver forks itself for handling TCP queries to not block)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-05-04 16:41:29 +02:00
DL6ER
6cba8e17fb
Fix IPv6 blocking and blocking reason detection
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-30 17:41:23 +02:00
DL6ER
76924b9425
Merge pull request #260 from pi-hole/new/regex
...
Add regex blocking support to FTLDNS
2018-04-29 17:57:09 +02:00
DL6ER
29ea841e19
Optimize FTL_dnssec()
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-29 11:25:56 +02:00
DL6ER
e33f97d49b
Optimzie FTL_cache()
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-29 11:23:43 +02:00
DL6ER
8d3ad5e34f
Optimize FTL_reply()
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-29 11:21:19 +02:00
DL6ER
ab8a7e3972
Optimizations for FTL_forwarded()
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-29 11:18:06 +02:00
DL6ER
dd84694a6c
Optimize FTL_new_query(). Mostly added new comments, but also rearranged some stuff to be only computed when we need them (we might otherwise compute them although we don't actually need this value as we're skipping this query anyhow due to a set filter)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-29 11:09:03 +02:00
DL6ER
c7453d5343
Call memory_check() only when needed (before creating a new domain/client record)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-29 11:05:20 +02:00
DL6ER
2f6e24045f
Add regex blocking support
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-24 17:22:17 +02:00
DL6ER
2690dae551
Only add host records for which we found a valid IP address. Don't require a valid IP address for NXDOMAIN blocking...
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-22 19:03:33 +02:00
DL6ER
9c96776200
Add fallback mode for HOSTS format: If gravity.list or black.list are still in HOSTS format, we accept this, print a message that the user should run pihole -g and still import the lists as regular hosts lists. Note that BLOCKINGMODE=NXDOMAIN won't work with HOSTS lists import.
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-22 12:28:06 +02:00
DL6ER
6d82f29f09
Add BLOCKINGMODE=IP|NXDOMAIN config flag for selecting if FTLDNS should reply with IPv4/IPv6 addresses (need 2 cache slots per domain) or with NXDOMAIN (need 1 cache slot per domain)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-22 12:08:44 +02:00
DL6ER
d50494b8f4
Get rid of numBlocked file, FTLDNS can now determine number of domains thanks to the new lists format
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-21 23:57:25 +02:00
DL6ER
7aeee8ed65
Clarify comments
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-21 23:50:23 +02:00
DL6ER
821e64e514
Accept gravity.list and black.list in simple domain list format. Speeds up list importing by about 2x
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-21 23:26:44 +02:00
DL6ER
b133b657ac
Small bugfix: Don't log reverse lookup results as unknown replies in non-debug mode
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-14 13:09:07 +02:00
DL6ER
efbe8025d0
Implement IGNORE_LOCALHOST config option
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-11 18:50:36 +02:00
DL6ER
3f92f3a543
Re-implement improved exception for queried CNAME requiring forwarding of A/AAAA record. Slighly improve GC subroutine
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-08 22:52:24 +02:00
DL6ER
b2840f49a0
Move struct timeval conversion into its own function to reduce clones
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-07 12:09:40 +02:00
DL6ER
9f940d82e0
Reduce memory footprint by removing unnecessry TTL value
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-06 23:52:07 +02:00
DL6ER
eba63be23b
Print unknown reply/cache entries also when not running in debug mode for beta testing
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-06 23:42:46 +02:00
DL6ER
53a5c2cdc5
Integrate storing of response time in void save_reply_type()
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-06 23:41:46 +02:00
DL6ER
dfc32a6204
Move reply type and dnssec status to per-query (not per-domain) for more accurate data at negligible additional costs
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-06 23:32:32 +02:00
DL6ER
1d6a339969
Fix bug that disabled "AAAA_QUERY_ANALYSIS" config option. Fixes #250
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-05 19:40:40 +02:00
DL6ER
be5e8fe63e
Measure and store response time for individual queries
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-04-01 16:11:55 +02:00
DL6ER
1c191dd2c2
Read number of blocked domains from preEventHorizon. Solves #246
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-03-30 19:54:17 +02:00
DL6ER
f87ce3f466
Print "unknown ..." message only if in debug mode. Reverse lookup is not an unknown reply (although we ignore PTR queries).
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-03-13 21:43:07 +01:00
DL6ER
e3f9685a8f
Handle correctly that config is only read at initialization, whereas hosts files are read also on reload (SIGHUP)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-03-04 23:26:07 +01:00
DL6ER
a972c901a0
Update FTL to analyze blocking via config file (NXDOMAIN blocking)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-03-04 21:43:29 +01:00
DL6ER
a076cbb49f
Queries answered from config with NXDOMAIN should be counted as blocked
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-02-28 00:03:26 +01:00
DL6ER
2ae4b52bb3
A number of improvements:
...
- use "extern" for the glibal variable specifications in the header files (and clarif where the variables are actually defined)
- record number of failed requests to forward destinations
- Add dnsmasq_interface.h to DTLDEPS
- Add new request type ">cacheinfo" to get information about cache usage in the resolver
Signed-off-by: DL6ER <dl6er@dl6er.de >
2018-02-26 17:24:09 +01:00