mirror of
https://github.com/XTLS/Xray-core.git
synced 2026-01-12 21:57:15 +08:00
* Proxy: Implement tun raw network interface inbound support for Linux * Proxy: Tun. Include "android" as build condition for build of tun_default implementation * Proxy: Tun. Add .Close() cleanup calls to Handler.Init() where needed * Proxy: Add Tun for Android * Proxy: Tun. Implement Windows support --------- Co-authored-by: yuhan6665 <1588741+yuhan6665@users.noreply.github.com>
31 lines
486 B
Go
31 lines
486 B
Go
package conf
|
|
|
|
import (
|
|
"github.com/xtls/xray-core/proxy/tun"
|
|
"google.golang.org/protobuf/proto"
|
|
)
|
|
|
|
type TunConfig struct {
|
|
Name string `json:"name"`
|
|
MTU uint32 `json:"MTU"`
|
|
UserLevel uint32 `json:"userLevel"`
|
|
}
|
|
|
|
func (v *TunConfig) Build() (proto.Message, error) {
|
|
config := &tun.Config{
|
|
Name: v.Name,
|
|
MTU: v.MTU,
|
|
UserLevel: v.UserLevel,
|
|
}
|
|
|
|
if v.Name == "" {
|
|
config.Name = "xray0"
|
|
}
|
|
|
|
if v.MTU == 0 {
|
|
config.MTU = 1500
|
|
}
|
|
|
|
return config, nil
|
|
}
|