Source File
common.go
Belonging Package
github.com/google/gopacket/routing
// Copyright 2012 Google, Inc. All rights reserved.//// Use of this source code is governed by a BSD-style license// that can be found in the LICENSE file in the root of the source// tree.package routingimport ()// Router implements simple IPv4/IPv6 routing based on the kernel's routing// table. This routing library has very few features and may actually route// incorrectly in some cases, but it should work the majority of the time.type Router interface {// Route returns where to route a packet based on the packet's source// and destination IP address.//// Callers may pass in nil for src, in which case the src is treated as// either 0.0.0.0 or ::, depending on whether dst is a v4 or v6 address.//// It returns the interface on which to send the packet, the gateway IP// to send the packet to (if necessary), the preferred src IP to use (if// available). If the preferred src address is not given in the routing// table, the first IP address of the interface is provided.//// If an error is encountered, iface, geteway, and// preferredSrc will be nil, and err will be set.Route(dst net.IP) (iface *net.Interface, gateway, preferredSrc net.IP, err error)// RouteWithSrc routes based on source information as well as destination// information. Either or both of input/src can be nil. If both are, this// should behave exactly like Route(dst)RouteWithSrc(input net.HardwareAddr, src, dst net.IP) (iface *net.Interface, gateway, preferredSrc net.IP, err error)}
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |