MCPcopy Index your code
hub / github.com/google/seesaw / engineIPC

Method engineIPC

engine/core.go:238–255  ·  view source on GitHub ↗

engineIPC starts an RPC server to handle IPC via a Unix Domain socket.

()

Source from the content-addressed store, hash-verified

236
237// engineIPC starts an RPC server to handle IPC via a Unix Domain socket.
238func (e *Engine) engineIPC() {
239 if err := server.RemoveUnixSocket(e.config.SocketPath); err != nil {
240 log.Fatalf("Failed to remove socket: %v", err)
241 }
242 ln, err := net.Listen("unix", e.config.SocketPath)
243 if err != nil {
244 log.Fatalf("Listen failed: %v", err)
245 }
246 defer os.Remove(e.config.SocketPath)
247
248 seesawIPC := rpc.NewServer()
249 seesawIPC.Register(&SeesawEngine{e})
250 go server.RPCAccept(ln, seesawIPC)
251
252 <-e.shutdownIPC
253 ln.Close()
254 e.shutdownIPC <- true
255}
256
257// syncRPC starts a server to handle synchronisation RPCs via a TCP socket.
258func (e *Engine) syncRPC() {

Callers 1

RunMethod · 0.95

Implementers 3

EngineClientha/engine_client.go
DummyEngineha/engine_client.go
SeesawEngineengine/ipc.go

Calls 4

RemoveUnixSocketFunction · 0.92
RPCAcceptFunction · 0.92
RegisterMethod · 0.80
CloseMethod · 0.65

Tested by

no test coverage detected