- 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.
20 lines
600 B
Go
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" }
|