mirror of
				https://github.com/yggdrasil-network/yggdrasil-go.git
				synced 2025-11-04 11:15:07 +03:00 
			
		
		
		
	Add IFF_NODAD/IFF_SECURED, define consts
This commit is contained in:
		
							parent
							
								
									e5bb9bcb8d
								
							
						
					
					
						commit
						195d577151
					
				
					 1 changed files with 11 additions and 3 deletions
				
			
		| 
						 | 
				
			
			@ -30,7 +30,12 @@ func (tun *TunAdapter) setup(ifname string, iftapmode bool, addr string, mtu int
 | 
			
		|||
	return tun.setupAddress(addr)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const darwin_SIOCAIFADDR_IN6 = 2155899162
 | 
			
		||||
const (
 | 
			
		||||
	darwin_SIOCAIFADDR_IN6       = 2155899162 // netinet6/in6_var.h
 | 
			
		||||
	darwin_IN6_IFF_NODAD         = 0x0020     // netinet6/in6_var.h
 | 
			
		||||
	darwin_IN6_IFF_SECURED       = 0x0400     // netinet6/in6_var.h
 | 
			
		||||
	darwin_ND6_INFINITE_LIFETIME = 0xFFFFFFFF // netinet6/nd6.h
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type in6_addrlifetime struct {
 | 
			
		||||
	ia6t_expire    float64
 | 
			
		||||
| 
						 | 
				
			
			@ -91,8 +96,11 @@ func (tun *TunAdapter) setupAddress(addr string) error {
 | 
			
		|||
		ar.ifra_addr.sin6_addr[i] = uint16(binary.BigEndian.Uint16(b))
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	ar.ifra_lifetime.ia6t_vltime = 0xFFFFFFFF
 | 
			
		||||
	ar.ifra_lifetime.ia6t_pltime = 0xFFFFFFFF
 | 
			
		||||
	ar.ifra_flags |= darwin_IN6_IFF_NODAD
 | 
			
		||||
	ar.ifra_flags |= darwin_IN6_IFF_SECURED
 | 
			
		||||
 | 
			
		||||
	ar.ifra_lifetime.ia6t_vltime = darwin_ND6_INFINITE_LIFETIME
 | 
			
		||||
	ar.ifra_lifetime.ia6t_pltime = darwin_ND6_INFINITE_LIFETIME
 | 
			
		||||
 | 
			
		||||
	var ir ifreq
 | 
			
		||||
	copy(ir.ifr_name[:], tun.iface.Name())
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue