Bernhard Kirchen
b1edb13b3c
add and use configuration write guard
...
the configuration write guard is now required when the configuration
struct shall be mutated. the write guards locks multiple writers against
each other and also, more importantly, makes the writes synchronous to
the main loop. all code running in the main loop can now be sure that
(1) reads from the configuration struct are non-preemtive and (2) the
configuration struct as a whole is in a consistent state when reading
from it.
NOTE that acquiring a write guard from within the main loop's task will
immediately cause a deadlock and the watchdog will trigger a reset. if
writing from inside the main loop should ever become necessary, the
write guard must be updated to only lock the mutex but not wait for a
signal.
2024-10-22 20:39:23 +02:00
Thomas Basler
2f41f43d49
Update bblanchon/ArduinoJson from 7.1.0 to 7.2.0
2024-09-21 00:12:15 +02:00
Thomas Basler
980e847ccb
Feature: Check for out of memory situations when sending json responses
...
Also shows a nice message in the frontend if an internal error occours
2024-04-05 19:14:56 +02:00
Thomas Basler
2e3125fe8d
Feature: Migrated ArduinoJson 6 to 7
2024-04-05 19:14:56 +02:00
Thomas Basler
8add226a7c
Save flash: Move WebApi json parsing to separate method to prevent a lot of redundant code
2024-04-01 13:52:09 +02:00
Thomas Basler
2716f4c5df
Removed not required pointer to AsyncServer instance
2024-01-27 01:09:55 +01:00
Thomas Basler
251d197fb6
Migrate WebApi loop() methods to scheduler tasks
2024-01-20 02:00:22 +01:00
Thomas Basler
3c37b61f44
Use auto keyword and references more often
2024-01-04 15:38:56 +01:00
Thomas Basler
4053e31a5e
Prevent config corruption by checking whether memory allocation was successfull.
2024-01-04 13:42:39 +01:00
Thomas Basler
e95afbf2cc
Use references instead of pointers whenver possible
2023-12-12 13:26:07 +01:00
Thomas Basler
47e905bcfc
Add const statement to several variables
2023-12-11 19:54:57 +01:00
Thomas Basler
b85c53f476
Split config struct into different sub structs
2023-11-19 14:53:26 +01:00
CommanderRedYT
7c875187a8
Implemented mDNS
2023-10-30 20:53:45 +01:00
Martin Dummer
8bfa7e530c
Feature: Admin AccessPoint Timeout now configurable
...
Make the administrative accesspoint timeout configurable. The default
value is 3 minutes, values from 0-99999 are possible, where 0 means
infinite (no timeout).
Signed-off-by: Martin Dummer <martin.dummer@gmx.net>
2023-07-22 18:14:07 +02:00
Thomas Basler
a68c553d27
Code formatting without functional changes
2023-07-22 18:07:03 +02:00
Thomas Basler
91d3cd1da2
Feature: Show BSSID in the web interface
2023-06-08 19:56:22 +02:00
Thomas Basler
d6028cbd50
Remove not required F() macro. Frees ~20kb flash.
2023-04-04 18:51:18 +02:00
Thomas Basler
3e8c7a4c10
Introduce numeric error codes in network webapi
2022-12-24 00:01:54 +01:00
Thomas Basler
54d94af487
Cleanup includes
2022-12-14 22:13:03 +01:00
Thomas Basler
510f0c59f9
Implement readonly security for API endpoints
2022-11-22 23:40:19 +01:00
Thomas Basler
e605e42c3e
Password protection for network settings API
2022-11-03 21:13:42 +01:00
Thomas Basler
7ec070f6f9
Fix #212 : Only check ssid if in wifi mode
2022-10-11 23:04:43 +02:00
Thomas Basler
de33b9ff88
Do not use namespace using-directives. Use using-declarations instead.
2022-09-13 21:35:51 +02:00
Thomas Basler
66c28a2e6e
Replace strcpy by strlcpy
2022-09-13 21:20:08 +02:00
Thomas Basler
86f01e5cc4
webapp: Show complete generated hostname in network info view
2022-09-06 18:45:32 +02:00
Thomas Basler
31e56f6c2b
Code hardening: introduce const keyword
2022-09-05 21:41:45 +02:00
Thomas Basler
608912e9f3
Show network status (WiFi/Ethernet) in network info view
2022-07-20 19:21:31 +02:00
Thomas Basler
c022b8696b
Implemented serveal global network functions which are independent of the medium (wifi / ethernet)
2022-07-19 21:53:04 +02:00
Thomas Basler
c7aa22ce6c
Renamed WifiSettings to NetworkSettings and implemented first ethernet initialization
2022-07-19 21:27:36 +02:00
Thomas Basler
37aac48a19
Change License to GPLv2 as the RF24 lib uses GPL-2.0-only
2022-07-15 18:05:58 +02:00
Thomas Basler
92abfdfaa6
Separated WebApi into different files
2022-06-15 23:46:22 +02:00