mirror of https://github.com/XTLS/Xray-core
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
868 B
33 lines
868 B
package wireguard
|
|
|
|
func (c *DeviceConfig) preferIP4() bool {
|
|
return c.DomainStrategy == DeviceConfig_FORCE_IP ||
|
|
c.DomainStrategy == DeviceConfig_FORCE_IP4 ||
|
|
c.DomainStrategy == DeviceConfig_FORCE_IP46
|
|
}
|
|
|
|
func (c *DeviceConfig) preferIP6() bool {
|
|
return c.DomainStrategy == DeviceConfig_FORCE_IP ||
|
|
c.DomainStrategy == DeviceConfig_FORCE_IP6 ||
|
|
c.DomainStrategy == DeviceConfig_FORCE_IP64
|
|
}
|
|
|
|
func (c *DeviceConfig) hasFallback() bool {
|
|
return c.DomainStrategy == DeviceConfig_FORCE_IP46 || c.DomainStrategy == DeviceConfig_FORCE_IP64
|
|
}
|
|
|
|
func (c *DeviceConfig) fallbackIP4() bool {
|
|
return c.DomainStrategy == DeviceConfig_FORCE_IP64
|
|
}
|
|
|
|
func (c *DeviceConfig) fallbackIP6() bool {
|
|
return c.DomainStrategy == DeviceConfig_FORCE_IP46
|
|
}
|
|
|
|
func (c *DeviceConfig) createTun() tunCreator {
|
|
if c.KernelMode {
|
|
return createKernelTun
|
|
}
|
|
return createGVisorTun
|
|
}
|