neutron/neutron/privileged/agent/linux
Rodolfo Alonso Hernandez 0f02f97f25 Implement namespace creation method
Since [1], Pyroute forks the namespace creation to avoid calling
destructive routine "libc.unshare(CLONE_NEWNET)" from the main
process. This implementation uses sockets between both processes
to return any error feedback sent from the child process.

This patch implements the same fork without any communication. If
the child process raises an exception other than "OSError(EEXIST)",
the child process returns 1 that is read by the the main process,
that raises a "RuntimeError" exception.

Related-Bug: #1917487

[1]81db2c98a1

Change-Id: I0294586335a71d0757803843f675124bfb450967
(cherry picked from commit eb56747851)
2021-07-23 08:01:37 +00:00
..
__init__.py Move "get_cdll" to a common place in privileged.agent.linux 2020-06-19 14:04:23 +00:00
dhcp.py Fix dhcp_release when client_id is specified 2020-09-24 12:01:12 +12:00
ethtool.py Migrate "ethtool" to oslo.privsep 2020-07-07 17:45:54 +00:00
ip_lib.py Implement namespace creation method 2021-07-23 08:01:37 +00:00
netlink_constants.py Correct arguments to nfct_open 2019-01-24 08:41:38 +00:00
netlink_lib.py Proper log translation 2021-01-21 19:07:04 +03:00
tc_lib.py TC filter functions should pass "prio" parameter 2019-07-04 12:46:11 +00:00
utils.py Revert "Implement "kill" method using os.kill()" 2021-03-25 22:05:58 +00:00