From patchwork Thu May 30 19:19:01 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janusz Dziedzic X-Patchwork-Id: 1941793 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=Pt6B5FTv; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20230601 header.b=H+d+ka3x; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.infradead.org (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org; envelope-from=hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=patchwork.ozlabs.org) Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4Vqx05624Tz20QD for ; Fri, 31 May 2024 05:19:47 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=Xy3lwCC8z1YICSrNE30LLTUrQMxBl9X+z9QEgo2U7TY=; b=Pt6B5FTvVIPu2c KF6tfOJWhtf35Y5fqguYUSCGxTvYItI8vsInhmqsjh/iI4v12zacLfR+Y4TsUaN6GfGcvRoax4N3s tuupY34AJb934/DHZi+b6Rk00AK9cnD0hKVzuQDaIvVa8KvX40xAP0nLTKUebb7SvV6e+k/2Si0pY wej9UEtO/UQPBIrcD4yYd0TLE3plk2tcWu3zZM2eJsSzcT5JVUOMHkz0mP+hy4hFoPMz/w42QOu9G cc21jrws+PUQ1g4X4uHkWi8j7qeYWa0VeMhLp0kZo4ktT4Sel3h+nILNaLjb446GI/Q8/qlK7uE92 wLpt/+NvU/hLwXZ2WoTw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sClJ0-00000008CT8-1yZ1; Thu, 30 May 2024 19:19:18 +0000 Received: from mail-ej1-x629.google.com ([2a00:1450:4864:20::629]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1sClIv-00000008CQr-1hiB for hostap@lists.infradead.org; Thu, 30 May 2024 19:19:16 +0000 Received: by mail-ej1-x629.google.com with SMTP id a640c23a62f3a-a63359aaacaso145785866b.1 for ; Thu, 30 May 2024 12:19:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717096751; x=1717701551; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=4icwx2CIrX6i30O8Wy2nRp5UPm9h9nn2+Zm3z1gaIWI=; b=H+d+ka3xBgDE4V4UGS02KxcgKkbnhDXLt7bypkUqZPIbVOl6sa681hmEzOpUxQQPjE ic6Oql5UR05j9/oYWiqlTbnAC9IAKHwm0iy1k9RKhQTDisPhoSGBoYqEikMjEa1kg47U qqpe5WAaKG/krEp3VqbTPvBHGtvFfBVTu6GK401fh19spfZGvMD0tCjtgVWkMxJm8mzx aj0bSBdOka8pVKezyqdvgvzZfRngDBsxTsrdaTWdJguX9P/LT7QIGXoFv0lJncFInAV+ X26nAxqsmzs0yyAtQN/WVqk0GmyE1jU4I9wqdxrUaYCbiHGuNOVqqdtGXIzsjWZSgU6Q V5Ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717096751; x=1717701551; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4icwx2CIrX6i30O8Wy2nRp5UPm9h9nn2+Zm3z1gaIWI=; b=fi9ULdVaV8ebVsyWSOakWY6pR14lxzfB3S6S1dZVQYQETR8ie1VgivDSt3oPzTMQVs ueLYjvxVuDyyODEzRkNfNoeamP77V4y/nza2Hl0CJ5o3noE+qYyk0iBNqGS8kn4imiTv yQwOlQvc6vxI0NqXPGTk74rIvsA/emj/A20mISq4gTkGItV4JFZPNVIwIfP8HdK0UNp1 dM1dwKGBjqiBJZuXRJzJLoPtNjDpgt3S8HU6rlNGqq8nugtfo4n9W8WUYSiCL/ifVstD U2dZCUGEiRci1x1ARqQfwv4g6WU8eUp3P7v3CGJLHIHf7xeuZiY1gk2l1G6hHG1YQxbi D25A== X-Gm-Message-State: AOJu0YxmrKzy/ycHSzKBi86kFGiiub4+svN/u7q0qk7Q7T7MednWSSsH qIFTng6X/K74TmEIYyIccsANo954E2Xy0LTb71QyEEP8FTUUZ3AaW0s5VQ== X-Google-Smtp-Source: AGHT+IG5eI+GfmLVm0Fwi9sZzEqvIn5oFVbDKI31vKWe6GMOa1SoxbFCdDdLTMM0bm0JJx0dO01OLw== X-Received: by 2002:a17:906:c51:b0:a5a:7ce8:f52c with SMTP id a640c23a62f3a-a65e8d37315mr176913266b.16.1717096750710; Thu, 30 May 2024 12:19:10 -0700 (PDT) Received: from e850.NAT.swidnica_mmp.vectranet.pl (178235177153.dynamic-4-waw-k-1-1-0.vectranet.pl. [178.235.177.153]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a67e73fc1a5sm6629666b.53.2024.05.30.12.19.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 May 2024 12:19:10 -0700 (PDT) From: Janusz Dziedzic To: hostap@lists.infradead.org Cc: j@w1.fi, Janusz Dziedzic Subject: [PATCH v2 2/5] tests: wpasupplicant: allow to use remote wpa_cli Date: Thu, 30 May 2024 21:19:01 +0200 Message-Id: <20240530191904.1426538-2-janusz.dziedzic@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20240530191904.1426538-1-janusz.dziedzic@gmail.com> References: <20240530191904.1426538-1-janusz.dziedzic@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240530_121913_471899_5A9CCCA1 X-CRM114-Status: GOOD ( 11.26 ) X-Spam-Score: -0.2 (/) X-Spam-Report: Spam detection software, running on the system "bombadil.infradead.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: Signed-off-by: Janusz Dziedzic --- tests/hwsim/wpasupplicant.py | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/tests/hwsim/wpasupplicant.py b/tests/hwsim/wpasupplicant.py index 1b3fd0948..9e4b8512a 100644 --- a/tests/hwsim/wpasupplicant.py +++ b/tests/hwsim/wpasupplicant.py @@ -13,13 +13,14 @@ imp [...] Content analysis details: (-0.2 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:629 listed in] [list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider [janusz.dziedzic(at)gmail.com] -0.0 T_SCC_BODY_TEXT_LINE No description available. X-BeenThere: hostap@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Hostap" Errors-To: hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org Signed-off-by: Janusz Dziedzic --- tests/hwsim/wpasupplicant.py | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/tests/hwsim/wpasupplicant.py b/tests/hwsim/wpasupplicant.py index 1b3fd0948..9e4b8512a 100644 --- a/tests/hwsim/wpasupplicant.py +++ b/tests/hwsim/wpasupplicant.py @@ -13,13 +13,14 @@ import struct import wpaspy import remotehost import subprocess +from remotectrl import RemoteCtrl logger = logging.getLogger() wpas_ctrl = '/var/run/wpa_supplicant' class WpaSupplicant: def __init__(self, ifname=None, global_iface=None, hostname=None, - port=9877, global_port=9878, monitor=True): + port=9877, global_port=9878, monitor=True, remote_cli=False): self.monitor = monitor self.hostname = hostname self.group_ifname = None @@ -31,6 +32,7 @@ class WpaSupplicant: self.ifname = None self.host = remotehost.Host(hostname, ifname) self._group_dbg = None + self.remote_cli = remote_cli if ifname: self.set_ifname(ifname, hostname, port) res = self.get_driver_status() @@ -42,10 +44,16 @@ class WpaSupplicant: self.global_iface = global_iface if global_iface: if hostname != None: - self.global_ctrl = wpaspy.Ctrl(hostname, global_port) - if self.monitor: - self.global_mon = wpaspy.Ctrl(hostname, global_port) - self.global_dbg = hostname + "/" + str(global_port) + "/" + if remote_cli: + self.global_ctrl = RemoteCtrl(global_iface, global_port, hostname=hostname) + if self.monitor: + self.global_mon = RemoteCtrl(global_iface, global_port, hostname=hostname) + self.global_dbg = hostname + "/global" + else: + self.global_ctrl = wpaspy.Ctrl(hostname, global_port) + if self.monitor: + self.global_mon = wpaspy.Ctrl(hostname, global_port) + self.global_dbg = hostname + "/" + str(global_port) + "/" else: self.global_ctrl = wpaspy.Ctrl(global_iface) if self.monitor: @@ -164,9 +172,14 @@ class WpaSupplicant: self.remove_ifname() self.ifname = ifname if hostname != None: - self.ctrl = wpaspy.Ctrl(hostname, port) - if self.monitor: - self.mon = wpaspy.Ctrl(hostname, port) + if self.remote_cli: + self.ctrl = RemoteCtrl(wpas_ctrl, port, hostname=hostname, ifname=ifname) + if self.monitor: + self.mon = RemoteCtrl(wpas_ctrl, port, hostname=hostname, ifname=ifname) + else: + self.ctrl = wpaspy.Ctrl(hostname, port) + if self.monitor: + self.mon = wpaspy.Ctrl(hostname, port) self.host = remotehost.Host(hostname, ifname) self.dbg = hostname + "/" + ifname else: @@ -185,6 +198,8 @@ class WpaSupplicant: def get_ctrl_iface_port(self, ifname): if self.hostname is None: return None + if self.remote_cli: + return None res = self.global_request("INTERFACES ctrl") lines = res.splitlines()