Documentation ¶
Overview ¶
Package stdnet is an extension of the pion's stdnet. With it the list of the interface can come from external source. More info: https://github.com/golang/go/issues/40569
Index ¶
- func InterfaceFilter(disallowList []string) func(string) bool
- type ExternalIFaceDiscover
- type Net
- func (n *Net) Dial(network, address string) (net.Conn, error)
- func (n *Net) DialTCP(network string, laddr, raddr *net.TCPAddr) (transport.TCPConn, error)
- func (n *Net) DialUDP(network string, laddr, raddr *net.UDPAddr) (transport.UDPConn, error)
- func (n *Net) InterfaceByIndex(index int) (*transport.Interface, error)
- func (n *Net) InterfaceByName(name string) (*transport.Interface, error)
- func (n *Net) Interfaces() ([]*transport.Interface, error)
- func (n *Net) ListenPacket(network, address string) (net.PacketConn, error)
- func (n *Net) ListenUDP(network string, locAddr *net.UDPAddr) (transport.UDPConn, error)
- func (n *Net) UpdateInterfaces() (err error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func InterfaceFilter ¶ added in v0.16.0
InterfaceFilter is a function passed to ICE Agent to filter out not allowed interfaces to avoid building tunnel over them.
Types ¶
type ExternalIFaceDiscover ¶ added in v0.16.0
type ExternalIFaceDiscover interface { // IFaces return with the description of the interfaces IFaces() (string, error) }
ExternalIFaceDiscover provide an option for external services (mobile) to collect network interface information
type Net ¶
Net is an implementation of the net.Net interface based on functions of the standard net package.
func NewNetWithDiscover ¶ added in v0.16.0
func NewNetWithDiscover(iFaceDiscover ExternalIFaceDiscover, disallowList []string) (*Net, error)
NewNetWithDiscover creates a new StdNet instance.
func (*Net) InterfaceByIndex ¶
InterfaceByIndex returns the interface specified by index.
On Solaris, it returns one of the logical network interfaces sharing the logical data link; for more precision use InterfaceByName.
func (*Net) InterfaceByName ¶
InterfaceByName returns the interface specified by name.
func (*Net) Interfaces ¶
Interfaces returns a slice of interfaces which are available on the system
func (*Net) ListenPacket ¶ added in v0.26.4
func (n *Net) ListenPacket(network, address string) (net.PacketConn, error)
ListenPacket listens for incoming packets on the given network and address.
func (*Net) UpdateInterfaces ¶
UpdateInterfaces updates the internal list of network interfaces and associated addresses filtering them by name. The interfaces are discovered by an external iFaceDiscover function or by a default discoverer if the external one wasn't specified.