mirror of
				https://github.com/yggdrasil-network/yggdrasil-go.git
				synced 2025-11-04 11:15:07 +03:00 
			
		
		
		
	Use mutex in switch/tcp init
This commit is contained in:
		
							parent
							
								
									fa7c4117b4
								
							
						
					
					
						commit
						2925920c70
					
				
					 2 changed files with 4 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -186,7 +186,9 @@ func (t *switchTable) init(core *Core) {
 | 
			
		|||
	now := time.Now()
 | 
			
		||||
	t.core = core
 | 
			
		||||
	t.reconfigure = make(chan bool, 1)
 | 
			
		||||
	t.core.configMutex.RLock()
 | 
			
		||||
	t.key = t.core.sigPub
 | 
			
		||||
	t.core.configMutex.RUnlock()
 | 
			
		||||
	locator := switchLocator{root: t.key, tstamp: now.Unix()}
 | 
			
		||||
	peers := make(map[switchPort]peerInfo)
 | 
			
		||||
	t.data = switchData{locator: locator, peers: peers}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -83,8 +83,10 @@ func (iface *tcpInterface) connectSOCKS(socksaddr, peeraddr string) {
 | 
			
		|||
// Initializes the struct.
 | 
			
		||||
func (iface *tcpInterface) init(core *Core) (err error) {
 | 
			
		||||
	iface.core = core
 | 
			
		||||
	iface.core.configMutex.RLock()
 | 
			
		||||
	iface.tcp_addr = iface.core.config.Listen
 | 
			
		||||
	iface.tcp_timeout = time.Duration(iface.core.config.ReadTimeout) * time.Millisecond
 | 
			
		||||
	iface.core.configMutex.RUnlock()
 | 
			
		||||
	if iface.tcp_timeout >= 0 && iface.tcp_timeout < default_tcp_timeout {
 | 
			
		||||
		iface.tcp_timeout = default_tcp_timeout
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue