浏览代码

daemon: Validate MacAddress on container create

This was previously checked only on ContainerStart.

Signed-off-by: Albin Kerouanton <albinker@gmail.com>
Albin Kerouanton 2 年之前
父节点
当前提交
61c78d9438
共有 1 个文件被更改,包括 7 次插入0 次删除
  1. 7 0
      daemon/container_operations.go

+ 7 - 0
daemon/container_operations.go

@@ -612,6 +612,13 @@ func validateEndpointSettings(nw *libnetwork.Network, nwName string, epConfig *n
 		}
 	}
 
+	if epConfig.MacAddress != "" {
+		_, err := net.ParseMAC(epConfig.MacAddress)
+		if err != nil {
+			return fmt.Errorf("invalid MAC address %s", epConfig.MacAddress)
+		}
+	}
+
 	if err := multierror.Join(errs...); err != nil {
 		return fmt.Errorf("invalid endpoint settings:\n%w", err)
 	}