Sockets¶
Implemented¶
edgedcan expose Prometheus metrics over TCP with--prometheus-addr.edgedexposes local control RPC over Unix socket (--control-socket, default/run/edged/ctl.sock).edgectluses--socket(default/run/edged/ctl.sock) to call the control API.Relay transport interfaces are TCP-oriented in
transport.TransportAPI (Listen,Accept,Connect).
Control Socket Lifecycle + Permissions¶
Socket directory is created with
0700if needed.Existing path is removed only if it is a socket; non-socket path is rejected.
Socket node is created and chmod’ed to
0600by default.On daemon shutdown, listener is closed and socket path is removed.
This model enforces local-only control access and avoids accidental takeover via stale filesystem objects.
Evidence¶
edge/rpcv1/socket.go(ListenUnixSocket,SocketMode)edge/rpcv1/rpcv1_test.go(TestListenUnixSocketPermissions,TestListenUnixSocketRefusesRegularFile)edge/cmd/edged/main.go(control server setup + cleanup)edge/cmd/edgectl/main.go(--socketclient usage)edge/transport/transport.go