Example #1
0
File: br_if.c Project: nhanh0/hah
int br_add_bridge(char *name)
{
	struct net_bridge *br;

	if ((br = new_nb(name)) == NULL)
		return -ENOMEM;

	if (__dev_get_by_name(name) != NULL) {
		kfree(br);
		return -EEXIST;
	}

	br->next = bridge_list;
	bridge_list = br;

	br_inc_use_count();
	register_netdev(&br->dev);

	return 0;
}
int br_add_bridge(char *name)
{
	struct net_bridge *br;
	struct net_device *dev;
	int err;

	if ((br = new_nb(name)) == NULL)
		return -ENOMEM;

	dev = &br->dev;
	if (strchr(dev->name, '%')) {
		err = dev_alloc_name(dev, dev->name);
		if (err < 0)
			goto  out;
	}

	err = register_netdevice(dev);
	if (err == 0)
		br_inc_use_count();

 out:
	return err;
}