20#ifndef DETERMINISTICESPASYNCWEBSERVER_PHYSICAL_H
21#define DETERMINISTICESPASYNCWEBSERVER_PHYSICAL_H
User-facing configuration for DeterministicESPAsyncWebServer.
DetIface
Network interface a connection arrived on (for per-route filtering).
Layer 3 (Network) - a family-tagged IP address (IPv4 or IPv6) with RFC-faithful text parsing,...
uint32_t det_net_egress_ip(void)
IPv4 (network byte order) of the current egress interface, or 0 if none.
bool ipv6_ready(void)
True once the interface has a global IPv6 address (see net_global_ipv6()).
bool eth_ready(void)
True if the Ethernet link is up and an IP is assigned.
bool wifi_ready()
True if the WiFi station link is up (associated + an IP is assigned).
bool init_wifi_physical(const char *ssid, const char *password)
Connect to a WiFi access point.
bool net_global_ipv6(DetIp *out)
The interface's global (routable) IPv6 address, if it has one.
DetIface det_net_egress(void)
Which interface currently carries outbound traffic.
bool init_ipv6_physical(void)
Enable IPv6 (dual-stack) on the Wi-Fi interface (DETWS_ENABLE_IPV6).
bool init_eth_physical(void)
Bring up a wired Ethernet link (DETWS_ENABLE_ETHERNET).
DetIface det_net_classify_ip(uint32_t egress_ip, uint32_t sta_ip, uint32_t ap_ip)
Classify an egress IPv4 against the WiFi station / softAP IPs (pure helper, exposed for unit testing)...
A v4 or v6 address in network (big-endian) byte order.