rpctype

package
v0.0.0-...-9d70ccd Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 20, 2024 License: Apache-2.0 Imports: 7 Imported by: 74

Documentation

Overview

Package rpctype contains types of message passed via net/rpc connections between syz-manager and syz-hub.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type HubConnectArgs

type HubConnectArgs struct {
	// Client/Key are used for authentication.
	Client string
	// The key may be a secret password or the oauth token prefixed by "Bearer ".
	Key string
	// Manager name, must start with Client.
	Manager string
	// See pkg/mgrconfig.Config.HubDomain.
	Domain string
	// Manager has started with an empty corpus and requests whole hub corpus.
	Fresh bool
	// Set of system call names supported by this manager.
	// Used to filter out programs with unsupported calls.
	Calls []string
	// Current manager corpus.
	Corpus [][]byte
}

type HubInput

type HubInput struct {
	// Domain of the source manager.
	Domain string
	Prog   []byte
}

type HubSyncArgs

type HubSyncArgs struct {
	// see HubConnectArgs.
	Client     string
	Key        string
	Manager    string
	NeedRepros bool
	// Programs added to corpus since last sync or connect.
	Add [][]byte
	// Hashes of programs removed from corpus since last sync or connect.
	Del []string
	// Repros found since last sync.
	Repros [][]byte
}

type HubSyncRes

type HubSyncRes struct {
	// Set of inputs from other managers.
	Inputs []HubInput
	// Same as Inputs but for legacy managers that don't understand new format (remove later).
	Progs [][]byte
	// Set of repros from other managers.
	Repros [][]byte
	// Number of remaining pending programs,
	// if >0 manager should do sync again.
	More int
}

type RPCClient

type RPCClient struct {
	// contains filtered or unexported fields
}

func NewRPCClient

func NewRPCClient(addr string) (*RPCClient, error)

func (*RPCClient) AsyncCall

func (cli *RPCClient) AsyncCall(method string, args interface{})

func (*RPCClient) Call

func (cli *RPCClient) Call(method string, args, reply interface{}) error

func (*RPCClient) Close

func (cli *RPCClient) Close()

type RPCServer

type RPCServer struct {
	// contains filtered or unexported fields
}

func NewRPCServer

func NewRPCServer(addr, name string, receiver interface{}) (*RPCServer, error)

func (*RPCServer) Addr

func (serv *RPCServer) Addr() net.Addr

func (*RPCServer) Serve

func (serv *RPCServer) Serve()

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL