From patchwork Mon Dec 9 16:12:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrei Otcheretianski X-Patchwork-Id: 2020157 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=PgyPGQ+O; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=D8D6qbD+; 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 4Y6Rv42VGcz1yQl for ; Tue, 10 Dec 2024 03:21:20 +1100 (AEDT) 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: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:In-Reply-To:References: List-Owner; bh=FXg2M7VJGgeX5uVIId+OTnq1HiagI3L8J+tbYqDkUak=; b=PgyPGQ+OGaJpzz p+NQk17lNxbzlBi/mr7oW0FRoM/WJWg1MYurt2680RBZYNfIJZ5b6MfuXW4atKZKENeXLNQ17J/nK P2l6YGYH9Qe59HG++BnBoY0/aDnVpXarxH2uBfZienhs8cRlLQ3SKR0LxDK1eH4u7LqW/Bj/1wnhW qScJRL2SIDGghfQ45wEg8bI3GdJaBdXPb3YF9Yr1DcdZKf5H8nrrn2asZA6I80Zk+rLM/gf1fd+ND FNpA9JfLTnk1BJk6BsCKZzntisi9hk4+SQXkxqoAqZho3zbAkth8ZYJuYvP22KNzjfYyB7fwXja1O 9grsq44932f5oswGSIpg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tKgV4-00000008WwJ-0e09; Mon, 09 Dec 2024 16:20:46 +0000 Received: from mgamail.intel.com ([192.198.163.17]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tKgUH-00000008Wis-0O1y for hostap@lists.infradead.org; Mon, 09 Dec 2024 16:19:58 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1733761197; x=1765297197; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=ysYvkYdk+neL1ihHmDYYdQzb87adZfCaajKCfMi1HPE=; b=D8D6qbD+/nZtGKolkfkKtfTjHRmV0VSmvmJ/Js/+37+IUBxZgaaYbAxi otULHvjBanK9DFx4dto2I5giW/OZuwZ1zpfADa0MhNuDX+ScYImCSoZfn Yq4AfOcB8aVCVQgGpZwGcn1mmkvyweO0uKPuZdv81uTYpdvJftfXGVFc0 NvswIKwvT4fDLGlb/parF4EFhSchDei765goRoVpkEs6BD2xdn/ql1IQS mF6ryriFerSH0mJBQS7aNWpBpcva7PsYk4DOtv7c9yPNAWNVDt9unbODj wICpvuu00IRcmVF7pWnZ/PVoXYkNoHSGoiefiP0P2de+LouGbCOtvDxcm w==; X-CSE-ConnectionGUID: nKG35yy6QKiByBunFWQLFw== X-CSE-MsgGUID: 6aaSXU7PRs24FkTbmyeOKA== X-IronPort-AV: E=McAfee;i="6700,10204,11281"; a="33981792" X-IronPort-AV: E=Sophos;i="6.12,219,1728975600"; d="scan'208";a="33981792" Received: from orviesa008.jf.intel.com ([10.64.159.148]) by fmvoesa111.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Dec 2024 08:19:54 -0800 X-CSE-ConnectionGUID: q2eUGs6VS820GzPqcb1P7w== X-CSE-MsgGUID: Phu392jgT6GHklbupD/FQQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,219,1728975600"; d="scan'208";a="95919002" Received: from weis0042.iil.intel.com ([10.12.217.211]) by orviesa008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Dec 2024 08:19:53 -0800 From: Andrei Otcheretianski To: hostap@lists.infradead.org Cc: Andrei Otcheretianski Subject: [PATCH] wpa_cli: Support NAN USD commands Date: Mon, 9 Dec 2024 18:12:10 +0200 Message-ID: <20241209161210.2997945-1-andrei.otcheretianski@intel.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20241209_081957_141406_EEBBDE39 X-CRM114-Status: UNSURE ( 9.16 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -4.9 (----) 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: Andrei Otcheretianski --- wpa_supplicant/wpa_cli.c | 70 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/wpa_supplicant/wpa_cli.c b/wpa_supplicant/wpa_cli.c index af00e79105..6f25f2d883 100644 --- a/wpa_supplicant/wpa_cli.c +++ b/wpa_supplicant/wpa_cli.c @@ -3335,6 +3335,57 @@ static int wpa [...] Content analysis details: (-4.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, medium trust [192.198.163.17 listed in list.dnswl.org] 0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [192.198.163.17 listed in sa-accredit.habeas.com] 0.0 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [192.198.163.17 listed in sa-trusted.bondedsender.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.5 DKIMWL_WL_HIGH DKIMwl.org - High trust sender 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [192.198.163.17 listed in bl.score.senderscore.com] 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: Andrei Otcheretianski --- wpa_supplicant/wpa_cli.c | 70 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/wpa_supplicant/wpa_cli.c b/wpa_supplicant/wpa_cli.c index af00e79105..6f25f2d883 100644 --- a/wpa_supplicant/wpa_cli.c +++ b/wpa_supplicant/wpa_cli.c @@ -3335,6 +3335,57 @@ static int wpa_cli_cmd_dscp_query(struct wpa_ctrl *ctrl, int argc, char *argv[]) } +#ifdef CONFIG_NAN_USD +static int wpa_cli_cmd_nan_publish(struct wpa_ctrl *ctrl, int argc, + char *argv[]) +{ + return wpa_cli_cmd(ctrl, "NAN_PUBLISH", 1, argc, argv); +} + + +static int wpa_cli_cmd_nan_subscribe(struct wpa_ctrl *ctrl, int argc, + char *argv[]) +{ + return wpa_cli_cmd(ctrl, "NAN_SUBSCRIBE", 1, argc, argv); +} + + +static int wpa_cli_cmd_nan_cancel_subscribe(struct wpa_ctrl *ctrl, int argc, + char *argv[]) +{ + return wpa_cli_cmd(ctrl, "NAN_CANCEL_SUBSCRIBE", 1, argc, argv); +} + + +static int wpa_cli_cmd_nan_cancel_publish(struct wpa_ctrl *ctrl, int argc, + char *argv[]) +{ + return wpa_cli_cmd(ctrl, "NAN_CANCEL_PUBLISH", 1, argc, argv); +} + + +static int wpa_cli_cmd_nan_update_publish(struct wpa_ctrl *ctrl, int argc, + char *argv[]) +{ + return wpa_cli_cmd(ctrl, "NAN_UPDATE_PUBLISH", 1, argc, argv); +} + + +static int wpa_cli_cmd_nan_transmit(struct wpa_ctrl *ctrl, int argc, + char *argv[]) +{ + return wpa_cli_cmd(ctrl, "NAN_TRANSMIT", 3, argc, argv); +} + + +static int wpa_cli_cmd_nan_flush(struct wpa_ctrl *ctrl, int argc, + char *argv[]) +{ + return wpa_ctrl_command(ctrl, "NAN_FLUSH"); +} +#endif /* CONFIG_NAN_USD */ + + enum wpa_cli_cmd_flags { cli_cmd_flag_none = 0x00, cli_cmd_flag_sensitive = 0x01 @@ -4084,6 +4135,25 @@ static const struct wpa_cli_cmd wpa_cli_commands[] = { { "mlo_signal_poll", wpa_cli_cmd_mlo_signal_poll, NULL, cli_cmd_flag_none, "= get mlo signal parameters" }, +#ifdef CONFIG_NAN_USD + { "nan_publish", wpa_cli_cmd_nan_publish, NULL, + cli_cmd_flag_none, + "service_name= [ttl=] [freq=] [freq_list=] [srv_proto_type=] [ssi=] [solicited=0] [unsolicited=0] [fsd=0] [p2p=1] = Publish NAN service" }, + { "nan_subscribe", wpa_cli_cmd_nan_subscribe, NULL, + cli_cmd_flag_none, + "service_name= [active=1] [ttl=] [freq=] [srv_proto_type=] [ssi=] [p2p=1] = Subscribe to NAN service" }, + { "nan_cancel_publish", wpa_cli_cmd_nan_cancel_publish, NULL, + cli_cmd_flag_none, "publish_id= = Cancel NAN USD publish instance" }, + { "nan_cancel_subscribe", wpa_cli_cmd_nan_cancel_subscribe, NULL, + cli_cmd_flag_none, "subscribe_id= = Cancel NAN USD subscribe instance" }, + { "nan_update_publish", wpa_cli_cmd_nan_update_publish, NULL, + cli_cmd_flag_none, "publish_id= [ssi= = Update publish" }, + { "nan_transmit", wpa_cli_cmd_nan_transmit, NULL, + cli_cmd_flag_none, "handle= req_instance_id= address= [ssi=] = Transmit NAN follow up" }, + { "nan_flush", wpa_cli_cmd_nan_flush, NULL, + cli_cmd_flag_none, "= Flush all NAN USD services" }, +#endif /* CONFIG_NAN_USD */ + { NULL, NULL, NULL, cli_cmd_flag_none, NULL } };