diff --git a/neutron/agent/linux/iptables_manager.py b/neutron/agent/linux/iptables_manager.py index c9a2b894b03..11b275d3d75 100644 --- a/neutron/agent/linux/iptables_manager.py +++ b/neutron/agent/linux/iptables_manager.py @@ -18,9 +18,9 @@ """Implements iptables rules using linux utilities.""" -import inspect import os import re +import sys from oslo.config import cfg from oslo.utils import excutils @@ -42,7 +42,7 @@ LOG = logging.getLogger(__name__) # (max_chain_name_length - len('-POSTROUTING') == 16) def get_binary_name(): """Grab the name of the binary we're running in.""" - return os.path.basename(inspect.stack()[-1][1])[:16] + return os.path.basename(sys.argv[0])[:16] binary_name = get_binary_name() diff --git a/neutron/tests/unit/test_iptables_manager.py b/neutron/tests/unit/test_iptables_manager.py index 54380401d74..e96309fec3d 100644 --- a/neutron/tests/unit/test_iptables_manager.py +++ b/neutron/tests/unit/test_iptables_manager.py @@ -13,8 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -import inspect import os +import sys import mock from oslo.config import cfg @@ -190,8 +190,8 @@ class IptablesManagerStateFulTestCase(base.BaseTestCase): self.execute = mock.patch.object(self.iptables, "execute").start() def test_binary_name(self): - self.assertEqual(iptables_manager.binary_name, - os.path.basename(inspect.stack()[-1][1])[:16]) + expected = os.path.basename(sys.argv[0])[:16] + self.assertEqual(expected, iptables_manager.binary_name) def test_get_chain_name(self): name = '0123456789' * 5