]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
dbus: Add AbortScan method to abort ongoing scan
authorSaurav Babu <saurav.babu@samsung.com>
Thu, 13 Apr 2017 03:58:11 +0000 (09:28 +0530)
committerJouni Malinen <j@w1.fi>
Sun, 7 May 2017 19:08:43 +0000 (22:08 +0300)
Signed-off-by: Saurav Babu <saurav.babu@samsung.com>
doc/dbus.doxygen
wpa_supplicant/dbus/dbus_new.c
wpa_supplicant/dbus/dbus_new_handlers.c
wpa_supplicant/dbus/dbus_new_handlers.h

index 8d245459ac3c2205724b9adb20f2956aea1482e5..32b916697adfb0267bd210d92cef9d4346c3c8c9 100644 (file)
@@ -511,6 +511,10 @@ fi.w1.wpa_supplicant1.CreateInterface.
        <h3>SaveConfig ( ) --> nothing</h3>
        <p>Save configuration to the configuration file.</p>
       </li>
+      <li>
+       <h3>AbortScan ( ) --> nothing</h3>
+       <p>Abort ongoing scan operation.</p>
+      </li>
       <li>
        <h3>EAPLogoff ( ) --> nothing</h3>
        <p>IEEE 802.1X EAPOL state machine logoff.</p>
index 0c355f799dee823b242b1f91454bfd672d0567f8..64bcfdb360fe7f9f200981e72f05b15d2b03b9c8 100644 (file)
@@ -3119,6 +3119,12 @@ static const struct wpa_dbus_method_desc wpas_dbus_interface_methods[] = {
          }
        },
 #endif /* CONFIG_NO_CONFIG_WRITE */
+       { "AbortScan", WPAS_DBUS_NEW_IFACE_INTERFACE,
+         (WPADBusMethodHandler) wpas_dbus_handler_abort_scan,
+         {
+                 END_ARGS
+         }
+       },
        { NULL, NULL, NULL, { END_ARGS } }
 };
 
index 56e6aab972b515f5a9d8fe873c6d327ebf601f1c..84016e11b12c736da31948504afde25b68c0ea6e 100644 (file)
@@ -1419,6 +1419,27 @@ out:
 }
 
 
+/*
+ * wpas_dbus_handler_abort_scan - Request an ongoing scan to be aborted
+ * @message: Pointer to incoming dbus message
+ * @wpa_s: wpa_supplicant structure for a network interface
+ * Returns: Abort failed or no scan in progress DBus error message on failure
+ * or NULL otherwise.
+ *
+ * Handler function for "AbortScan" method call of network interface.
+ */
+DBusMessage * wpas_dbus_handler_abort_scan(DBusMessage *message,
+                                          struct wpa_supplicant *wpa_s)
+{
+       if (wpas_abort_ongoing_scan(wpa_s) < 0)
+               return dbus_message_new_error(
+                       message, WPAS_DBUS_ERROR_IFACE_SCAN_ERROR,
+                       "Abort failed or no scan in progress");
+
+       return NULL;
+}
+
+
 /**
  * wpas_dbus_handler_signal_poll - Request immediate signal properties
  * @message: Pointer to incoming dbus message
index 3b8f0966f246a68568bae04b65528a57217a99fe..1fb8f17e522cd036409fd6f4a8ca8f4e114b4e1b 100644 (file)
@@ -74,6 +74,9 @@ DECLARE_ACCESSOR(wpas_dbus_setter_iface_global);
 DBusMessage * wpas_dbus_handler_scan(DBusMessage *message,
                                     struct wpa_supplicant *wpa_s);
 
+DBusMessage * wpas_dbus_handler_abort_scan(DBusMessage *message,
+                                          struct wpa_supplicant *wpa_s);
+
 DBusMessage * wpas_dbus_handler_signal_poll(DBusMessage *message,
                                            struct wpa_supplicant *wpa_s);