repeater/internal
Pierre-Olivier Mercier 310cce2a45 app: Detect Ethernet uplink via default route, not address flags
probeEthernet looked for a "DHCP-assigned" address using the `dynamic`
flag or a finite `valid_lft`. udhcpc (BusyBox) installs the leased
address with a plain `ip addr add` and no lease lifetime, so the address
shows `valid_lft forever` and no `dynamic` flag — indistinguishable from
a static LAN/hotspot address on the same interface. The uplink was never
recognized and wpa_supplicant was started despite working connectivity.

Detect the uplink via the interface's default route instead, which is
reliable across udhcpc and full iproute2, and report the uplink source
address from `ip route get` so the UI shows the DHCP address rather than
a co-located static one.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 09:51:44 +08:00
..
api Harden API surface and station/wifi backends 2026-05-01 21:56:50 +08:00
app app: Detect Ethernet uplink via default route, not address flags 2026-07-05 09:51:44 +08:00
config station/hostapd: Resolve station IPs via udhcpd leases and ARP fallback 2026-05-02 11:07:37 +08:00
hotspot Harden API surface and station/wifi backends 2026-05-01 21:56:50 +08:00
logging Harden API surface and station/wifi backends 2026-05-01 21:56:50 +08:00
models app: Surface Ethernet uplink in the UI and gate wpa_supplicant access 2026-05-02 11:24:36 +08:00
station station/hostapd: Resolve station IPs via udhcpd leases and ARP fallback 2026-05-02 11:07:37 +08:00
syslog syslog filter could take several filters 2026-01-01 23:31:01 +07:00
wifi wpasupplicant: Disable D-Bus auto-activation on all calls 2026-07-02 11:44:59 +08:00