]> git.ipfire.org Git - thirdparty/iw.git/commitdiff
iw: Add command to enable/disable EPCS
authorIlan Peer <ilan.peer@intel.com>
Fri, 1 Nov 2024 03:43:13 +0000 (05:43 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 24 Jun 2025 07:31:38 +0000 (09:31 +0200)
Add support to enable/disable Emergency Preparedness Communication
Services (EPCS).

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
interface.c

index 0d4ff042c7a65f4179783d8a904619ae11a1ba0a..65a4006963e5fd5d950867c89023b01b1656cbf0 100644 (file)
@@ -1036,3 +1036,26 @@ COMMAND(set, tidconf, "[peer <MAC address>] tids <mask> [override] [sretry <num>
        "  $ iw dev wlan0 set tidconf peer xx:xx:xx:xx:xx:xx tids 0x2 bitrates auto\n"
        "  $ iw dev wlan0 set tidconf peer xx:xx:xx:xx:xx:xx tids 0x2 bitrates limit vht-mcs-5 4:9\n"
        );
+
+static int handle_set_epcs(struct nl80211_state *state,
+                          struct nl_msg *msg,
+                          int argc, char **argv,
+                          enum id_input id)
+{
+       if (argc != 1)
+               return 1;
+
+       if (strcmp(argv[0], "enable") == 0)
+               NLA_PUT_FLAG(msg, NL80211_ATTR_EPCS);
+       else if (strcmp(argv[0], "disable") != 0)
+               return 1;
+
+       return 0;
+
+nla_put_failure:
+       return 1;
+}
+
+COMMAND(set, epcs, "<enable|disable>",
+       NL80211_CMD_EPCS_CFG, 0, CIB_NETDEV, handle_set_epcs,
+       "Enable/Disable EPCS support");