github.com/yggdrasil-network/yggdrasil-go@v0.5.6/src/config/defaults.go (about)

     1  package config
     2  
     3  var defaultConfig = ""      // LDFLAGS='-X github.com/yggdrasil-network/yggdrasil-go/src/config.defaultConfig=/path/to/config
     4  var defaultAdminListen = "" // LDFLAGS='-X github.com/yggdrasil-network/yggdrasil-go/src/config.defaultAdminListen=unix://path/to/sock'
     5  
     6  // Defines which parameters are expected by default for configuration on a
     7  // specific platform. These values are populated in the relevant defaults_*.go
     8  // for the platform being targeted. They must be set.
     9  type platformDefaultParameters struct {
    10  	// Admin socket
    11  	DefaultAdminListen string
    12  
    13  	// Configuration (used for yggdrasilctl)
    14  	DefaultConfigFile string
    15  
    16  	// Multicast interfaces
    17  	DefaultMulticastInterfaces []MulticastInterfaceConfig
    18  
    19  	// TUN
    20  	MaximumIfMTU  uint64
    21  	DefaultIfMTU  uint64
    22  	DefaultIfName string
    23  }
    24  
    25  func GetDefaults() platformDefaultParameters {
    26  	defaults := getDefaults()
    27  	if defaultConfig != "" {
    28  		defaults.DefaultConfigFile = defaultConfig
    29  	}
    30  	if defaultAdminListen != "" {
    31  		defaults.DefaultAdminListen = defaultAdminListen
    32  	}
    33  	return defaults
    34  }