mirror of
				https://github.com/yggdrasil-network/yggdrasil-go.git
				synced 2025-11-03 10:45:09 +03:00 
			
		
		
		
	Generate a random port number in -genconf instead of :0 (#51)
This commit is contained in:
		
							parent
							
								
									a5fcf14824
								
							
						
					
					
						commit
						95a6cfff10
					
				
					 1 changed files with 11 additions and 5 deletions
				
			
		
							
								
								
									
										16
									
								
								yggdrasil.go
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								yggdrasil.go
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -12,6 +12,7 @@ import "os/signal"
 | 
			
		|||
import "syscall"
 | 
			
		||||
import "time"
 | 
			
		||||
import "regexp"
 | 
			
		||||
import "math/rand"
 | 
			
		||||
 | 
			
		||||
import _ "net/http/pprof"
 | 
			
		||||
import "net/http"
 | 
			
		||||
| 
						 | 
				
			
			@ -103,12 +104,17 @@ func (n *node) init(cfg *nodeConfig, logger *log.Logger) {
 | 
			
		|||
	}()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func generateConfig() *nodeConfig {
 | 
			
		||||
func generateConfig(isAutoconf bool) *nodeConfig {
 | 
			
		||||
	core := Core{}
 | 
			
		||||
	bpub, bpriv := core.DEBUG_newBoxKeys()
 | 
			
		||||
	spub, spriv := core.DEBUG_newSigKeys()
 | 
			
		||||
	cfg := nodeConfig{}
 | 
			
		||||
	cfg.Listen = "[::]:0"
 | 
			
		||||
	if isAutoconf {
 | 
			
		||||
		cfg.Listen = "[::]:0"
 | 
			
		||||
	} else {
 | 
			
		||||
		r1 := rand.New(rand.NewSource(time.Now().UnixNano()))
 | 
			
		||||
		cfg.Listen = fmt.Sprintf("[::]:%d", r1.Intn(65534 - 1024) + 1024)
 | 
			
		||||
	}
 | 
			
		||||
	cfg.AdminListen = "[::1]:9001"
 | 
			
		||||
	cfg.BoxPub = hex.EncodeToString(bpub[:])
 | 
			
		||||
	cfg.BoxPriv = hex.EncodeToString(bpriv[:])
 | 
			
		||||
| 
						 | 
				
			
			@ -124,7 +130,7 @@ func generateConfig() *nodeConfig {
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
func doGenconf() string {
 | 
			
		||||
	cfg := generateConfig()
 | 
			
		||||
	cfg := generateConfig(false)
 | 
			
		||||
	bs, err := json.MarshalIndent(cfg, "", "  ")
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		panic(err)
 | 
			
		||||
| 
						 | 
				
			
			@ -235,7 +241,7 @@ func main() {
 | 
			
		|||
	var cfg *nodeConfig
 | 
			
		||||
	switch {
 | 
			
		||||
	case *autoconf:
 | 
			
		||||
		cfg = generateConfig()
 | 
			
		||||
		cfg = generateConfig(true)
 | 
			
		||||
	case *useconffile != "" || *useconf:
 | 
			
		||||
		var config []byte
 | 
			
		||||
		var err error
 | 
			
		||||
| 
						 | 
				
			
			@ -248,7 +254,7 @@ func main() {
 | 
			
		|||
			panic(err)
 | 
			
		||||
		}
 | 
			
		||||
		decoder := json.NewDecoder(bytes.NewReader(config))
 | 
			
		||||
		cfg = generateConfig()
 | 
			
		||||
		cfg = generateConfig(false)
 | 
			
		||||
		err = decoder.Decode(cfg)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			panic(err)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue