DL6ER
ec37efd77f
Fix debug.api config options description.
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2024-02-10 09:34:25 +01:00
DL6ER
0a48d7a4c4
Change how Pi-hole generates from self-signing our certificate to first creating a self-signed root certificate authority (CA) and then using this CA to ordinarily sign the server's certificate. This has the advantage of being able to import the CA in places where importing a self-signed certificate is discouraged or not possible (e.g. Firefox browser)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2024-01-16 22:55:02 +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
5f0e405d82
Update bundled cJSON from 1.7.15 -> 1.7.17 released yesterday
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-12-26 09:36:06 +01:00
Dominik
1a0921cd48
Merge pull request #1810 from pi-hole/new/batchDelete
...
Implement special POST :batchDelete callbacks
2023-12-15 20:19:09 +01:00
DL6ER
d802f0e301
Reduce number of warnings coming from third-party modules we use shown during compilation
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-12-07 22:27:14 +01:00
DL6ER
19cfed227f
Fix possible deferencing of NULL pointers
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-12-07 21:00:01 +01:00
DL6ER
0ef89ab3eb
Implement special POST :batchDelete callbacks for /api/groups, /api/domains/, /api/clients, and /api/lists
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-12-06 23:27:20 +01:00
DL6ER
066a38f466
Don't even try to start webserver if webserver.port is an empty string
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-12-03 22:57:02 +01:00
DL6ER
242b35eba8
Remove CH TXT privacylevel.pihole entry
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-30 21:59:39 +01:00
DL6ER
d212f26634
Add CHAOS TXT records to dynamically get the available API ports:
...
- domain.api.ftl will use the configured web domain, e.g. "https://pi.hole:443/api "
- local.api.ftl will use the hard-coded string "localhost" instead, e.g., "https://localhost:443/api "
- api.ftl is an alias for domain.api.ftl
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-30 12:56:52 +01:00
DL6ER
3f4502c01b
Add comments
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-27 14:41:38 +01:00
DL6ER
1d03a5356d
Also check wildcards prefixed by "CN=" in the subject name of the certificate
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-27 14:25:25 +01:00
DL6ER
b017c1c20c
The SAN is not NUL-terminated, we need to use the specified length explicitly
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-27 13:27:04 +01:00
DL6ER
0f5d3970bb
Implement wildcard X.509 SAN/CN (subject) domain checking
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-26 22:24:23 +01:00
DL6ER
46eca50db0
Fix logging when reading the TLS certificate
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-21 09:43:08 +01:00
DL6ER
c97239aced
Remove CivetWeb patch which is not needed when authentication_domain is set
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-19 11:20:40 +01:00
DL6ER
5926c5b246
Set civetweb's authentication_domain to config.webserver.domain
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-19 09:33:36 +01:00
DL6ER
67a630c790
Explicitly check hint being NULL before trying to free it in send_json_error_free()
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-15 12:06:08 +01:00
DL6ER
4644843c92
Use thread-safe variant of localtime()
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-11 20:58:24 +01:00
DL6ER
afefe4ca30
Create dynamic validity period when generating X.509 certificate
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-10 22:18:06 +01:00
DL6ER
df2ba4c724
Fix escape_html() crashing for NULL input
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-10 21:03:28 +01:00
DL6ER
d310f8efb3
Spellcheck fixes
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-09 17:50:07 +01:00
DL6ER
58b402be6f
Add tests for --read-x509(-key)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-09 16:30:22 +01:00
DL6ER
6498e6bf93
Add logging to the Pi-hole diagnosis system when we detect a certificate domain mismatch
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-09 16:00:26 +01:00
DL6ER
651bb7f065
Add X.509 certificate/key parser
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-11-09 06:29:02 +01:00
DL6ER
ebb27741b1
Allow extended ASCII characters in URIs
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-31 08:35:31 +01:00
DL6ER
0700bf0f9d
Merge pull request #1689 from pi-hole/new/keep_sessions
...
Backup and restore API sessions to/from database
2023-10-28 17:33:16 +02:00
DL6ER
c7f50a372a
Merge pull request #1629 from pi-hole/tweak/domain_array
...
Add ability to specify domains, lists, clients and group names as arrays
2023-10-26 22:34:33 +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
d00c9df972
Update comment in src/webserver/x509.c
...
Co-authored-by: yubiuser <ckoenig@posteo.de >
Signed-off-by: DL6ER <DL6ER@users.noreply.github.com >
2023-10-18 22:47:55 +02:00
DL6ER
434d944a07
Also add pi.hole as alternative subject if domain != "pi.hole"
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-18 16:52:11 +02:00
DL6ER
8bb7e57968
Merge branch 'development-v6' into tweak/domain_array
2023-10-17 21:39:03 +02:00
DL6ER
0e81faadb2
Add SAN filed into self-generated X.509 TLS certificates. It is mandatory since RFCs 2818 and 3280
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-17 21:27:13 +02:00
DL6ER
3502be015b
Merge pull request #1668 from pi-hole/fix/redirect_admin_slash
...
Add /admin -> /admin/ redirect handler
2023-10-16 23:21:01 +02:00
DL6ER
1556b72abe
Add /admin -> /admin/ redirect handler
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-15 10:44:54 +02:00
DL6ER
c5067b3a60
Merge pull request #1664 from pi-hole/new/error_pages
...
Add error pages support and extended webserver debugging option
2023-10-14 20:44:48 +02:00
DL6ER
8df1fdcd3f
Add error_pages option to CivetWeb causing the webserver to search in the web interface's root for error pages
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-14 15:50:43 +02:00
DL6ER
445aed4fd5
Log debug messages to webserver.log when debug.webserver is true
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-14 15:39:21 +02:00
DL6ER
a7417a62b7
Only hint to checking the webserver log file
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-13 21:36:57 +02:00
DL6ER
5d55e13cbd
Enquote configureable strings
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-13 20:54:31 +02:00
DL6ER
6636916f3c
Add hint to check the webserver log (and where to find it)
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-13 20:53:37 +02:00
DL6ER
bc72fe6772
Merge branch 'development-v6' into tweak/domain_array
2023-10-13 20:12:03 +02:00
DL6ER
b017b02486
Add error reporting during library initialization
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-13 19:57:35 +02:00
DL6ER
39a6324426
Fix wording of info message concerning self-generated TLS certificate. Before this commit, we incorrectly logged that we created a TLS certificate not only when we really did this but also after each restart when simply using it.
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-11 22:17:46 +02:00
DL6ER
80d4a0efec
Merge pull request #1653 from pi-hole/tweak/api_auth_https
...
Add /api/info/login
2023-10-10 20:36:04 +02:00
DL6ER
3c9b123e44
Initialize mbedtls with default instead of SuiteB presets
...
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-10 19:28:14 +02:00
DL6ER
f9e6e55a25
Merge pull request #1654 from pi-hole/tweak/x509_domain
...
Allow generating X.509 TLS certificates for arbitrary domain names
2023-10-09 21:48:56 +02:00
DL6ER
687e489e2a
Allow generating X.509 TLS certificates for arbitrary domain names. When auto-generated, FTL uses the config value webserver.domain defaulting to "pi.hole".
...
The generated certificate may be checked using, e.g. openssl x509 -in /etc/pihole/tls.pem -text -noout
Signed-off-by: DL6ER <dl6er@dl6er.de >
2023-10-09 16:55:12 +02:00
DL6ER
c01567aa4f
Merge branch 'development-v6' into tweak/redirections
2023-10-08 09:11:32 +02:00