tun: windows: temporary hack for forcing MTU
This commit is contained in:
parent
66fb5caf02
commit
b0e0ab308d
|
@ -46,6 +46,7 @@ type NativeTun struct {
|
||||||
userClose windows.Handle
|
userClose windows.Handle
|
||||||
events chan TUNEvent
|
events chan TUNEvent
|
||||||
errors chan error
|
errors chan error
|
||||||
|
forcedMtu int
|
||||||
}
|
}
|
||||||
|
|
||||||
func packetAlign(size uint32) uint32 {
|
func packetAlign(size uint32) uint32 {
|
||||||
|
@ -100,6 +101,7 @@ func CreateTUN(ifname string) (TUNDevice, error) {
|
||||||
wrBuff: &exchgBufWrite{},
|
wrBuff: &exchgBufWrite{},
|
||||||
events: make(chan TUNEvent, 10),
|
events: make(chan TUNEvent, 10),
|
||||||
errors: make(chan error, 1),
|
errors: make(chan error, 1),
|
||||||
|
forcedMtu: 1500,
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create close event.
|
// Create close event.
|
||||||
|
@ -220,7 +222,12 @@ func (tun *NativeTun) Close() error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (tun *NativeTun) MTU() (int, error) {
|
func (tun *NativeTun) MTU() (int, error) {
|
||||||
return 1500, nil
|
return tun.forcedMtu, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
//TODO: This is a temporary hack. We really need to be monitoring the interface in real time and adapting to MTU changes.
|
||||||
|
func (tun *NativeTun) ForceMtu(mtu int) {
|
||||||
|
tun.forcedMtu = mtu
|
||||||
}
|
}
|
||||||
|
|
||||||
func (tun *NativeTun) Read(buff []byte, offset int) (int, error) {
|
func (tun *NativeTun) Read(buff []byte, offset int) (int, error) {
|
||||||
|
|
Loading…
Reference in a new issue