git: a1eb150ce215 - main - atf_python: vnet: Use absolute paths within helpers
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 13 Oct 2023 19:31:38 UTC
The branch main has been updated by markj:
URL: https://cgit.FreeBSD.org/src/commit/?id=a1eb150ce215f51abbbb34aed0533bced93e5502
commit a1eb150ce215f51abbbb34aed0533bced93e5502
Author: Jose Luis Duran <jlduran@gmail.com>
AuthorDate: 2023-10-12 15:14:44 +0000
Commit: Mark Johnston <markj@FreeBSD.org>
CommitDate: 2023-10-13 19:31:30 +0000
atf_python: vnet: Use absolute paths within helpers
Usually tests are run in sterile environments; however, there is a
slight chance that the PATH overrides the utilities used for testing.
Pedantically use absolute paths, even inside VNETs, to avoid ambiguity.
Chiefly, jexec -> /usr/sbin/jexec, and ifconfig -> /sbin/ifconfig.
Reviewed by: markj
MFC after: 1 week
Pull Request: https://github.com/freebsd/freebsd-src/pull/865
---
tests/atf_python/sys/net/vnet.py | 16 ++++++----------
1 file changed, 6 insertions(+), 10 deletions(-)
diff --git a/tests/atf_python/sys/net/vnet.py b/tests/atf_python/sys/net/vnet.py
index bfe7984b440b..7c855b19f2c0 100644
--- a/tests/atf_python/sys/net/vnet.py
+++ b/tests/atf_python/sys/net/vnet.py
@@ -82,13 +82,9 @@ class VnetInterface(object):
def set_jailed(self, jailed: bool):
self.jailed = jailed
- def run_cmd(
- self,
- cmd,
- verbose=False,
- ):
+ def run_cmd(self, cmd, verbose=False):
if self.vnet_name and not self.jailed:
- cmd = "jexec {} {}".format(self.vnet_name, cmd)
+ cmd = "/usr/sbin/jexec {} {}".format(self.vnet_name, cmd)
return run_cmd(cmd, verbose)
@classmethod
@@ -189,7 +185,7 @@ class IfaceFactory(object):
def cleanup_vnet_interfaces(self, vnet_name: str) -> List[str]:
"""Destroys"""
ifaces_lst = ToolsHelper.get_output(
- "/usr/sbin/jexec {} ifconfig -l".format(vnet_name)
+ "/usr/sbin/jexec {} /sbin/ifconfig -l".format(vnet_name)
)
for iface_name in ifaces_lst.split():
if not self.is_autodeleted(iface_name):
@@ -197,7 +193,7 @@ class IfaceFactory(object):
print("Skipping interface {}:{}".format(vnet_name, iface_name))
continue
run_cmd(
- "/usr/sbin/jexec {} ifconfig {} destroy".format(vnet_name, iface_name)
+ "/usr/sbin/jexec {} /sbin/ifconfig {} destroy".format(vnet_name, iface_name)
)
def cleanup(self):
@@ -231,7 +227,7 @@ class VnetInstance(object):
def run_vnet_cmd(self, cmd):
if not self.attached:
- cmd = "jexec {} {}".format(self.name, cmd)
+ cmd = "/usr/sbin/jexec {} {}".format(self.name, cmd)
return run_cmd(cmd)
def disable_dad(self):
@@ -269,7 +265,7 @@ class VnetFactory(object):
@staticmethod
def _wait_interfaces(vnet_name: str, ifaces: List[str]) -> List[str]:
- cmd = "jexec {} /sbin/ifconfig -l".format(vnet_name)
+ cmd = "/usr/sbin/jexec {} /sbin/ifconfig -l".format(vnet_name)
not_matched: List[str] = []
for i in range(50):
vnet_ifaces = run_cmd(cmd).strip().split(" ")