On Sun, Nov 10, 2024 at 9:01 AM Jakub Kicinski <kuba@xxxxxxxxxx> wrote: > > On Thu, 7 Nov 2024 21:30:03 +0800 Xiao Liang wrote: > > +class NSEnter: > > + def __init__(self, ns_name): > > + self.ns_path = f"/run/netns/{ns_name}" > > + > > + def __enter__(self): > > + self.saved = open("/proc/thread-self/ns/net") > > + with open(self.ns_path) as ns_file: > > + libc.setns(ns_file.fileno(), 0) > > + > > + def __exit__(self, exc_type, exc_value, traceback): > > + libc.setns(self.saved.fileno(), 0) > > + self.saved.close() > > This is quite nice, why not move it to > tools/testing/selftests/net/lib/py/netns.py > so others can use it too Sure, I will move it to lib.