*
* 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>
#define SUPPLICANT_NAME "fi.epitest.hostap.WPASupplicant"
#define SUPPLICANT_INTF "fi.epitest.hostap.WPASupplicant"
#define SUPPLICANT_PATH "/fi/epitest/hostap/WPASupplicant"
-int __supplicant_start(struct connman_iface *iface);
-int __supplicant_stop(struct connman_iface *iface);
+enum supplicant_state {
+ STATE_INACTIVE,
+ STATE_SCANNING,
+ STATE_ASSOCIATING,
+ STATE_ASSOCIATED,
+ STATE_4WAY_HANDSHAKE,
+ STATE_GROUP_HANDSHAKE,
+ STATE_COMPLETED,
+ STATE_DISCONNECTED,
+};
-int __supplicant_scan(struct connman_iface *iface);
+struct supplicant_network {
+ gchar *identifier;
+ GByteArray *ssid;
+ guint capabilities;
+ gboolean has_wep;
+ gboolean has_wpa;
+ gboolean has_rsn;
+};
-int __supplicant_connect(struct connman_iface *iface,
- const char *network, const char *passphrase);
-int __supplicant_disconnect(struct connman_iface *iface);
+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_init(void);
+void __supplicant_exit(void);
+
+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);