Browse Source

Made use of map[string]string for nw options in default-gateway impl

Signed-off-by: Madhu Venugopal <madhu@docker.com>
Madhu Venugopal 9 năm trước cách đây
mục cha
commit
71220e2a88

+ 0 - 20
libnetwork/default_gateway.go

@@ -4,7 +4,6 @@ import (
 	"fmt"
 
 	"github.com/docker/libnetwork/netlabel"
-	"github.com/docker/libnetwork/options"
 	"github.com/docker/libnetwork/types"
 )
 
@@ -92,25 +91,6 @@ func (sb *sandbox) clearDefaultGW() error {
 	return nil
 }
 
-func (c *controller) createGWNetwork() (Network, error) {
-	netOption := options.Generic{
-		"BridgeName":         libnGWNetwork,
-		"EnableICC":          false,
-		"EnableIPMasquerade": true,
-	}
-
-	n, err := c.NewNetwork("bridge", libnGWNetwork,
-		NetworkOptionGeneric(options.Generic{
-			netlabel.GenericData: netOption,
-			netlabel.EnableIPv6:  false,
-		}))
-
-	if err != nil {
-		return nil, fmt.Errorf("error creating external connectivity network: %v", err)
-	}
-	return n, err
-}
-
 func (sb *sandbox) needDefaultGW() bool {
 	var needGW bool
 

+ 7 - 0
libnetwork/default_gateway_freebsd.go

@@ -0,0 +1,7 @@
+package libnetwork
+
+import "github.com/docker/libnetwork/types"
+
+func (c *controller) createGWNetwork() (Network, error) {
+	return nil, types.NotImplementedErrorf("default gateway functionality is not implemented in freebsd")
+}

+ 29 - 0
libnetwork/default_gateway_linux.go

@@ -0,0 +1,29 @@
+package libnetwork
+
+import (
+	"fmt"
+	"strconv"
+
+	"github.com/docker/libnetwork/drivers/bridge"
+	"github.com/docker/libnetwork/netlabel"
+	"github.com/docker/libnetwork/options"
+)
+
+func (c *controller) createGWNetwork() (Network, error) {
+	netOption := map[string]string{
+		bridge.BridgeName:         libnGWNetwork,
+		bridge.EnableICC:          strconv.FormatBool(false),
+		bridge.EnableIPMasquerade: strconv.FormatBool(true),
+	}
+
+	n, err := c.NewNetwork("bridge", libnGWNetwork,
+		NetworkOptionGeneric(options.Generic{
+			netlabel.GenericData: netOption,
+			netlabel.EnableIPv6:  false,
+		}))
+
+	if err != nil {
+		return nil, fmt.Errorf("error creating external connectivity network: %v", err)
+	}
+	return n, err
+}

+ 7 - 0
libnetwork/default_gateway_windows.go

@@ -0,0 +1,7 @@
+package libnetwork
+
+import "github.com/docker/libnetwork/types"
+
+func (c *controller) createGWNetwork() (Network, error) {
+	return nil, types.NotImplementedErrorf("default gateway functionality is not implemented in windows")
+}