summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2009-01-03 15:01:35 +0100
committerMarcel Holtmann <marcel@holtmann.org>2009-01-03 15:01:35 +0100
commit8d21832bcf8cef0708c9d19a771d679140135ea5 (patch)
treeb2658a2db3b12a449bd2def3ad3c0c020045a8e7
parent3a6bc9d1470e1196923e95d0095e38a4b710e078 (diff)
downloadconnman-8d21832bcf8cef0708c9d19a771d679140135ea5.tar.gz
connman-8d21832bcf8cef0708c9d19a771d679140135ea5.tar.bz2
connman-8d21832bcf8cef0708c9d19a771d679140135ea5.zip
Add skeleton for future WiMAX plugin
-rwxr-xr-xbootstrap-configure1
-rw-r--r--configure.ac4
-rw-r--r--plugins/Makefile.am6
-rw-r--r--plugins/wimax.c77
4 files changed, 88 insertions, 0 deletions
diff --git a/bootstrap-configure b/bootstrap-configure
index 164c535a..340d80b4 100755
--- a/bootstrap-configure
+++ b/bootstrap-configure
@@ -19,6 +19,7 @@ fi
--enable-loopback \
--enable-ethernet \
--enable-wifi \
+ --enable-wimax \
--enable-bluetooth \
--enable-udhcp \
--enable-dhclient \
diff --git a/configure.ac b/configure.ac
index f9f9a8a5..393bee61 100644
--- a/configure.ac
+++ b/configure.ac
@@ -60,6 +60,10 @@ if (test "${enable_wifi}" = "yes"); then
fi
AM_CONDITIONAL(WIFI, test "${enable_wifi}" = "yes")
+AC_ARG_ENABLE(wimax, AC_HELP_STRING([--enable-wimax],
+ [enable WiMAX support]), [enable_wimax=${enableval}])
+AM_CONDITIONAL(WIMAX, test "${enable_wimax}" = "yes")
+
AC_ARG_ENABLE(bluetooth, AC_HELP_STRING([--enable-bluetooth],
[enable Bluetooth support]), [enable_bluetooth=${enableval}])
AM_CONDITIONAL(BLUETOOTH, test "${enable_bluetooth}" = "yes")
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index 9b013ad2..71ae0cf9 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -22,6 +22,12 @@ wifi_la_SOURCES = wifi.c inet.h inet.c supplicant.h supplicant.c
wifi_la_LIBADD = @GDBUS_LIBS@
endif
+if WIMAX
+plugin_LTLIBRARIES += wimax.la
+
+wimax_la_SOURCES = wimax.c
+endif
+
if BLUETOOTH
plugin_LTLIBRARIES += bluetooth.la
diff --git a/plugins/wimax.c b/plugins/wimax.c
new file mode 100644
index 00000000..e008dc92
--- /dev/null
+++ b/plugins/wimax.c
@@ -0,0 +1,77 @@
+/*
+ *
+ * Connection Manager
+ *
+ * Copyright (C) 2007-2009 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
+ * published by the Free Software Foundation.
+ *
+ * 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#define CONNMAN_API_SUBJECT_TO_CHANGE
+#include <connman/plugin.h>
+#include <connman/device.h>
+#include <connman/log.h>
+
+static int wimax_probe(struct connman_device *device)
+{
+ DBG("device %p", device);
+
+ return 0;
+}
+
+static void wimax_remove(struct connman_device *device)
+{
+ DBG("device %p", device);
+}
+
+static int wimax_enable(struct connman_device *device)
+{
+ DBG("device %p", device);
+
+ return 0;
+}
+
+static int wimax_disable(struct connman_device *device)
+{
+ DBG("device %p", device);
+
+ return 0;
+}
+
+static struct connman_device_driver wimax_driver = {
+ .name = "wimax",
+ .type = CONNMAN_DEVICE_TYPE_WIMAX,
+ .probe = wimax_probe,
+ .remove = wimax_remove,
+ .enable = wimax_enable,
+ .disable = wimax_disable,
+};
+
+static int wimax_init(void)
+{
+ return connman_device_driver_register(&wimax_driver);
+}
+
+static void wimax_exit(void)
+{
+ connman_device_driver_unregister(&wimax_driver);
+}
+
+CONNMAN_PLUGIN_DEFINE(wimax, "WiMAX interface plugin", VERSION,
+ wimax_init, wimax_exit)