2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-31 06:15:47 +00:00

netdev: Assert that the type of a new network device is correct.

This would have found a bug that I accidentally inserted while working on
netdev-linux.
This commit is contained in:
Ben Pfaff
2010-11-03 17:00:57 -07:00
parent 59348dba2c
commit a8f8673461

View File

@@ -251,6 +251,7 @@ static int
create_device(struct netdev_options *options, struct netdev_dev **netdev_devp)
{
struct netdev_class *netdev_class;
int error;
if (!options->type || strlen(options->type) == 0) {
/* Default to system. */
@@ -262,8 +263,10 @@ create_device(struct netdev_options *options, struct netdev_dev **netdev_devp)
return EAFNOSUPPORT;
}
return netdev_class->create(netdev_class, options->name, options->args,
netdev_devp);
error = netdev_class->create(netdev_class, options->name, options->args,
netdev_devp);
assert(error || (*netdev_devp)->netdev_class == netdev_class);
return error;
}
/* Opens the network device named 'name' (e.g. "eth0") and returns zero if