瀏覽代碼

On network creation, reset mangle rule

- When creating a non encrypted overlay network,
  make sure no encryption related mangle rule from
  stale network is on the way.

Signed-off-by: Alessandro Boch <aboch@docker.com>
Alessandro Boch 9 年之前
父節點
當前提交
147b646e79
共有 1 個文件被更改,包括 7 次插入0 次删除
  1. 7 0
      libnetwork/drivers/overlay/ov_network.go

+ 7 - 0
libnetwork/drivers/overlay/ov_network.go

@@ -140,6 +140,13 @@ func (d *driver) CreateNetwork(id string, option map[string]interface{}, nInfo d
 		return fmt.Errorf("failed to update data store for network %v: %v", n.id, err)
 		return fmt.Errorf("failed to update data store for network %v: %v", n.id, err)
 	}
 	}
 
 
+	// Make sure no rule is on the way from any stale secure network
+	if !n.secure {
+		for _, vni := range vnis {
+			programMangle(vni, false)
+		}
+	}
+
 	if nInfo != nil {
 	if nInfo != nil {
 		if err := nInfo.TableEventRegister(ovPeerTable); err != nil {
 		if err := nInfo.TableEventRegister(ovPeerTable); err != nil {
 			return err
 			return err