Versions in this module Expand all Collapse all v0 v0.7.0 Mar 12, 2022 Changes in this version + func LoadConfiguration(location string) (Groups, RegistrationPolicy, error) type ForwardServer + Resolver AddressResolver type Groups + func (g Groups) Roles(ia addr.IA) Roles + type LookupResolver struct + Discoverer Discoverer + Router snet.Router + func (r LookupResolver) Resolve(ctx context.Context, ia addr.IA) (net.Addr, error) + type Roles struct + Owner bool + Reader bool + Registry bool + Writer bool + func (r Roles) None() bool + type VerifierAdapter struct + Verifier infra.Verifier + func (v VerifierAdapter) Verify(ctx context.Context, segments []*seg.Meta, server net.Addr) error v0.6.0 Dec 4, 2020 Changes in this version + type AddressResolver interface + Resolve func(context.Context, addr.IA) (net.Addr, error) + type AuthoritativeServer struct + DB Store + Groups map[GroupID]*Group + LocalIA addr.IA + func (s AuthoritativeServer) Segments(ctx context.Context, req SegmentRequest) ([]*seg.Meta, error) + type BeaconWriter struct + AddressResolver AddressResolver + Extender beaconing.Extender + InternalErrors metrics.Counter + Intfs *ifstate.Interfaces + Pather beaconing.Pather + RPC Register + Registered metrics.Counter + RegistrationPolicy RegistrationPolicy + func (w *BeaconWriter) Write(ctx context.Context, segments <-chan beacon.BeaconOrErr, ...) (beaconing.WriteStats, error) + type Discoverer interface + Discover func(ctx context.Context, dsAddr net.Addr) (Servers, error) + type ForwardServer struct + Groups map[GroupID]*Group + LocalAuth Lookuper + LocalIA addr.IA + RPC RPC + Resolve func(context.Context, addr.IA) (net.Addr, error) + Verifier Verifier + func (s ForwardServer) Segments(ctx context.Context, req SegmentRequest) ([]*seg.Meta, error) + type Group struct + ID GroupID + Owner addr.IA + Readers map[addr.IA]struct{} + Registries map[addr.IA]struct{} + Writers map[addr.IA]struct{} + func (g *Group) GetRegistries() []addr.IA + func (g *Group) Validate() error + type GroupID struct + OwnerAS addr.AS + Suffix uint16 + func GroupIDFromUint64(id uint64) GroupID + func ParseGroupID(s string) (GroupID, error) + func (id GroupID) String() string + func (id GroupID) ToUint64() uint64 + type Groups map[GroupID]*Group + func LoadHiddenPathGroups(location string) (Groups, error) + func (g Groups) MarshalYAML() (interface{}, error) + func (g Groups) UnmarshalYAML(unmarshal func(interface{}) error) error + func (g Groups) Validate() error + type InterfacePolicy struct + Groups map[GroupID]*Group + Public bool + type Lookuper interface + Segments func(context.Context, SegmentRequest) ([]*seg.Meta, error) + type RPC interface + HiddenSegments func(context.Context, SegmentRequest, net.Addr) ([]*seg.Meta, error) + type Register interface + RegisterSegment func(context.Context, SegmentRegistration, net.Addr) error + type Registration struct + GroupID GroupID + Peer net.Addr + Segments []*seg.Meta + type RegistrationPolicy map[uint64]InterfacePolicy + func (p RegistrationPolicy) MarshalYAML() (interface{}, error) + func (p RegistrationPolicy) UnmarshalYAML(unmarshal func(interface{}) error) error + func (p RegistrationPolicy) Validate() error + type RegistrationResolver struct + Discoverer Discoverer + Router snet.Router + func (r RegistrationResolver) Resolve(ctx context.Context, ia addr.IA) (net.Addr, error) + type Registry interface + Register func(context.Context, Registration) error + type RegistryServer struct + DB Store + Groups map[GroupID]*Group + LocalIA addr.IA + Verifier Verifier + func (h RegistryServer) Register(ctx context.Context, reg Registration) error + type SegmentRegistration struct + GroupID GroupID + Seg seg.Meta + type SegmentRequest struct + DstIA addr.IA + GroupIDs []GroupID + Peer addr.IA + type Servers struct + Lookup []*net.UDPAddr + Registration []*net.UDPAddr + type Store interface + Get func(context.Context, addr.IA, []GroupID) ([]*seg.Meta, error) + Put func(context.Context, []*seg.Meta, GroupID) error + type Storer struct + DB pathdb.PathDB + func (s *Storer) Get(ctx context.Context, ia addr.IA, groups []GroupID) ([]*seg.Meta, error) + func (s *Storer) Put(ctx context.Context, segs []*seg.Meta, g GroupID) error + type Verifier interface + Verify func(ctx context.Context, segments []*seg.Meta, server net.Addr) error