import "v.io/v23/rpc/version"
Package version defines a mechanism for versioning the RPC protocol.
var ( ErrNoCompatibleVersion = verror.NewIDAction("v.io/v23/rpc/version.NoCompatibleVersion", verror.NoRetry) )
func ErrorfNoCompatibleVersion(ctx *context.T, format string, lmin uint64, lmax uint64, rmin uint64, rmax uint64) error
ErrorfNoCompatibleVersion calls ErrNoCompatibleVersion.Errorf with the supplied arguments.
func MessageNoCompatibleVersion(ctx *context.T, message string, lmin uint64, lmax uint64, rmin uint64, rmax uint64) error
MessageNoCompatibleVersion calls ErrNoCompatibleVersion.Message with the supplied arguments.
func ParamsErrNoCompatibleVersion(argumentError error) (verrorComponent string, verrorOperation string, lmin uint64, lmax uint64, rmin uint64, rmax uint64, returnErr error)
ParamsErrNoCompatibleVersion extracts the expected parameters from the error's ParameterList.
RPCVersion represents a version of the RPC protocol.
const ( // UnknownRPCVersion is used for Min/MaxRPCVersion in an Endpoint when // we don't know the relevant version numbers. In this case the RPC // implementation will have to guess the correct values. UnknownRPCVersion RPCVersion = iota // DeprecatedRPCVersion is used to signal that a version number is no longer // relevant and that version information should be obtained elsewhere. DeprecatedRPCVersion // RPCVersion10 opens a special flow over which discharges for third-party // caveats on the server's blessings are sent. RPCVersion10 // RPCVersion11 Optimized authentication. RPCVersion11 // RPCVersion12 adds periodic healthchecks on the channel. RPCVersion12 // RPCVersion13 adds error messages in responses from proxies. RPCVersion13 // RPCVersion14 adds the setup message to the channel binding during // connection setup. RPCVersion14 )
func CommonVersion(ctx *context.T, l, r RPCVersionRange) (RPCVersion, error)
type RPCVersionRange struct { Min, Max RPCVersion }
RPCVersionRange allows you to optionally specify a range of versions to use when calling FormatEndpoint
Package version imports 3 packages (graph) and is imported by 33 packages. Updated 2021-01-24. Refresh now. Tools for package owners.