FTL/src
DL6ER 230989ebbd
Exit after fatal dnsmasq errors
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-05-04 10:11:35 +02:00
..
api Work around long-standing bug in gcc 12.x reported in #1424 2022-11-03 20:44:53 +01:00
database Fix possible race-collision leading to a theoretical out-of-bounds read 2023-11-22 22:49:20 +01:00
dnsmasq Exit after fatal dnsmasq errors 2024-05-04 10:11:35 +02:00
lua Re-apply Pi-hole specific Lua patches 2023-05-14 09:11:02 +02:00
syscalls Modify logging in such a way that concurrent printing by the involved is prevented and add better error reporting when sending to interfaces is not working due to an error 2023-05-20 22:19:53 +02:00
tools Remove traces of ABP_CSS 2023-05-27 22:46:01 +02:00
tre-regex Tests: Enable DNSSEC for query validation during the CI tests 2021-09-02 21:57:30 +02:00
CMakeLists.txt Rename src/{gravity-tools.* => tools/gravity-parseList.*} 2023-05-24 21:25:37 +02:00
FTL.h Change DELAY_UPTIME to 180 seconds 2022-07-10 22:01:57 +02:00
FindDBus.cmake Add shortcut to compile an all-options build of dnsmasq inside FTL. Note that this does not include ubus as it is an OpenWRT-native thing that cannot be setup easily on any other distro. 2022-11-10 20:36:25 +01:00
args.c Force-update embedded dnsmasq version. We are loosing the individual dnsmasq history of the ~ last year, however, given the multitude of merge conflicts and the fact that this code will soon(ish) be replaced by development-v6 (where the history is 100% intact), this isn't much of an issue 2024-02-09 20:48:59 +01:00
args.h Use OVER constant instead of carridge return 2023-05-15 19:15:59 +02:00
capabilities.c Add capabilities check for CAP_NET_RAW (root always has it) 2023-05-16 21:02:29 +02:00
capabilities.h Add capabilities check for CAP_NET_RAW (root always has it) 2023-05-16 21:02:29 +02:00
config.c Add extra debugging output 2023-05-04 07:36:04 +02:00
config.h Do not use a new option but instead automatically detect if ABP-style domains are present in the database. This ensures that this addition comes at no extra costs to any installs using pure HOSTS-style adlists. 2023-02-15 21:19:31 +01:00
daemon.c Ensure DELAY_STARTUP can be interrupted by external signals (e.g. SIGTERM) when trying to restart FTL really early 2022-11-03 20:45:31 +01:00
daemon.h Fix storing of API thread IDs 2022-08-20 15:01:03 +02:00
datastructure.c Allow FTL to analyze stale cache replies. They are assigned to a new query type (17) 2022-11-09 20:09:48 +01:00
datastructure.h Work around long-standing bug in gcc 12.x reported in #1424 2022-11-03 20:44:53 +01:00
dnsmasq_interface.c Necessary changed to handle the most recent dnsmasq changes in FTL 2024-02-08 18:11:37 +01:00
dnsmasq_interface.h Simplify EDNS handling code and also interpret replies received from upstream 2023-04-07 20:40:52 +02:00
edns0.c Log if EDNS header is NULL and we are in debug mode 2023-04-08 14:37:28 +02:00
edns0.h Simplify EDNS handling code and also interpret replies received from upstream 2023-04-07 20:40:52 +02:00
enums.h Allow FTL to analyze stale cache replies. They are assigned to a new query type (17) 2022-11-09 20:09:48 +01:00
events.c Fix some spellings, ignore others 2022-04-22 18:26:31 +01:00
events.h Add explicit event queue to avoid possible race collisions when many signals arrive at the same time (or very very close to each other) 2020-09-03 20:45:59 +02:00
files.c Fix some spellings, ignore others 2022-04-22 18:26:31 +01:00
files.h Warn about resource shortages (15min load average exceeding number of cores, available disk space for database and log file, and available shared memory (RAM)) 2021-11-29 14:11:15 +01:00
gc.c Do not log running out of disk space when the disk occupation is > 100%. We are seeing this with docker deployments on macOS hosts. It is a band-aid fix, however, it also seem to be the only thing we can do given that docker didn't fix this in nearly two years now. 2023-05-07 22:11:35 +02:00
gc.h Log how long a query will be refused when rate-limiting 2021-09-20 11:33:13 +02:00
gen_version.cmake Force 8 digits to display git object names 2022-11-14 22:52:53 +01:00
log.c Add .codespellignore file to fix spell-checker action 2023-03-20 19:46:09 +01:00
log.h Fix some spellings, ignore others 2022-04-22 18:26:31 +01:00
main.c Force-update embedded dnsmasq version. We are loosing the individual dnsmasq history of the ~ last year, however, given the multitude of merge conflicts and the fact that this code will soon(ish) be replaced by development-v6 (where the history is 100% intact), this isn't much of an issue 2024-02-09 20:48:59 +01:00
main.h Force-update embedded dnsmasq version. We are loosing the individual dnsmasq history of the ~ last year, however, given the multitude of merge conflicts and the fact that this code will soon(ish) be replaced by development-v6 (where the history is 100% intact), this isn't much of an issue 2024-02-09 20:48:59 +01:00
overTime.c Oldest timestamp is (OVERTIME_SLOTS-1) times the OVERTIME_INTERVAL in the past 2022-05-02 19:07:38 +02:00
overTime.h Check struct sizes on the CI (in code) instead of during compile time (using the preprocessor) 2022-04-18 10:39:43 +02:00
procps.c Reduce allocated memory when determining process names. This possible buffer overflow by one byte (which should, however, be impossible to exploit). Thanks to Raymond Weber for pointing this out! 2022-04-25 20:43:55 +02:00
procps.h Improve process-already-running detection 2021-02-17 12:52:29 +01:00
regex.c New syntax: querytype=A accepts now also a list (like querytype=A,AAAA,MX). You can use the exclamation mark as before for inversion (querytype=!A) matches everything BUT type A queries. This has now been extended to be able to invert a list, too (like (querytype=!A,AAAA matches everything BUT A and AAAA queries) 2023-01-26 20:11:55 +01:00
regex_r.h Add .codespellignore file to fix spell-checker action 2023-03-20 19:46:09 +01:00
resolve.c Tweak resolver to always go the full PTR path instead of taking a shortcut via /etc/hosts. The latter is a lot more efficient, however, it has the drawback of missing out a few things like local interface IP names, returning "localhost" when the user actually wants \pi.hole" or the hostname. 2021-10-04 09:50:53 +02:00
resolve.h Respect settings RESOLVE_IPV4 and RESOLVE_IPv6 also when trying to resolve host names from the database (network table) 2020-11-30 19:27:08 +01:00
setupVars.c Fix some spellings, ignore others 2022-04-22 18:26:31 +01:00
setupVars.h Correct declaration for blockingstatus variable. 2023-03-24 07:02:01 +02:00
shmem.c Verify PID of shared memory without remapping global shmSettings object 2022-11-16 21:57:13 +01:00
shmem.h Store and check shared memory ownership before resizing shared memory objects. The scenario we are resolving here is the following: FTL is already running and someone(/-thing) deletes all the shared memory objects. If another instance of FTL is then started, it doesn't know a previous process is running and creates new SHM objects for itself. Both processes can - in theory - run just fine without touching each other as they are both actually using *different* shared memory objects. You are right when you think this is bizarre. The reason is that the first one has the shared memory objects still mapped into memory, i.e., "deleting" them from disk only removes the visible file handles. The next FTL instance creates files with the very same name, however, they are also new and distict files, i.e., their memory will point elsewhere. Both instances can now run in parallel just fine *until* one of them needs to resize a shared memory objects. If one of the shared memory events now gets resized to a size larger than it was before BUT smaller than what the other FTL instance is expecting, the other instance will instantaneously crash with a SIGSEGV (Bus error). 2022-11-03 20:45:31 +01:00
signals.c Fix some spellings, ignore others 2022-04-22 18:26:31 +01:00
signals.h Force-update embedded dnsmasq version. We are loosing the individual dnsmasq history of the ~ last year, however, given the multitude of merge conflicts and the fact that this code will soon(ish) be replaced by development-v6 (where the history is 100% intact), this isn't much of an issue 2024-02-09 20:48:59 +01:00
struct_size.c Add RISC-V 64-bit support and builds 2023-03-20 20:03:19 +01:00
struct_size.h Fuse ARM and 32bit checks as they are identical 2022-04-24 09:00:55 +02:00
timers.c Rename memory.c -> syscalls.c 2020-12-09 20:21:03 +01:00
timers.h Remove debugging timing output 2023-02-26 16:52:23 +01:00
vector.c Fix a memory leak when re-opening the databases (when forking or reloading the lists). The memory leak is on the order of a few bytes but scales quickly with the number of clients. It is caused by SQLite3 not being able to clean up behind itself when we're not finalizing and closing everything explicitly. 2021-03-16 11:37:13 +01:00
vector.h Check struct sizes on the CI (in code) instead of during compile time (using the preprocessor) 2022-04-18 10:39:43 +02:00
version.h.in Add cmake build 2020-05-25 10:45:13 -07:00