Commit Graph
58 Commits
Author SHA1 Message Date
DL6ER 3bb8050cf8 Remove extra system.hostname property from /api/sysinfo. It is already contained as system.uname.nodename of the very same API endpoint
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-14 20:36:49 +01:00
DL6ER 7afd123530 Add system.hostname and ftl.{pid,%cpu,%mem} to /api/ftl/sysinfo
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-14 10:08:03 +01:00
DL6ER 4a033795c1 Add misc.temp.unit and move misc.temp_limit to misc.temp.limit
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-12 19:27:24 +01:00
DL6ER 70127edd52 Add config.dnsmasq and routines to write dnsmasq config files
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-11 20:14:46 +01:00
DL6ER 8bbd49acf4 Modify /version to match the new /etc/pihole/versions file format
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-09 20:31:14 +01:00
DL6ER d8e95f4e46 Add config.http.interface.boxed and config.http.interface.theme primed by setupVars.conf:WEBUIBOXEDLAYOUT and WEBTHEME, respectively
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-09 20:25:24 +01:00
DL6ER 64441ed6d8 Add config.misc.temp_limit setting primed by setupVars.conf:TEMPERATURE_LIMIT (if available) used to signal beyond which temperature the frontend should consider the temperature "hot"
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-09 20:19:59 +01:00
DL6ER 140a365806 Tests: Set api.pwhash and dns.blocking.mode using PATCH /api/config
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-08 21:29:55 +01:00
DL6ER 4abba45878 Add "uname" object to /ftl/sysinfo containing the nodename, domainname, architecture and other details from uname
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-08 21:29:55 +01:00
DL6ER f199ac2f08 Automatically migrate the API password hash and the lists of clients and domains to be excluded from setupVars.conf
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-08 21:21:38 +01:00
DL6ER 448550fd9a Add PATCH /config which allows modifying all FTL config values. Changed values go into effect *immediately* and the config file is updated.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-08 20:55:31 +01:00
DL6ER 8efd253529 Merge remote-tracking branch 'origin/development' into new/http
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-07 18:37:13 +01:00
DL6ER e145d20d28 Rewrite the entire config-related code to allow for changing data without having to restart. Hereby, we greatly reduce code duplication in the TOML routines so we won't have to touch tme in the future when adding additional options.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-07 18:06:41 +01:00
DL6ER f2d68f20d7 Also verify endpoint structure: Query endpoints from FTL and check if all properties mentioned in the docs are present (and of correct type) and that there are no extra properties we forgot to document. Furthermore, also verify that the provided examples are of correct type, too.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-03 21:51:13 +01:00
DL6ER 5019cc7ac7 Add /api/stats/database/summary documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-03 20:17:34 +01:00
DL6ER 9c19abb86d Add /api/stats/query_types and /api/stats/database/query_types documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-03 20:06:52 +01:00
DL6ER 8588c5c62d Add /api/stats/top_clients and /api/stats/database/top_clients documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-03 19:24:14 +01:00
DL6ER 0b3a5baa0b Add /api/stats/top_domains and /api/stats/database/top_domains documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-03 19:11:02 +01:00
DL6ER 73c8783abc Add /api/stats/recent_blocked documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 21:41:41 +01:00
DL6ER ffacb1ad9e Add /history/database/clients documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 21:37:17 +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 c7803df604 Add /api/stats/upstreams and /api/stats/database/upstreams documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 21:19:11 +01:00
DL6ER 4936e0688f Add documentation for /api/queries/suggestions
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 21:08:01 +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 32279e0765 Also rename config options in test pihole-FTL.toml
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-02 20:08:45 +01:00
DL6ER bd5519c6bf Add API checking script
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-01 20:34:40 +01:00
DL6ER 3389b1f0c2 Add /api/ftl/config which can be used to retrieve the entire configuration of FTL. This endpoint only supports GET so far, however, we will add POST in the future so that configuration values can be changed through the API
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-01 18:19:36 +01:00
DL6ER c39a6e4080 Add /api/ftl/interfaces documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-12-31 20:18:20 +01:00
DL6ER 8f418a7788 Add /api/ftl/gateway documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-12-31 13:26:19 +01:00
DL6ER ffbe2bd370 Move /api/endpoints to /api/ftl/endpoints and add /api/ftl/endpoints documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-12-31 13:11:52 +01:00
DL6ER e9f5f667fa Add /dns/port documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-12-31 12:59:24 +01:00
DL6ER 23554c4241 Onlycompile outdated documentation file to speed-up the compilation process
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-12-31 10:23:06 +01:00
DL6ER bd817f54ee Add device.model to sysinfo object
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-07-17 22:00:31 +02:00
DL6ER 82e9a316da Update embedded civetweb 1.13 -> 1.14
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-06-08 09:57:18 +02:00
DL6ER ca84d5988d Add option to request query data from the on-disk database instead.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-05-26 11:36:47 +02:00
DL6ER 1022ff5fa1 Rename sum property to total in /api/stats
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-04-27 09:05:53 +02:00
DL6ER 45faefa786 Merge branch 'development' into new/http
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-04-26 14:09:50 +02:00
DL6ER 8e6144790f Move queries into their own API endpoint and prepare an endpoint with search field suggestions to be used with the Query Log
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-03-06 10:59:49 +00:00
DL6ER ba19cb8bbd Add DBID to /api/history/queries
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-03-06 06:34:58 +00:00
DL6ER ba0af27fb5 Implement Query Log server-side processing
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-03-02 15:17:54 +01:00
DL6ER ea509ecca1 Changes for query log implementation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-03-02 12:55:22 +01:00
DL6ER 18d45d709a Implement new fields added to the adlist table
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-03-01 11:38:46 +01:00
DL6ER 339749da3f Change timestamps from integer to double for (up to) nanosecond accuracy.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-02-03 12:37:59 +01:00
DL6ER fcbe840804 Also allow authentication by sending SID via HEADER
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-02-03 09:08:23 +01:00
DL6ER 195dc3cb9a Rename routes.{c,g} -> api.{c,h} and reduce locking where this is not needed to gain more speed for the API
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-02-02 12:21:36 +01:00
DL6ER 7608dd5c8d Tests: Log intermediate steps during authentication trial
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-02-02 11:27:38 +01:00
DL6ER 1ae67e8fbb Also use OpenAPI-enforcer to check the OpenAPI specs in addition
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-02-01 13:56:27 +01:00
DL6ER dfc9dac166 Add OpenAPI schema validation (npm test)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-02-01 12:03:20 +01:00
DL6ER ecc9486e52 API docs: Some general fixes for the specs
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-01-31 11:48:23 +01:00
DL6ER 5797f939e6 Add authentication support to the API documentation
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-01-31 10:32:28 +01:00