Unverified Commit 9c8ca2a5 by Christian Brauner Committed by Stéphane Graber

network: perform network validation at creation time

Some of the checks were previously performed when parsing the network config. But since we allow for a little more flexibility now it doesn't work anymore. Instead, let's validate the network at creation time. Signed-off-by: 's avatarChristian Brauner <christian.brauner@ubuntu.com>
parent 5d9a6c64
...@@ -2948,6 +2948,21 @@ int lxc_create_network(struct lxc_handler *handler) ...@@ -2948,6 +2948,21 @@ int lxc_create_network(struct lxc_handler *handler)
netdev = iterator->elem; netdev = iterator->elem;
if (netdev->type != LXC_NET_MACVLAN && netdev->priv.macvlan_attr.mode) {
ERROR("Invalid macvlan.mode for a non-macvlan netdev");
return -1;
}
if (netdev->type != LXC_NET_VETH && netdev->priv.veth_attr.pair) {
ERROR("Invalid veth pair for a non-veth netdev");
return -1;
}
if (netdev->type != LXC_NET_VLAN && netdev->priv.vlan_attr.vid > 0) {
ERROR("Invalid vlan.id for a non-macvlan netdev");
return -1;
}
if (netdev->type < 0 || netdev->type > LXC_NET_MAXCONFTYPE) { if (netdev->type < 0 || netdev->type > LXC_NET_MAXCONFTYPE) {
ERROR("invalid network configuration type '%d'", ERROR("invalid network configuration type '%d'",
netdev->type); netdev->type);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment