WiFi screen: reach the root helper through a socket instead of sudo; adapter dropdown
The kiosk app can end up with the no-new-privileges flag, after which sudo
refuses to run ("The no new privileges flag is set"). The helper is now
served over a root-owned, kiosk-group-only unix socket (systemd socket
activation); sudo stays as a fallback. With several WiFi adapters the screen
shows a dropdown and lists all of them; status/scan/connect take an iface.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013wi3ZQveYdjfcrEsyazq32
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
[Unit]
|
||||
Description=Kiosk WiFi helper socket (used by the kiosk app's WiFi screen)
|
||||
|
||||
[Socket]
|
||||
ListenStream=/run/kiosk-wifi-helper.sock
|
||||
SocketUser=root
|
||||
# Replaced with the kiosk user's group when installed (lib/provision.sh).
|
||||
SocketGroup=@KIOSK_GROUP@
|
||||
SocketMode=0660
|
||||
Accept=yes
|
||||
MaxConnections=4
|
||||
|
||||
[Install]
|
||||
WantedBy=sockets.target
|
||||
@@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=Kiosk WiFi helper (one request)
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/local/bin/kiosk-wifi-helper-socket
|
||||
StandardInput=socket
|
||||
StandardOutput=socket
|
||||
StandardError=journal
|
||||
# A connect waits up to ~30s for an address, plus netplan; never run forever.
|
||||
RuntimeMaxSec=180
|
||||
Reference in New Issue
Block a user