From: Thomas Goirand Date: Mon, 9 Feb 2015 19:14:20 +0000 (+0100) Subject: Merge tag '2015.1_b2' into debian/kilo X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=706480be2ec08d4b933e5332ef4e12c1bcbb2019;p=openstack-build%2Fneutron-build.git Merge tag '2015.1_b2' into debian/kilo Neutron kilo-2 milestone (2015.1.0b2) --- 706480be2ec08d4b933e5332ef4e12c1bcbb2019 diff --cc neutron/db/l3_db.py index 0bdf508e0,3176d89bb..7cdc83267 --- a/neutron/db/l3_db.py +++ b/neutron/db/l3_db.py @@@ -467,10 -507,15 +508,16 @@@ class L3_NAT_dbonly_mixin(l3.RouterPlug def _add_interface_by_subnet(self, context, router, subnet_id, owner): subnet = self._core_plugin._get_subnet(context, subnet_id) - if not subnet['gateway_ip']: + if (not subnet['gateway_ip'] + and not ipv6_utils.is_slaac_subnet(subnet)): msg = _('Subnet for router interface must have a gateway IP') raise n_exc.BadRequest(resource='router', msg=msg) + if (subnet['ip_version'] == 6 and subnet['ipv6_ra_mode'] is None + and subnet['ipv6_address_mode'] is not None): + msg = (_('IPv6 subnet %s configured to receive RAs from an ' + 'external router cannot be added to Neutron Router.') % + subnet['id']) + raise n_exc.BadRequest(resource='router', msg=msg) self._check_for_dup_router_subnet(context, router, subnet['network_id'], subnet_id,