neutron/neutron/tests/unit
Sławek Kapłoński 56324c12aa Fix potential race condition in privileged ip_lib module
Functions like _run_iproute_{link,addr,neigh} are not atomic and
work in two steps.
First it tries to get device index and in second step calls specified
command for this device.
It might happen sometimes that device exists during first of those
steps but not exists during second step. Such case causes raising
pyroute2.NetlinkError exception which isn't properly handled in
Neutron code which uses ip_lib module.

This patch fixes it by catching pyroute2.NetlinkError exception
and raising NetworkInterfaceNotFound.
This is subclass of RuntimeError and all callers of ip_lib can handle
it properly is needed.

Change-Id: I568ef183466f5ff2f2c30ed74a7dc52db41ba577
Closes-Bug: #1763329
2018-04-13 09:39:29 +02:00
..
agent Fix pep8 errors 2018-04-11 01:10:49 +09:00
api Removing deprecated module neutron.api.versions 2018-03-28 14:15:50 +07:00
cmd More efficiently clean up OVS ports 2018-01-22 14:07:42 -06:00
common remove unused common rpc apis 2018-03-09 12:13:48 -07:00
conf/agent Agent common config 2017-03-15 09:52:18 -06:00
core_extensions use qos constants from neutron-lib 2017-10-26 19:57:19 +00:00
db Merge "Router should flip to standby if all L3 nodes down" 2018-04-09 22:45:52 +00:00
debug Change ip_lib network namespace code to use pyroute2 2017-10-04 21:09:28 +00:00
extensions Merge "tests: fixed NoSuchGroupError in TestNovaSegmentNotifier" 2018-04-09 20:30:14 +00:00
hacking Use flake8-import-order plugin 2017-07-05 03:15:27 +00:00
ipam Removed unnecessary setUp calls in tests 2017-07-31 17:16:01 +02:00
notifiers Use port object in notifiers/test_nova.py 2017-10-03 20:59:01 +00:00
objects Add a test class to validate UTs fixes of new_facade flag 2018-03-16 20:27:58 +09:00
pecan_wsgi Removing deprecated module neutron.api.versions 2018-03-28 14:15:50 +07:00
plugins Merge "Replace usage of 'user' by 'user_id'" 2018-04-11 11:04:37 +00:00
privileged Fix potential race condition in privileged ip_lib module 2018-04-13 09:39:29 +02:00
quota CountableResource: try count/get functions for all plugins 2017-09-08 10:50:12 -07:00
scheduler Merge "use l3 api def from neutron-lib" 2017-12-16 13:01:14 +00:00
services use callback payloads for PRECOMMIT_UPDATE events 2018-03-13 11:38:19 -06:00
tests Replaced assertTrue(False) with fail() 2017-06-22 19:31:00 +02:00
__init__.py Don't set use_stderr to False for tests 2017-04-15 01:41:29 +00:00
_test_extension_portbindings.py use plugin constants from neutron-lib 2017-10-16 09:32:20 -06:00
dummy_plugin.py use neutron-lib servicetype api def 2018-03-27 14:32:44 -06:00
extension_stubs.py Consume ServicePluginBase from neutron-lib 2017-03-17 12:06:57 -06:00
test_auth.py Fix context deprecation warnings 2018-02-13 15:02:49 -05:00
test_manager.py use plugin constants from neutron-lib 2017-10-16 09:32:20 -06:00
test_neutron_plugin_base_v2.py Add unit test to validate non DB base core plugin can be loaded 2017-11-15 21:21:35 +00:00
test_opts.py Fix the sriov agent config group name 2016-05-05 16:16:08 +08:00
test_policy.py consume neutron-lib resources attr map 2018-03-09 13:37:28 -07:00
test_service.py use callback payloads for _SPAWN events 2017-12-21 11:03:36 -07:00
test_worker.py Move AgentStatusCheckWorker to PeriodicWorker 2016-11-17 15:31:19 -08:00
test_wsgi.py Pass parameters when create eventlet.wsgi server 2017-03-17 14:14:25 +08:00
testlib_api.py Remove usage of TestCase.skip() method 2018-03-21 22:14:53 +01:00