P2P: Add P2P Cancel method over D-Bus interface
authorNishant Chaprana <n.chaprana@samsung.com>
Tue, 26 May 2015 05:05:47 +0000 (10:35 +0530)
committerJouni Malinen <j@w1.fi>
Fri, 29 May 2015 18:05:17 +0000 (21:05 +0300)
This patch adds P2P Cancel method over
fi.w1.wpa_supplicant1.Interface.P2PDevice dbus interface.

Signed-off-by: Nishant Chaprana <n.chaprana@samsung.com>
doc/dbus.doxygen
wpa_supplicant/dbus/dbus_new.c
wpa_supplicant/dbus/dbus_new_handlers_p2p.c
wpa_supplicant/dbus/dbus_new_handlers_p2p.h

index 7ad9759..0566f0e 100644 (file)
@@ -1074,6 +1074,11 @@ Interface for performing P2P (Wi-Fi Peer-to-Peer) P2P Device operations.
   </li>
 
   <li>
+    <h3>Cancel ( nothing ) --> nothing</h3>
+    <p>Stop ongoing P2P group formation operation.</p>
+  </li>
+
+  <li>
     <h3>Invite ( a{sv} : args ) --> nothing</h3>
     <p>Invite a peer to join an already operating group or to re-invoke a persistent group.</p>
     <h4>Arguments</h4>
index 85039bc..30c45c2 100644 (file)
@@ -2648,6 +2648,12 @@ static const struct wpa_dbus_method_desc wpas_dbus_interface_methods[] = {
                  END_ARGS
          }
        },
+       { "Cancel", WPAS_DBUS_NEW_IFACE_P2PDEVICE,
+         (WPADBusMethodHandler) wpas_dbus_handler_p2p_cancel,
+         {
+                 END_ARGS
+         }
+       },
        { "Invite", WPAS_DBUS_NEW_IFACE_P2PDEVICE,
          (WPADBusMethodHandler) wpas_dbus_handler_p2p_invite,
          {
index 9419ba8..e3e2378 100644 (file)
@@ -575,6 +575,26 @@ inv_args:
 }
 
 
+/**
+ * wpas_dbus_handler_p2p_cancel - Cancel P2P group formation
+ * @message: Pointer to incoming dbus message
+ * @wpa_s: %wpa_supplicant data structure
+ * Returns: NULL on success or DBus error on failure
+ *
+ * Handler for "Cancel" method call. Returns NULL if P2P cancel succeeds or DBus
+ * error on P2P cancel failure
+ */
+DBusMessage * wpas_dbus_handler_p2p_cancel(DBusMessage *message,
+                                          struct wpa_supplicant *wpa_s)
+{
+       if (wpas_p2p_cancel(wpa_s))
+               return wpas_dbus_error_unknown_error(message,
+                                                    "P2P cancel failed");
+
+       return NULL;
+}
+
+
 DBusMessage * wpas_dbus_handler_p2p_invite(DBusMessage *message,
                                           struct wpa_supplicant *wpa_s)
 {
index fdaccba..fe4b9dc 100644 (file)
@@ -46,6 +46,9 @@ DBusMessage *wpas_dbus_handler_p2p_connect(
                DBusMessage *message,
                struct wpa_supplicant *wpa_s);
 
+DBusMessage * wpas_dbus_handler_p2p_cancel(DBusMessage *message,
+                                          struct wpa_supplicant *wpa_s);
+
 DBusMessage *wpas_dbus_handler_p2p_invite(
                DBusMessage *message,
                struct wpa_supplicant *wpa_s);