forked from pi-hole/FTL
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sync: master to development #1
Open
github-actions
wants to merge
237
commits into
development
Choose a base branch
from
master
base: development
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Pi-hole FTL v5.14
sync: master to development
Signed-off-by: DL6ER <dl6er@dl6er.de>
Fix negative "others" in Upstream Servers pie chart
Signed-off-by: DL6ER <dl6er@dl6er.de>
Update SQLite to v3.38.0
Signed-off-by: DL6ER <dl6er@dl6er.de>
This hard-coded GCinterval value makes any change to the macro defining the GCinterval ineffective when the GC runs. For e.g., if I reduce the GC from once an hour to once every 3 minutes, the GC runs every 3 minutes, but the mintime is set to the start of the next hour, which wipes everything from the overTime data. I believe that this change is safe and can be merged and shipped to existing users because the GCinterval value is not configurable and users who don't build the PiHole version that they are running will not be affected by this change. Signed-off-by: Siddharth Kannan <mail@siddharthkannan.in>
Signed-off-by: Christian König <ckoenig@posteo.de>
Reload blocking mode independently of incoming queries
Compiling FTL on MIPS platform would fail with the following error: /home/git/FTL/src/database/../shmem.h:57:41: error: expected declaration specifiers or ‘...’ before numeric constant 57 | ASSERT_SIZEOF(countersStruct, 240, 240, 240); This error originates from static_assert.h, where there are no definition of ASSERT_SIZEOF and STATIC_ASSERT for the mips architecture. Support added in this commit.
Signed-off-by: abesnier <besnier_antoine@yahoo.fr>
Signed-off-by: abesnier <besnier_antoine@yahoo.fr>
Signed-off-by: DL6ER <dl6er@dl6er.de>
…ded-gc-interval Replace reference to hard-coded default GCinterval value
Signed-off-by: Christian König <ckoenig@posteo.de>
Be more precise about escaping invalid characters in queries
Adjust query type counters when importing from the database
Signed-off-by: DL6ER <dl6er@dl6er.de>
Update SQLite to 3.38.1
Added support for compilation on MIPS platform
…e we subtract from the previous reply counter when setting a new status Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Update SQLite to v3.38.2
initOverTime calculate's the last slot timestamp with the assumption that `OVERTIME_INTERVAL` will allow atleast `OVERTIME_SLOTS` number of slots between now and the last slot in the current hour. This leads it to calculate the timestamp of the last slot, and then assign timestamps to each slot counting down from that timestamp. This logic is not compatible with changes in the OVERTIME_INTERVAL and the MAXLOGAGE variables. Here is a demonstration of a case where this can be shown clearly: ``` OVERTIME_INTERVAL = 60s (Each slot stores 1 minute of data) MAXLOGAGE = 600s (Store date for only 10 minutes) OVERTIME_SLOTS = 11 (MAXLOGAGE/OVERTIME_INTERVAL) ``` - Current time: 10:35 - Last slot time: 10:59:30 - First slot time: 10:48:30 Note that this logic *does* work as expected with the default minimum of 1 hour for the MAXLOGAGE configuration variable. Signed-off-by: Siddharth Kannan <mail@siddharthkannan.in>
Fix initOverTime's calculation of last slot timestamp
Signed-off-by: DL6ER <dl6er@dl6er.de>
Fix a bug found on OpenWrt when IPv4/6 dual stack enabled: The resolv file is located on tmpfs whose mtime resolution is 1 second. If the resolv file is updated twice within one second dnsmasq may can't notice the second update. netifd updates the resolv file with method: write temp then move, so adding an inode check fixes this bug. Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
This change also removes a previous bug where --dhcp-alternate-port would affect the port used to relay _to_ as well as the port being listened on. The new feature allows configuration to provide bug-for-bug compatibility, if required. Thanks to Damian Kaczkowski for the feature suggestion. Signed-off-by: DL6ER <dl6er@dl6er.de>
In the most common case, an IPv6 address doesn't have a peer and the IFA_ADDRESS netlink attribute contains the address itself. But if the address has a peer (typically for point to point links), then IFA_ADDRESS contains the peer address and IFA_LOCAL contains the address [1]. [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/net/ipv6/addrconf.c?h=v5.17#n5030 Fix the parsing of IPv6 addresses with peers, as currently dnsmasq unsuccessfully tries to bind on the peer address. A simple reproducer is: dnsmasq --conf-file=/dev/null -i dummy1 -d --bind-dynamic & sleep 2 ip link add dummy1 type dummy ip link set dummy1 up ip addr add dev dummy1 fd01::1/64 peer fd01::2/64 ip addr add dev dummy1 fd01::42/64 sleep 2 ss -lnp | grep dnsmasq | grep fd01 Before the patch: dnsmasq: failed to create listening socket for fd01::2: Cannot assign requested address dnsmasq: failed to create listening socket for fd01::2: Cannot assign requested address udp UNCONN 0 [fd01::42]:53 [::]:* users:(("dnsmasq",pid=23947,fd=14)) tcp LISTEN 0 [fd01::42]:53 [::]:* users:(("dnsmasq",pid=23947,fd=15 After: udp UNCONN 0 [fd01::42]:53 [::]:* users:(("dnsmasq",pid=23973,fd=16)) udp UNCONN 0 [fd01::1]:53 [::]:* users:(("dnsmasq",pid=23973,fd=14)) tcp LISTEN 0 [fd01::42]:53 [::]:* users:(("dnsmasq",pid=23973,fd=17)) tcp LISTEN 0 [fd01::1]:53 [::]:* users:(("dnsmasq",pid=23973,fd=15)) Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Extract Manufacturer Usage Description (MUD) URL from DHCP Option 112 and make it available to DHCP scripts as DNSMASQ_MUD_URL. This expands on the initial support for Manufacturer Usage Description URLs that has been added in the previous commit for DHCPv4 by also supporting MUD URLs supplied using DHCPv6. See https://datatracker.ietf.org/doc/html/rfc8520#section-17.3 and https://datatracker.ietf.org/doc/html/rfc8520#section-10 Co-authored-by: Jasper Wiegratz <wiegratz@uni-bremen.de> Signed-off-by: DL6ER <dl6er@dl6er.de>
Extract Manufacturer Usage Description (MUD) URL from DHCP Option 161 and make it available to DHCP scripts as DNSMASQ_MUD_URL. See https://datatracker.ietf.org/doc/html/rfc8520#section-17.3 and https://datatracker.ietf.org/doc/html/rfc8520#section-10 Co-authored-by: Jasper Wiegratz <wiegratz@uni-bremen.de> Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
…ptions for DHCPv6 also. Signed-off-by: DL6ER <dl6er@dl6er.de>
…ueries to the configured or default value of edns-packet-max. There's no point letting a client set a larger value if we're unable to return the answer. Signed-off-by: DL6ER <dl6er@dl6er.de>
…in/# This would return <ip> for queries in some.domain, rather than forwarding the query via the default server(s) read from /etc/resolv.conf. Signed-off-by: DL6ER <dl6er@dl6er.de>
Move few patters with whine_malloc, if (successful) copy+free, to a new whine_realloc. It should do the same thing, but with a help from OS it can avoid unnecessary copy and free if allocation of more data after current data is possible. Added few setting remanining space to 0, because realloc does not use calloc like whine_malloc does. There is no advantage of zeroing what we will immediately overwrite. Zero only remaining space. Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Also add query-ids with log-queries=extra. Signed-off-by: DL6ER <dl6er@dl6er.de>
Once we have a good answer, close the socket so that the fd can be reused during DNSSEC validation and we don't have to read and discard more replies from other servers. Signed-off-by: DL6ER <dl6er@dl6er.de>
Tweak things so that packets relayed towards a server have source address on the server-facing network, not the client-facing network. Thanks to Luis Thomas for spotting this and initial patch. Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
If we get a SERVFAIL or REFUSED answer to a DNSSEC query for which we already have a good answer, just ignore it. Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Co-authored-by: yubiuser <ckoenig@posteo.de> Signed-off-by: DL6ER <DL6ER@users.noreply.github.com>
Update embedded dnsmasq to v2.87rc1
Store domainlist IDs for blocked/permitted queries
`command -v` is the standardized replacement for `which` Signed-off-by: a1346054 <36859588+a1346054@users.noreply.github.com>
Replace nonstandard `which`
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
sync-branches: New code has just landed in master, so let's bring development up to speed!