Commit Graph

3251 Commits

Author SHA1 Message Date
DL6ER ef4e592ea9 Verify that every config option has a validator. Otherwise, return a log error that will fail the CI tests. This will help ensuring we won't forget to add validators for PRs that are merged in parallel or new config options added in the future
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-21 20:16:09 +01:00
DL6ER 28b0ab27fd Add regex array validation for webserver.api.excludeClients and webserver.api.excludeDomains
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-21 20:09:12 +01:00
DL6ER b9fc7da559 Merge branch 'development-v6' into new/validator
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-21 20:01:11 +01:00
DL6ER 619a8b1cf4 Fix pointer magic going wrong
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-20 12:44:03 +01:00
DL6ER bafbc780ed Apply review comments
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-20 09:38:50 +01:00
DL6ER 24b6df4cb4 Reduce code duplication by factoring out filter regex compilation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-20 09:33:06 +01:00
DL6ER 862d4922e1 Merge branch 'development-v6' into new/queryLogRegex
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-16 22:46:31 +01:00
Dominik c39261131a Merge pull request #1832 from pi-hole/tweak/limit_history_clients
Limit number of clients returned by /api/history/clients
2024-01-16 22:37:33 +01:00
DL6ER 5c4355f1b1 Compile exclude regexes only once, not N^2 times
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-16 22:35:53 +01:00
DL6ER 3c58e3089b Change order of objects in documentation (small nit pick)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-16 21:51:55 +01:00
Dominik ff452fc68d Merge pull request #1859 from pi-hole/fix/remote_version
Return null as version in /api/info/version if not available
2024-01-15 22:09:33 +01:00
DL6ER 12e7f44b92 Return null as version in /api/info/version if not available
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-15 20:58:44 +01:00
DL6ER 1bf26f0de8 Update embedded SQLite 3 to 3.45.0
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-15 20:09:08 +01:00
DL6ER 4e5521f400 Add new config option to API
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-13 10:50:18 +01:00
Dominik 833291323f Merge pull request #1752 from pi-hole/remove/local.list
Remove obsolet local.list
2024-01-13 10:45:27 +01:00
DL6ER 03466460c3 Add webserver.api.maxClients setting to set default number of clients to be returned for the client activity graph. This setting can be overwritten at run-time
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-13 10:39:22 +01:00
DL6ER 58637597bf Merge branch 'development-v6' into tweak/limit_history_clients 2024-01-13 10:32:56 +01:00
DL6ER 55339f01b5 Adjust webserver.api.exclude{Clients,Domains} description
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-13 10:17:58 +01:00
DL6ER e35aa78030 Only free API data when the API was started
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-13 10:08:43 +01:00
DL6ER b7f49e9636 Add Pi-hole v5 -> v6 regex migration for webserver.api.exclude{Domains,Clients}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-13 08:24:55 +01:00
DL6ER e9e43094bf Remove webserver.api.excludeRegex and instead allow regex to be used in the existing excludeDomains and excludeClients
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-13 08:20:53 +01:00
DL6ER aa8285846b Remove excludeClients from Client activity over time (/api/history/clients)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-13 07:59:18 +01:00
DL6ER 4024af9cdd Only compare against valid filter strings
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-11 17:50:21 +01:00
DL6ER ded6692fec Clarify which API endpoints are affected by the exclusion settings
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-11 17:44:54 +01:00
DL6ER 0eb1aaa8f4 Extend webserver.api.excludeClients and webserver.api.excludeDomains to the Query Log
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-11 17:35:47 +01:00
DL6ER cff605b14e Further simplify skipping logic
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-10 21:49:54 +01:00
DL6ER 23d116caac Regex filtering is filtering: We need to do full counting to get the correct number of rows
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-10 21:44:51 +01:00
DL6ER e24c36327d Merge branch 'development-v6' into fix/delete_dhcp_lease
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-10 20:02:09 +01:00
Dominik 02962d9244 Merge pull request #1839 from pi-hole/new/who_murders_me
If someone terminates FTL, try to obtain who is the murderer and log it
2024-01-10 19:43:02 +01:00
Dominik 4372797636 Merge pull request #1836 from pi-hole/fix/delete_codes
Fix DELETE API endpoints return codes
2024-01-08 19:38:35 +01:00
Christian König 4174fe3b09 Don't print double newlines after invalid domains
Signed-off-by: Christian König <ckoenig@posteo.de>
2024-01-07 22:23:19 +01:00
DL6ER 14af354979 Do not rely on the old behavior of empty password is always correct when no password is set when changing the latter
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 21:16:30 +01:00
DL6ER 35e1acb533 Do not accept password login when the system is configured to not require a password
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 15:26:56 +01:00
DL6ER a961a4d14f Do not accept DELETE session if no session is used (this also applies to password-less or localhost-no-auth mode)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 15:20:24 +01:00
DL6ER ee367a6c38 Merge branch 'development-v6' into new/queryLogRegex
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:59:10 +01:00
DL6ER 901d838cf9 Merge branch 'development-v6' into tweak/limit_history_clients
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:55:07 +01:00
DL6ER 1d83e39421 Extend 204/404 logic to /dhcp/leases/{ip}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:51:39 +01:00
DL6ER 85e3d4dd08 Extend 204/404 logic to /config/{element}/{value}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:51:35 +01:00
DL6ER 06147abd5d A 204 response must not contain a body (https://tools.ietf.org/html/rfc7231#section-6.3.5)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:51:35 +01:00
DL6ER 55e0e84a92 Extend 204/404 logic to /network/devices/{device_id}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:51:31 +01:00
DL6ER c0172130fd Extend 204/404 logic to /info/messages/{message_id}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:51:27 +01:00
DL6ER bb50a106d1 A few fixed for the response code documentation of the :batchDelete elements
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:20:28 +01:00
DL6ER e5e9d11211 Fix DELETE API endpoints. They should return 204 when something was deleted and 404 is nothing was found at this resource
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-07 09:04:20 +01:00
Dominik 933e6f605f Merge pull request #1728 from pi-hole/tweak/query_auth
Add authentication via query string
2024-01-07 07:50:58 +01:00
Dominik 34464923cf Merge pull request #1851 from pi-hole/new/location
Add Location header for newly created groups/clients/domains/lists
2024-01-07 07:50:20 +01:00
Dominik 9b9e7b7307 Merge pull request #1813 from pi-hole/fix/too_many_top_domains
Only include as many domains as we have in the sorted array
2024-01-07 07:49:58 +01:00
Dominik e48ee5fcd6 Merge pull request #1835 from pi-hole/fix/one_of_string_array
Fix one-of definition in clients, domains, groups, and lists POST
2024-01-07 07:48:42 +01:00
DL6ER 8806f6427f Add Location header for newly created groups/clients/domains/lists
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-06 18:16:42 +01:00
DL6ER 33df6d48ea Merge branch 'development-v6' into new/validator
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-01-06 18:09:15 +01:00
Dominik 977acf480c Merge pull request #1766 from pi-hole/new/teleporter_v5
Add support for legacy Teleporter archives
2024-01-06 16:42:04 +01:00