aboutsummaryrefslogtreecommitdiffstats
path: root/src/device.go
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/device.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/device.go b/src/device.go
index 12d1ed9..2a2ad62 100644
--- a/src/device.go
+++ b/src/device.go
@@ -31,9 +31,10 @@ type Device struct {
signal struct {
stop chan struct{}
}
- underLoad int32 // used as an atomic bool
- peers map[NoisePublicKey]*Peer
- mac MACStateDevice
+ underLoad int32 // used as an atomic bool
+ ratelimiter Ratelimiter
+ peers map[NoisePublicKey]*Peer
+ mac MACStateDevice
}
func (device *Device) SetPrivateKey(sk NoisePrivateKey) {
@@ -66,6 +67,7 @@ func NewDevice(tun TUNDevice, logLevel int) *Device {
device.mtu = tun.MTU()
device.peers = make(map[NoisePublicKey]*Peer)
device.indices.Init()
+ device.ratelimiter.Init()
device.routingTable.Reset()
// listen
@@ -99,6 +101,7 @@ func NewDevice(tun TUNDevice, logLevel int) *Device {
go device.RoutineReadFromTUN(tun)
go device.RoutineReceiveIncomming()
go device.RoutineWriteToTUN(tun)
+ go device.ratelimiter.RoutineGarbageCollector(device.signal.stop)
return device
}