Split net stack into eth/arp/ipv4/icmp, deferred handler responses, ping tests

This commit is contained in:
Ian Gulliver
2026-04-11 08:15:41 +09:00
parent 34efaeefd5
commit c35c1de76a
16 changed files with 522 additions and 330 deletions

View File

@@ -5,12 +5,12 @@
#include "net.h"
#include "debug_log.h"
ResponsePICOBOOT handle_picoboot(const RequestPICOBOOT&) {
std::optional<ResponsePICOBOOT> handle_picoboot(const responder&, const RequestPICOBOOT&) {
dispatch_schedule_ms(100, []{ reset_usb_boot(0, 1); });
return {};
return ResponsePICOBOOT{};
}
ResponseInfo handle_info(const RequestInfo&) {
std::optional<ResponseInfo> handle_info(const responder&, const RequestInfo&) {
ResponseInfo resp;
pico_unique_board_id_t uid;
pico_get_unique_board_id(&uid);
@@ -22,7 +22,7 @@ ResponseInfo handle_info(const RequestInfo&) {
return resp;
}
ResponseLog handle_log(const RequestLog&) {
std::optional<ResponseLog> handle_log(const responder&, const RequestLog&) {
ResponseLog resp;
for (auto& e : dlog_drain())
resp.entries.push_back(LogEntry{e.timestamp_us, std::move(e.message)});