]> git.ipfire.org Git - thirdparty/iw.git/commitdiff
iw: add support for the forced AP scan
authorAntonio Quartulli <ordex@autistici.org>
Fri, 26 Oct 2012 14:41:48 +0000 (16:41 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 26 Oct 2012 14:48:00 +0000 (16:48 +0200)
This patch introduces the "ap-force" argument to the scan command.
This argument instructs mac80211 to trigger the scan even if the
interface is configured as AP and has already started beaconing (the
driver may not support such operation)

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
scan.c

diff --git a/scan.c b/scan.c
index 91984e5bb1030fd3760098e73206d7ba98c22aa3..73fb3fe71c75adca9f958a59993fee413ba9d55a 100644 (file)
--- a/scan.c
+++ b/scan.c
@@ -103,6 +103,10 @@ static int handle_scan(struct nl80211_state *state,
                                parse = NONE;
                                flags |= NL80211_SCAN_FLAG_FLUSH;
                                break;
+                       } else if (strcmp(argv[i], "ap-force") == 0) {
+                               parse = NONE;
+                               flags |= NL80211_SCAN_FLAG_AP;
+                               break;
                        } else if (strcmp(argv[i], "ssid") == 0) {
                                parse = SSID;
                                have_ssids = true;
@@ -1355,7 +1359,7 @@ static int handle_scan_combined(struct nl80211_state *state,
        dump_argv[0] = argv[0];
        return handle_cmd(state, id, dump_argc, dump_argv);
 }
-TOPLEVEL(scan, "[-u] [freq <freq>*] [ies <hex as 00:11:..>] [lowpri,flush] [ssid <ssid>*|passive]", 0, 0,
+TOPLEVEL(scan, "[-u] [freq <freq>*] [ies <hex as 00:11:..>] [lowpri,flush,ap-force] [ssid <ssid>*|passive]", 0, 0,
         CIB_NETDEV, handle_scan_combined,
         "Scan on the given frequencies and probe for the given SSIDs\n"
         "(or wildcard if not given) unless passive scanning is requested.\n"
@@ -1365,7 +1369,7 @@ COMMAND(scan, dump, "[-u]",
        NL80211_CMD_GET_SCAN, NLM_F_DUMP, CIB_NETDEV, handle_scan_dump,
        "Dump the current scan results. If -u is specified, print unknown\n"
        "data in scan results.");
-COMMAND(scan, trigger, "[freq <freq>*] [ies <hex as 00:11:..>] [lowpri,flush] [ssid <ssid>*|passive]",
+COMMAND(scan, trigger, "[freq <freq>*] [ies <hex as 00:11:..>] [lowpri,flush,ap-force] [ssid <ssid>*|passive]",
        NL80211_CMD_TRIGGER_SCAN, 0, CIB_NETDEV, handle_scan,
         "Trigger a scan on the given frequencies with probing for the given\n"
         "SSIDs (or wildcard if not given) unless passive scanning is requested.");