When getting the external ip of vpnservice written in https://github.com/openstack/neutron/blob/master/neutron/services/vpn/service_drivers/ipsec.py#L172, it didn't check whether the router has gateway which would lead to the following error:
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp File "/opt/stack/neutron/neutron/services/vpn/service_drivers/ipsec.py", line 55, in get_vpn_services_on_host
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp for vpnservice in vpnservices]
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp File "/opt/stack/neutron/neutron/services/vpn/service_drivers/ipsec.py", line 173, in _make_vpnservice_dict
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp 'fixed_ips'][0]['ip_address']
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp TypeError: 'NoneType' object has no attribute '__getitem__'
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp
2013-11-25 19:11:49.176 TRACE neutron.openstack.common.rpc.amqp
Fix proposed to branch: master /review. openstack. org/60461
Review: https:/