diff options
| author | Aleksandr Nogikh <nogikh@google.com> | 2025-01-24 17:17:53 +0100 |
|---|---|---|
| committer | Aleksandr Nogikh <nogikh@google.com> | 2025-01-29 10:31:50 +0000 |
| commit | 94e13671726abbcf766f9b4aacd2ee04de59dcbd (patch) | |
| tree | 699abaa69f3509857969ca2d7ff3ea001df14c88 /pkg/rpcserver/runner.go | |
| parent | 6eea27042142c1c5e810b642deb831a8ed55b3da (diff) | |
pkg/rpcserver: refactor to remove Fatalf calls
Apply necessary changes to pkg/flatrpc and pkg/manager as well.
Diffstat (limited to 'pkg/rpcserver/runner.go')
| -rw-r--r-- | pkg/rpcserver/runner.go | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/pkg/rpcserver/runner.go b/pkg/rpcserver/runner.go index a6b763b9a..de38d29f7 100644 --- a/pkg/rpcserver/runner.go +++ b/pkg/rpcserver/runner.go @@ -77,12 +77,14 @@ type handshakeConfig struct { } type handshakeResult struct { + Files []*flatrpc.FileInfo + Features []*flatrpc.FeatureInfo CovFilter []uint64 MachineInfo []byte Canonicalizer *cover.CanonicalizerInstance } -func (runner *Runner) Handshake(conn *flatrpc.Conn, cfg *handshakeConfig) error { +func (runner *Runner) Handshake(conn *flatrpc.Conn, cfg *handshakeConfig) (handshakeResult, error) { if runner.updInfo != nil { runner.updInfo(func(info *dispatcher.Info) { info.Status = "handshake" @@ -104,21 +106,21 @@ func (runner *Runner) Handshake(conn *flatrpc.Conn, cfg *handshakeConfig) error Features: cfg.Features, } if err := flatrpc.Send(conn, connectReply); err != nil { - return err + return handshakeResult{}, err } infoReq, err := flatrpc.Recv[*flatrpc.InfoRequestRaw](conn) if err != nil { - return err + return handshakeResult{}, err } ret, err := cfg.Callback(infoReq) if err != nil { - return err + return handshakeResult{}, err } infoReply := &flatrpc.InfoReply{ CoverFilter: ret.CovFilter, } if err := flatrpc.Send(conn, infoReply); err != nil { - return err + return handshakeResult{}, err } runner.mu.Lock() runner.conn = conn @@ -132,7 +134,7 @@ func (runner *Runner) Handshake(conn *flatrpc.Conn, cfg *handshakeConfig) error info.DetailedStatus = runner.QueryStatus }) } - return nil + return ret, nil } func (runner *Runner) ConnectionLoop() error { |
