mirror of
https://github.com/slackhq/nebula.git
synced 2025-11-11 09:13:57 +01:00
Retry wintun creation (#985)
This commit is contained in:
parent
c289c7a7ca
commit
5fccbb8676
@ -54,10 +54,17 @@ func newWinTun(l *logrus.Logger, deviceName string, cidr *net.IPNet, defaultMTU
|
|||||||
return nil, fmt.Errorf("generate GUID failed: %w", err)
|
return nil, fmt.Errorf("generate GUID failed: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
tunDevice, err := wintun.CreateTUNWithRequestedGUID(deviceName, guid, defaultMTU)
|
var tunDevice wintun.Device
|
||||||
|
tunDevice, err = wintun.CreateTUNWithRequestedGUID(deviceName, guid, defaultMTU)
|
||||||
|
if err != nil {
|
||||||
|
// Windows 10 has an issue with unclean shutdowns not fully cleaning up the wintun device.
|
||||||
|
// Trying a second time resolves the issue.
|
||||||
|
l.WithError(err).Debug("Failed to create wintun device, retrying")
|
||||||
|
tunDevice, err = wintun.CreateTUNWithRequestedGUID(deviceName, guid, defaultMTU)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("create TUN device failed: %w", err)
|
return nil, fmt.Errorf("create TUN device failed: %w", err)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
routeTree, err := makeRouteTree(l, routes, false)
|
routeTree, err := makeRouteTree(l, routes, false)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user