Files
mesh-host/internal/meshcli/peer_other.go
T
jochen 564948c2f2
mesh/merge-gate pass: builds mesh-host → ace, g14, novox, shanks; no bus step; every machine composes with the change as it did without (4 of 4 compose)
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
mesh-cli: follow a line to its answer, bound each account, refuse other namespaces (review of hq ADR 0272)
- A request that timed out was said as "the controller was not reached,
  nothing ran", though the line may have run. The engine now follows a line
  the controller answers as running, by its call, until it ends; when no
  answer comes in time it says the line may have run and names the call.
  "Nothing ran" is said only of a request no controller took.
- One account could hold the socket: accepting waited for a free slot, and
  a connection could stall before its deadline was set. The deadline is set
  at accept, before any lookup; each user id has two lines at once and the
  machine eight, and one over is answered busy at once.
- A container running with the operator's user id shares the number, not
  the machine: a peer whose mount or user namespace is not the engine's is
  refused, and nothing is asked.

SDK pinned at the go/cli branch's newest commit until go/v0.1.9 is tagged.
2026-10-09 12:48:20 +02:00

20 lines
600 B
Go

//go:build !linux
package meshcli
import (
"errors"
"net"
)
// peerCredentials is unknown where the kernel's way of saying it is not built here: refused, never guessed.
func peerCredentials(*net.UnixConn) (uint32, int32, error) {
return 0, 0, errors.New("this engine reads a peer's account on Linux only")
}
// namespacesOf is never satisfied where peers cannot be read.
func namespacesOf(int32) error { return errors.New("not read on this system") }
// notOwnDirectory is never satisfied where peers cannot be read.
func notOwnDirectory(string) string { return "not served on this system" }