From 21d071ebece556f3114c18ed9e86414ea6c85e1c Mon Sep 17 00:00:00 2001 From: "Ycarus (Yannick Chabanois)" Date: Thu, 4 Jul 2024 11:40:49 +0200 Subject: [PATCH] Use subprocess for ss -M command --- debian/changelog | 6 ++++++ omr-admin.py | 8 ++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/debian/changelog b/debian/changelog index 18cddb4..1647720 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +omr-vps-admin (0.11+20240704) unstable; urgency=medium + + * Use subprocess for ss -M command + + -- OpenMPTCProuter Wed, 04 Jul 2024 11:40:03 +0200 + omr-vps-admin (0.11+20240629) unstable; urgency=medium * Add a timeout on ss -M command diff --git a/omr-admin.py b/omr-admin.py index a224469..3be0ecc 100755 --- a/omr-admin.py +++ b/omr-admin.py @@ -1336,8 +1336,12 @@ async def mptcpsupport(request: Request): with open('/proc/net/mptcp_net/mptcp') as f: if iptohex in f.read(): return {"mptcp": "working"} - elif not os.popen("timeout 2 ss -M | grep " + ip) == '': - return {"mptcp": "working"} + else: + mptcpcheck = subprocess.Popen("timeout 2 ss -M | grep -q " + ip, shell=True, stdout=subprocess.PIPE) + mptcpcheck.communicate() + if mptcpcheck.returncode == 0: + return {"mptcp": "working"} + mptcpcheck.kill() return {"mptcp": "not working"} # Get VPS status