]> Cypherpunks.ru repositories - govpn.git/commitdiff
Check that specified MTUs are not greater than MTUMax
authorSergey Matveev <stargrave@stargrave.org>
Wed, 6 Jan 2016 12:13:09 +0000 (15:13 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Wed, 6 Jan 2016 12:13:09 +0000 (15:13 +0300)
Signed-off-by: Sergey Matveev <stargrave@stargrave.org>
src/govpn/cmd/govpn-client/main.go
src/govpn/cmd/govpn-server/conf.go

index c7417f4737a4c265d61e14c93fc290b791656dfa..c4414050937f20e9740a3233d6e2d0c1fcac193e 100644 (file)
@@ -62,6 +62,9 @@ func main() {
        var err error
        log.SetFlags(log.Ldate | log.Lmicroseconds | log.Lshortfile)
 
+       if *mtu > govpn.MTUMax {
+               log.Fatalln("Maximum allowable MTU is", govpn.MTUMax)
+       }
        if *egdPath != "" {
                log.Println("Using", *egdPath, "EGD")
                govpn.EGDInit(*egdPath)
index 6d78d8fc3414f9886a869e1f9b01ebd3430961d5..fcee362127f182a528c91796f555917f99a987c4 100644 (file)
@@ -59,6 +59,10 @@ func confRead() map[govpn.PeerId]*govpn.PeerConf {
                if pc.MTU == 0 {
                        pc.MTU = govpn.MTUDefault
                }
+               if pc.MTU > govpn.MTUMax {
+                       log.Println("MTU value", pc.MTU, "is too high, overriding to", govpn.MTUMax)
+                       pc.MTU = govpn.MTUMax
+               }
                conf := govpn.PeerConf{
                        Verifier: verifier,
                        Id:       verifier.Id,