initial import
[libicd-wpa] / networks.h
diff --git a/networks.h b/networks.h
new file mode 100644 (file)
index 0000000..c06c41e
--- /dev/null
@@ -0,0 +1,50 @@
+/**
+  @file networks.h
+
+  Copyright (C) 2009 Javier S. Pedro
+
+  @author Javier S. Pedro <javispedro@javispedro.com>
+
+  This file is part of libicd-network-wpa.
+
+  This program is free software; you can redistribute it and/or modify it
+  under the terms of the GNU General Public License as published by the
+  Free Software Foundation; either version 2 of the License, or (at your
+  option) any later version.
+
+  This program is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  General Public License for more details.
+
+  You should have received a copy of the GNU General Public License along
+  with this program; if not, write to the Free Software Foundation, Inc.,
+  59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+*/
+
+#ifndef _NETWORKS_H_
+#define _NETWORKS_H_
+
+int networks_initialize();
+void networks_free();
+
+// NULL, NULL, 0 if search ended
+typedef void (*networks_search_found) 
+       (int status, const char * id,
+       const char * ssid, const char * ap, int dB, gpointer user_data);
+
+void networks_search_start(networks_search_found found_cb, gpointer user_data);
+void networks_search_stop();
+
+typedef void (*networks_connect_result)
+       (int status, const char * error, gpointer user_data);
+void networks_connect(const char * id,
+       networks_connect_result result_cb, gpointer user_data);
+void networks_disconnect(const char * id);
+
+typedef void (*networks_status_result)
+       (int status, const char * data, int rssi, gpointer user_data);
+void networks_status(networks_status_result result_cb, gpointer user_data);
+
+#endif