Help us shape the future of Go! Take the 2026 Go Developer Survey

wireserver

package
v1.7.21 Latest Latest
Warning

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

Go to latest
Published: Oct 26, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	WireserverIP = "168.63.129.16"
)

Variables

View Source
var (
	// ErrNoPrimaryInterface indicates the wireserver response does not have a primary interface indicated.
	ErrNoPrimaryInterface = errors.New("no primary interface found")
	// ErrInsufficientAddressSpace indicates that the CIDR space is too small to include a gateway IP; it is 1 IP.
	ErrInsufficientAddressSpace = errors.New("insufficient address space to generate gateway IP")
)

Functions

This section is empty.

Types

type Address

type Address struct {
	Address   string `xml:"Address,attr"`
	IsPrimary bool   `xml:"IsPrimary,attr"`
}

type Client

type Client struct {
	HostPort string

	HTTPClient do
	Logger     interface {
		Printf(string, ...any)
	}
}

func (*Client) GetInterfaces

func (c *Client) GetInterfaces(ctx context.Context) (*GetInterfacesResult, error)

GetInterfaces queries interfaces from the wireserver.

type GetInterfacesResult

type GetInterfacesResult struct {
	Interface []Interface
}

GetInterfacesResult is the xml mapped response of the getInterfacesQuery

type GetNetworkContainerOpts

type GetNetworkContainerOpts struct {
	NetworkContainerID string
	PrimaryAddress     string
	AuthToken          string
	APIVersion         string
}

type Interface

type Interface struct {
	MacAddress string `xml:"MacAddress,attr"`
	IsPrimary  bool   `xml:"IsPrimary,attr"`
	IPSubnet   []Subnet
}

type InterfaceInfo

type InterfaceInfo struct {
	Subnet       string
	Gateway      string
	IsPrimary    bool
	PrimaryIP    string
	SecondaryIPs []string
}

InterfaceInfo specifies the information about an interface as returned by Host Agent.

func GetPrimaryInterfaceFromResult

func GetPrimaryInterfaceFromResult(res *GetInterfacesResult) (*InterfaceInfo, error)

type Proxy

type Proxy struct {
	Host       string
	HTTPClient do
}

func (*Proxy) JoinNetwork

func (p *Proxy) JoinNetwork(ctx context.Context, vnetID string) (*http.Response, error)

func (*Proxy) PublishNC

func (p *Proxy) PublishNC(ctx context.Context, ncParams cns.NetworkContainerParameters, payload []byte) (*http.Response, error)

func (*Proxy) UnpublishNC

func (p *Proxy) UnpublishNC(ctx context.Context, ncParams cns.NetworkContainerParameters, payload []byte) (*http.Response, error)

type Subnet

type Subnet struct {
	Prefix    string `xml:"Prefix,attr"`
	IPAddress []Address
}

Jump to

Keyboard shortcuts

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