mirror of
https://github.com/net-byte/water.git
synced 2024-04-21 12:21:38 +00:00
update params
This commit is contained in:
+11
-2
@@ -17,14 +17,23 @@ const (
|
||||
// Currently it is not possible to set the interface name in macOS.
|
||||
type PlatformSpecificParams struct {
|
||||
// Name is the name for the interface to be used.
|
||||
//
|
||||
// For TunTapOSXDriver, it should be something like "tap0".
|
||||
// For SystemDriver, the name should match `utun[0-9]+`, e.g. utun233
|
||||
Name string
|
||||
|
||||
// Driver should be set if an alternative driver is desired
|
||||
// e.g. TunTapOSXDriver
|
||||
Driver MacOSDriverProvider
|
||||
// Network is required when creating a TUN interface. The library will call
|
||||
// net.ParseCIDR() to parse this string into LocalIP, RemoteNetaddr,
|
||||
// RemoteNetmask. The underlying driver will need those to generate ARP
|
||||
// response to Windows kernel, to emulate an TUN interface.
|
||||
// Please note that it cannot perceive the IP changes caused by DHCP, user
|
||||
// configuration to the adapter and etc,. If IP changed, please reconfigure
|
||||
// the adapter using syscall, just like openDev().
|
||||
// For detail, please refer
|
||||
// https://github.com/OpenVPN/tap-windows6/blob/master/src/device.c#L431
|
||||
// and https://github.com/songgao/water/pull/13#issuecomment-270341777
|
||||
Network string
|
||||
}
|
||||
|
||||
func defaultPlatformSpecificParams() PlatformSpecificParams {
|
||||
|
||||
@@ -38,6 +38,17 @@ type PlatformSpecificParams struct {
|
||||
// uses multiple file descriptors (queues) to parallelize packets sending
|
||||
// or receiving.
|
||||
MultiQueue bool
|
||||
// Network is required when creating a TUN interface. The library will call
|
||||
// net.ParseCIDR() to parse this string into LocalIP, RemoteNetaddr,
|
||||
// RemoteNetmask. The underlying driver will need those to generate ARP
|
||||
// response to Windows kernel, to emulate an TUN interface.
|
||||
// Please note that it cannot perceive the IP changes caused by DHCP, user
|
||||
// configuration to the adapter and etc,. If IP changed, please reconfigure
|
||||
// the adapter using syscall, just like openDev().
|
||||
// For detail, please refer
|
||||
// https://github.com/OpenVPN/tap-windows6/blob/master/src/device.c#L431
|
||||
// and https://github.com/songgao/water/pull/13#issuecomment-270341777
|
||||
Network string
|
||||
}
|
||||
|
||||
func defaultPlatformSpecificParams() PlatformSpecificParams {
|
||||
|
||||
+3
-3
@@ -3,7 +3,7 @@ package water
|
||||
// PlatformSpecificParams defines parameters in Config that are specific to
|
||||
// Windows. A zero-value of such type is valid.
|
||||
type PlatformSpecificParams struct {
|
||||
InterfaceName string
|
||||
Name string
|
||||
// Network is required when creating a TUN interface. The library will call
|
||||
// net.ParseCIDR() to parse this string into LocalIP, RemoteNetaddr,
|
||||
// RemoteNetmask. The underlying driver will need those to generate ARP
|
||||
@@ -19,7 +19,7 @@ type PlatformSpecificParams struct {
|
||||
|
||||
func defaultPlatformSpecificParams() PlatformSpecificParams {
|
||||
return PlatformSpecificParams{
|
||||
InterfaceName: "wintun",
|
||||
Network: "172.16.1.10/24",
|
||||
Name: "wintun",
|
||||
Network: "172.16.1.10/24",
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ func openDev(config Config) (ifce *Interface, err error) {
|
||||
0xFFFF,
|
||||
[8]byte{0xFF, 0xe9, 0x76, 0xe5, 0x8c, 0x74, 0x06, 0x3e},
|
||||
}
|
||||
dev, err := tun.CreateTUNWithRequestedGUID(config.PlatformSpecificParams.InterfaceName, id, 0)
|
||||
dev, err := tun.CreateTUNWithRequestedGUID(config.PlatformSpecificParams.Name, id, 0)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user