Commit Graph

92 Commits

Author SHA1 Message Date
DL6ER f07d902802 Merge branch 'development-v6' into tweak/api_network_info
Build, Test, Deploy / smoke-tests (push) Has been cancelled
Codespell / spell-check (push) Has been cancelled
Check for merge conflicts / merge-conflict (push) Has been cancelled
API validation / Node (push) Has been cancelled
Build, Test, Deploy / gha (pihole-FTL-386, , linux/386) (push) Has been cancelled
Build, Test, Deploy / gha (pihole-FTL-amd64, , linux/amd64) (push) Has been cancelled
Build, Test, Deploy / gha (pihole-FTL-amd64-clang, clang, linux/amd64) (push) Has been cancelled
Build, Test, Deploy / gha (pihole-FTL-riscv64, , linux/riscv64) (push) Has been cancelled
Build, Test, Deploy / self-hosted (pihole-FTL-arm64, linux/arm64/v8) (push) Has been cancelled
Build, Test, Deploy / self-hosted (pihole-FTL-armv6, linux/arm/v6) (push) Has been cancelled
Build, Test, Deploy / self-hosted (pihole-FTL-armv7, linux/arm/v7) (push) Has been cancelled
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-07-19 09:47:18 +02:00
DL6ER 5fdfeb9ef6 Add blocked domains in Query Log suggestions
Build, Test, Deploy / smoke-tests (push) Has been cancelled
Codespell / spell-check (push) Has been cancelled
Check for merge conflicts / merge-conflict (push) Has been cancelled
API validation / Node (push) Has been cancelled
Build, Test, Deploy / gha (pihole-FTL-386, , linux/386) (push) Has been cancelled
Build, Test, Deploy / gha (pihole-FTL-amd64, , linux/amd64) (push) Has been cancelled
Build, Test, Deploy / gha (pihole-FTL-amd64-clang, clang, linux/amd64) (push) Has been cancelled
Build, Test, Deploy / gha (pihole-FTL-riscv64, , linux/riscv64) (push) Has been cancelled
Build, Test, Deploy / self-hosted (pihole-FTL-arm64, linux/arm64/v8) (push) Has been cancelled
Build, Test, Deploy / self-hosted (pihole-FTL-armv6, linux/arm/v6) (push) Has been cancelled
Build, Test, Deploy / self-hosted (pihole-FTL-armv7, linux/arm/v7) (push) Has been cancelled
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-07-16 12:14:06 +02:00
DL6ER 172eaa52b9 Parse additional kernel info to get more IPv6 address details and laso parse IPv6 routing table
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-07-08 22:48:12 +02: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 aa123cacde Limit number of clients returned by the /api/history/clients endpoint to 20. This can be overwritten at compile-time and at run-time using the query parameter ?N=...
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-12-18 22:00:44 +01:00
DL6ER 6e860f0c81 Add special reply for reused TOTP tokens
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-11-06 11:35:26 +01:00
Christian König f26c7b45c3 Remove traces of reboot and poweroff
Signed-off-by: Christian König <ckoenig@posteo.de>
2023-11-01 22:23:44 +01:00
DL6ER e741ba4c94 Add app password support
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-10-23 18:13:12 +02:00
DL6ER f9a69a06ac Store sessions only momentarily in between FTL restarts
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-10-22 23:32:11 +02:00
DL6ER 85b5c94858 Add save/restore of API sessions to the database to avoid a forced logout on FTL restarts. This updated the database to version 15
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-10-22 08:44:10 +02:00
DL6ER 64baa94395 Add new config option webserver.api.searchAPIauth defaulting to false
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-10-13 18:51:49 +02:00
DL6ER b60e8bdc2f Add /api/info/login and remove some parts from /api/auth
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-10-08 22:55:24 +02:00
DL6ER 813509841b Accept cookie authentication only when CSRF header is provided (and correct)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-06-04 19:29:54 +02:00
DL6ER fe3ed0bb74 Add LUA pihole.needLogin(remote_addr)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-05-28 08:16:27 +02:00
DL6ER b5a6ae44aa Add /api/action/flush/arp flushing both the network and network_addresses tables in pihole-FTL.db
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-05-24 20:47:51 +02:00
DL6ER 3b404ff9a0 Add /api/actions/flush/logs
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-05-24 20:39:18 +02:00
DL6ER f48683a11e Continue to run webserver even when dnsmasq fails to still serve the web interface. Change the type of api/dns/blocking from bool to enum-string to support the new "failure" state
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-05-24 17:19:12 +02:00
DL6ER 7281da34b4 Add /api/clients/_suggestions
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-05-06 07:31:21 +02:00
DL6ER 3f0b8f4280 Ensure we always read diagnosis messages from the database
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-05-03 21:16:51 +02:00
DL6ER 749486273e Add method for deleteing sessions by their IDs
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-03-08 21:10:12 +01:00
DL6ER 9bf6176a64 Add TOTP 2FA to web interface and API
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-03-06 21:49:11 +01:00
DL6ER 4cc66df3f0 Rename /api/auth/session{ => s}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-18 14:58:53 +01:00
DL6ER 9eaab48405 Mark currently active session when listing active sessions
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-14 22:59:52 +01:00
DL6ER db0217f6f7 Add GET /api/auth/sessions for listing the currently active sessions
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-12 20:49:16 +01:00
DL6ER 5e436312f7 Invalidate all currently active sessions when password/pwhash are changed
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-12 20:42:04 +01:00
DL6ER 83195e678e Change /api/info/cache -> /api/info/metrics and add other metrics such as query reply sources and DHCP metrics
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-11 13:38:37 +01:00
DL6ER ac4c9e789d Add DELETE /api/dhcp/leases/{ip}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-05 13:55:45 +01:00
DL6ER 9fdecaeea9 Add GET /api/dhcp/leases
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-05 13:04:03 +01:00
DL6ER 39c91f995c Integrate former /api/config/_{topic,servers} into /api/config?detailed=true
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-04 12:31:43 +01:00
DL6ER 141b6879ce Move /api/{dns -> info}/cache
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-01 22:43:44 +01:00
DL6ER da6a1ae053 Add {GET,DELETE} /api/info/messages
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-30 21:00:08 +01:00
DL6ER 5bfc1fd122 Add /api/search as a batter replacement of the currently existing "pihole -q" command
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-29 19:55:12 +01:00
DL6ER c741e6703f Move src/cJSON -> src/webserver/cJSON
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-27 20:34:04 +01:00
DL6ER a9e2f298e8 Move src/civetweb -> src/webserver/civetweb
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-27 20:32:19 +01:00
DL6ER d51aa378a3 Add /api/action/reboot and /api/action/poweroff (needs extra capability CAP_SYS_BOOT)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-24 20:26:37 +01:00
DL6ER e4383775d1 Add /api/action/gravity which can be used to trigger a run of pihole -g. The output is live streamed using HTTP/1.1 chunked encoding.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-24 20:15:45 +01:00
DL6ER 13168c377b Add GET /api/teleporter
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-23 21:56:11 +01:00
DL6ER 2e54ca5577 Add /config/_server offering DNS server suggestions for the settings page
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-22 10:11:31 +01:00
DL6ER 1142540aac Single out a few items from /api/info/system into /api/info/{sensors,host,ftl}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-18 20:16:31 +01:00
DL6ER 37bafc1365 Move /api/{ftl -> info}/client, /api/ftl/dbinfo -> /api/info/database, /api/ftl/sysinfo -> /api/info/system, and /api/version -> /api/info/version
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-18 20:16:31 +01:00
DL6ER 6233bb489a Add GET /config/_topics which will be helpful when automatically generating a Pi-hole settings page
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-18 20:16:31 +01:00
DL6ER 88e57ef9e3 Manage custom.list through the universal /config/dns/hosts instead of its own interface. This reduces code duplication.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-20 18:32:21 +01:00
DL6ER a506d38d9f Materialize the pseudoelement config.port as config.dnsmasq.port (it can now also be changed)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-18 04:39:09 +01:00
DL6ER 1ae49c7baf Add /api/logs/{ftl,http,ph7}
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-18 04:22:50 +01:00
DL6ER c901194d3b Rename /api/ftl/logs/dns -> /api/logs/dnsmasq
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-16 21:41:10 +01:00
DL6ER 952a296dd4 Add /api/dns/entries for manipulating the custom.list file (viewing, adding, and removing items)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-15 22:41:44 +01:00
DL6ER 225187447f Add /api/history/database documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 21:31:57 +01:00
DL6ER 60c09602ac Remove /api/settings/web
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 20:58:33 +01:00
DL6ER 8df3500c83 Move /api/ftl/gateway -> /api/network/gateway, /api/ftl/interfaces -> /api/network/interfaces, /api/ftl/network -> /api/network/devices, and /api/ftl/config -> /api/config and add documentation for /api/network/devices
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 20:52:13 +01:00
DL6ER 507df1c157 Move /api/network to /api/ftl/network
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 20:37:50 +01:00