mirror of
https://github.com/yggdrasil-network/yggdrasil-go.git
synced 2025-04-28 22:25:07 +03:00
Per-platform TUN defaults
This commit is contained in:
parent
bec898a326
commit
4917ea3dd2
8 changed files with 56 additions and 26 deletions
|
@ -5,6 +5,8 @@ package yggdrasil
|
|||
import "os"
|
||||
import ethernet "github.com/songgao/packets/ethernet"
|
||||
|
||||
const DEFAULT_MTU = 65535
|
||||
|
||||
const IPv6_HEADER_LENGTH = 40
|
||||
const ETHER_HEADER_LENGTH = 14
|
||||
|
||||
|
@ -28,12 +30,15 @@ type tunDevice struct {
|
|||
}
|
||||
|
||||
type tunDefaultParameters struct {
|
||||
maxMTU int
|
||||
maximumIfMTU int
|
||||
defaultIfMTU int
|
||||
defaultIfName string
|
||||
defaultIfTAPMode bool
|
||||
}
|
||||
|
||||
func getMTUFromMax(mtu int) int {
|
||||
if mtu > defaultTUNParameters().maxMTU {
|
||||
return defaultTUNParameters().maxMTU
|
||||
func getSupportedMTU(mtu int) int {
|
||||
if mtu > getDefaults().maximumIfMTU {
|
||||
return getDefaults().maximumIfMTU
|
||||
}
|
||||
return mtu
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue