Include fake plugin for testing
[connman] / plugins / supplicant.h
index 9e5ebc6..9b4f6eb 100644 (file)
@@ -2,7 +2,7 @@
  *
  *  Connection Manager
  *
- *  Copyright (C) 2007  Intel Corporation. All rights reserved.
+ *  Copyright (C) 2007-2008  Intel Corporation. All rights reserved.
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License version 2 as
  *
  */
 
-#include <connman/iface.h>
+#include <connman/element.h>
 
-int __supplicant_start(struct connman_iface *iface);
-int __supplicant_stop(struct connman_iface *iface);
+#define SUPPLICANT_NAME  "fi.epitest.hostap.WPASupplicant"
+#define SUPPLICANT_INTF  "fi.epitest.hostap.WPASupplicant"
+#define SUPPLICANT_PATH  "/fi/epitest/hostap/WPASupplicant"
 
-int __supplicant_connect(struct connman_iface *iface,
-                               const char *network, const char *passphrase);
+enum supplicant_state {
+       STATE_INACTIVE,
+       STATE_SCANNING,
+       STATE_ASSOCIATING,
+       STATE_ASSOCIATED,
+       STATE_4WAY_HANDSHAKE,
+       STATE_GROUP_HANDSHAKE,
+       STATE_COMPLETED,
+       STATE_DISCONNECTED,
+};
+
+struct supplicant_network {
+       gchar *identifier;
+       GByteArray *ssid;
+       guint capabilities;
+       gboolean has_wep;
+       gboolean has_wpa;
+       gboolean has_rsn;
+};
+
+struct supplicant_callback {
+       void (*state_change) (struct connman_element *element,
+                                               enum supplicant_state state);
+       void (*scan_result) (struct connman_element *element,
+                                       struct supplicant_network *network);
+};
+
+int __supplicant_start(struct connman_element *element,
+                                       struct supplicant_callback *callback);
+int __supplicant_stop(struct connman_element *element);
+
+int __supplicant_scan(struct connman_element *element);
+
+int __supplicant_connect(struct connman_element *element, const char *ssid);
+int __supplicant_disconnect(struct connman_element *element);