mirror of
https://github.com/yggdrasil-network/yggdrasil-go.git
synced 2025-04-28 22:25:07 +03:00
Refactored code for NetworkDomain, added NetworkDomain.Prefix parameter to Mobile module
This commit is contained in:
parent
8da27aad4f
commit
56ed2bd629
8 changed files with 24 additions and 36 deletions
|
@ -47,13 +47,17 @@ func (m *Mesh) StartJSON(configjson []byte) error {
|
||||||
if err := json.Unmarshal(configjson, &m.config); err != nil {
|
if err := json.Unmarshal(configjson, &m.config); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
// Setup the Yggdrasil node itself.
|
// Setup the Mesh node itself.
|
||||||
{
|
{
|
||||||
sk, err := hex.DecodeString(m.config.PrivateKey)
|
sk, err := hex.DecodeString(m.config.PrivateKey)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
options := []core.SetupOption{}
|
options := []core.SetupOption{
|
||||||
|
core.NodeInfo(m.config.NodeInfo),
|
||||||
|
core.NodeInfoPrivacy(m.config.NodeInfoPrivacy),
|
||||||
|
core.NetworkDomain(m.config.NetworkDomain),
|
||||||
|
}
|
||||||
for _, peer := range m.config.Peers {
|
for _, peer := range m.config.Peers {
|
||||||
options = append(options, core.Peer{URI: peer})
|
options = append(options, core.Peer{URI: peer})
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,6 +8,12 @@ type NetworkDomainConfig = config.NetworkDomainConfig
|
||||||
var defaultConfig = "" // LDFLAGS='-X github.com/yggdrasil-network/yggdrasil-go/src/defaults.defaultConfig=/path/to/config
|
var defaultConfig = "" // LDFLAGS='-X github.com/yggdrasil-network/yggdrasil-go/src/defaults.defaultConfig=/path/to/config
|
||||||
var defaultAdminListen = "" // LDFLAGS='-X github.com/yggdrasil-network/yggdrasil-go/src/defaults.defaultAdminListen=unix://path/to/sock'
|
var defaultAdminListen = "" // LDFLAGS='-X github.com/yggdrasil-network/yggdrasil-go/src/defaults.defaultAdminListen=unix://path/to/sock'
|
||||||
|
|
||||||
|
type defaultParameters struct {
|
||||||
|
|
||||||
|
//Network domain
|
||||||
|
DefaultNetworkDomain NetworkDomainConfig
|
||||||
|
}
|
||||||
|
|
||||||
// Defines which parameters are expected by default for configuration on a
|
// Defines which parameters are expected by default for configuration on a
|
||||||
// specific platform. These values are populated in the relevant defaults_*.go
|
// specific platform. These values are populated in the relevant defaults_*.go
|
||||||
// for the platform being targeted. They must be set.
|
// for the platform being targeted. They must be set.
|
||||||
|
@ -21,15 +27,23 @@ type platformDefaultParameters struct {
|
||||||
// Multicast interfaces
|
// Multicast interfaces
|
||||||
DefaultMulticastInterfaces []MulticastInterfaceConfig
|
DefaultMulticastInterfaces []MulticastInterfaceConfig
|
||||||
|
|
||||||
//Network domain
|
|
||||||
DefaultNetworkDomain NetworkDomainConfig
|
|
||||||
|
|
||||||
// TUN
|
// TUN
|
||||||
MaximumIfMTU uint64
|
MaximumIfMTU uint64
|
||||||
DefaultIfMTU uint64
|
DefaultIfMTU uint64
|
||||||
DefaultIfName string
|
DefaultIfName string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Defines defaults for the all platforms.
|
||||||
|
func define() defaultParameters {
|
||||||
|
return defaultParameters{
|
||||||
|
|
||||||
|
// Network domain
|
||||||
|
DefaultNetworkDomain: NetworkDomainConfig{
|
||||||
|
Prefix: "fc",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func GetDefaults() platformDefaultParameters {
|
func GetDefaults() platformDefaultParameters {
|
||||||
defaults := getDefaults()
|
defaults := getDefaults()
|
||||||
if defaultConfig != "" {
|
if defaultConfig != "" {
|
||||||
|
@ -56,10 +70,10 @@ func GenerateConfig() *config.NodeConfig {
|
||||||
cfg.InterfacePeers = map[string][]string{}
|
cfg.InterfacePeers = map[string][]string{}
|
||||||
cfg.AllowedPublicKeys = []string{}
|
cfg.AllowedPublicKeys = []string{}
|
||||||
cfg.MulticastInterfaces = defaults.DefaultMulticastInterfaces
|
cfg.MulticastInterfaces = defaults.DefaultMulticastInterfaces
|
||||||
cfg.NetworkDomain = defaults.DefaultNetworkDomain
|
|
||||||
cfg.IfName = defaults.DefaultIfName
|
cfg.IfName = defaults.DefaultIfName
|
||||||
cfg.IfMTU = defaults.DefaultIfMTU
|
cfg.IfMTU = defaults.DefaultIfMTU
|
||||||
cfg.NodeInfoPrivacy = false
|
cfg.NodeInfoPrivacy = false
|
||||||
|
cfg.NetworkDomain = define().DefaultNetworkDomain
|
||||||
|
|
||||||
return cfg
|
return cfg
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,11 +19,6 @@ func getDefaults() platformDefaultParameters {
|
||||||
{Regex: "bridge.*", Beacon: true, Listen: true},
|
{Regex: "bridge.*", Beacon: true, Listen: true},
|
||||||
},
|
},
|
||||||
|
|
||||||
// Network domain
|
|
||||||
DefaultNetworkDomain: NetworkDomainConfig{
|
|
||||||
Prefix: "fc",
|
|
||||||
},
|
|
||||||
|
|
||||||
// TUN
|
// TUN
|
||||||
MaximumIfMTU: 65535,
|
MaximumIfMTU: 65535,
|
||||||
DefaultIfMTU: 65535,
|
DefaultIfMTU: 65535,
|
||||||
|
|
|
@ -18,11 +18,6 @@ func getDefaults() platformDefaultParameters {
|
||||||
{Regex: ".*", Beacon: true, Listen: true},
|
{Regex: ".*", Beacon: true, Listen: true},
|
||||||
},
|
},
|
||||||
|
|
||||||
// Network domain
|
|
||||||
DefaultNetworkDomain: NetworkDomainConfig{
|
|
||||||
Prefix: "fc",
|
|
||||||
},
|
|
||||||
|
|
||||||
// TUN
|
// TUN
|
||||||
MaximumIfMTU: 32767,
|
MaximumIfMTU: 32767,
|
||||||
DefaultIfMTU: 32767,
|
DefaultIfMTU: 32767,
|
||||||
|
|
|
@ -18,11 +18,6 @@ func getDefaults() platformDefaultParameters {
|
||||||
{Regex: ".*", Beacon: true, Listen: true},
|
{Regex: ".*", Beacon: true, Listen: true},
|
||||||
},
|
},
|
||||||
|
|
||||||
// Network domain
|
|
||||||
DefaultNetworkDomain: NetworkDomainConfig{
|
|
||||||
Prefix: "fc",
|
|
||||||
},
|
|
||||||
|
|
||||||
// TUN
|
// TUN
|
||||||
MaximumIfMTU: 65535,
|
MaximumIfMTU: 65535,
|
||||||
DefaultIfMTU: 65535,
|
DefaultIfMTU: 65535,
|
||||||
|
|
|
@ -18,11 +18,6 @@ func getDefaults() platformDefaultParameters {
|
||||||
{Regex: ".*", Beacon: true, Listen: true},
|
{Regex: ".*", Beacon: true, Listen: true},
|
||||||
},
|
},
|
||||||
|
|
||||||
// Network domain
|
|
||||||
DefaultNetworkDomain: NetworkDomainConfig{
|
|
||||||
Prefix: "fc",
|
|
||||||
},
|
|
||||||
|
|
||||||
// TUN
|
// TUN
|
||||||
MaximumIfMTU: 16384,
|
MaximumIfMTU: 16384,
|
||||||
DefaultIfMTU: 16384,
|
DefaultIfMTU: 16384,
|
||||||
|
|
|
@ -18,11 +18,6 @@ func getDefaults() platformDefaultParameters {
|
||||||
{Regex: ".*", Beacon: true, Listen: true},
|
{Regex: ".*", Beacon: true, Listen: true},
|
||||||
},
|
},
|
||||||
|
|
||||||
// Network domain
|
|
||||||
DefaultNetworkDomain: NetworkDomainConfig{
|
|
||||||
Prefix: "fc",
|
|
||||||
},
|
|
||||||
|
|
||||||
// TUN
|
// TUN
|
||||||
MaximumIfMTU: 65535,
|
MaximumIfMTU: 65535,
|
||||||
DefaultIfMTU: 65535,
|
DefaultIfMTU: 65535,
|
||||||
|
|
|
@ -18,11 +18,6 @@ func getDefaults() platformDefaultParameters {
|
||||||
{Regex: ".*", Beacon: true, Listen: true},
|
{Regex: ".*", Beacon: true, Listen: true},
|
||||||
},
|
},
|
||||||
|
|
||||||
// Network domain
|
|
||||||
DefaultNetworkDomain: NetworkDomainConfig{
|
|
||||||
Prefix: "fc",
|
|
||||||
},
|
|
||||||
|
|
||||||
// TUN
|
// TUN
|
||||||
MaximumIfMTU: 65535,
|
MaximumIfMTU: 65535,
|
||||||
DefaultIfMTU: 65535,
|
DefaultIfMTU: 65535,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue