Skip to content

Commit 2ed58ad

Browse files
Yifan Gusonggao
Yifan Gu
authored andcommitted
addressing comments
1 parent aa5a321 commit 2ed58ad

File tree

2 files changed

+21
-10
lines changed

2 files changed

+21
-10
lines changed

params_darwin.go

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
package water
22

3+
// MacOSDriverProvider enumerates possible MacOS TUN/TAP implementations
4+
type MacOSDriverProvider int
5+
36
const (
4-
// SystemDriver refers to the default P2P driver
5-
SystemDriver = 0
6-
// TunTapOSXDriver refers to the third-party tuntaposx driver
7+
// MacOSDriverSystem refers to the default P2P driver
8+
MacOSDriverSystem MacOSDriverProvider = 0
9+
// MacOSDriverTunTapOSX refers to the third-party tuntaposx driver
710
// see https://sourceforge.net/p/tuntaposx
8-
TunTapOSXDriver = 1
11+
MacOSDriverTunTapOSX MacOSDriverProvider = 1
912
)
1013

1114
// PlatformSpecificParams defines parameters in Config that are specific to
@@ -19,7 +22,7 @@ type PlatformSpecificParams struct {
1922
Name string
2023
// Driver should be set if an alternative driver is desired
2124
// e.g. TunTapOSXDriver
22-
Driver int
25+
Driver MacOSDriverProvider
2326
}
2427

2528
func defaultPlatformSpecificParams() PlatformSpecificParams {

syscalls_darwin.go

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,17 @@ type sockaddrCtl struct {
6161
var sockaddrCtlSize uintptr = 32
6262

6363
func openDev(config Config) (ifce *Interface, err error) {
64-
if config.Driver == TunTapOSXDriver {
64+
if config.Driver == MacOSDriverTunTapOSX {
6565
return openDevTunTapOSX(config)
66-
} else if config.Driver != SystemDriver {
67-
return nil, errors.New("unrecognized driver")
6866
}
67+
if config.Driver == MacOSDriverSystem {
68+
return openDevSystem(config)
69+
}
70+
return nil, errors.New("unrecognized driver")
71+
}
72+
73+
// openDevSystem opens tun device on system
74+
func openDevSystem(config Config) (ifce *Interface, err error) {
6975
if config.DeviceType != TUN {
7076
return nil, errors.New("only tun is implemented for SystemDriver, use TunTapOSXDriver for tap")
7177
}
@@ -140,9 +146,11 @@ func openDevTunTapOSX(config Config) (ifce *Interface, err error) {
140146

141147
if config.DeviceType == TAP && !strings.HasPrefix(config.Name, "tap") {
142148
return nil, errors.New("device name does not start with tap when creating a tap device")
143-
} else if config.DeviceType == TUN && !strings.HasPrefix(config.Name, "tun") {
149+
}
150+
if config.DeviceType == TUN && !strings.HasPrefix(config.Name, "tun") {
144151
return nil, errors.New("device name does not start with tun when creating a tun device")
145-
} else if config.DeviceType != TAP && config.DeviceType != TUN {
152+
}
153+
if config.DeviceType != TAP && config.DeviceType != TUN {
146154
return nil, errors.New("unsupported DeviceType")
147155
}
148156
if len(config.Name) >= 15 {

0 commit comments

Comments
 (0)