From a5db4630ecf3efbd26b64956326f25676457078f Mon Sep 17 00:00:00 2001 From: Tim Kourt Date: Tue, 18 Apr 2017 15:18:59 -0700 Subject: [PATCH] client: Introduce network interface --- Makefile.am | 3 ++- client/network.c | 59 ++++++++++++++++++++++++++++++++++++++++++++++++ client/network.h | 24 ++++++++++++++++++++ 3 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 client/network.c create mode 100644 client/network.h diff --git a/Makefile.am b/Makefile.am index cce5b619..73443e5c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -90,7 +90,8 @@ client_iwctl_SOURCES = client/main.c \ client/command.h client/command.c \ client/dbus-proxy.h client/dbus-proxy.c \ client/device.h client/device.c \ - client/display.h client/display.c + client/display.h client/display.c \ + client/network.h client/network.c client_iwctl_LDADD = ell/libell-internal.la -lreadline monitor_iwmon_SOURCES = monitor/main.c linux/nl80211.h \ diff --git a/client/network.c b/client/network.c new file mode 100644 index 00000000..5cd973b3 --- /dev/null +++ b/client/network.c @@ -0,0 +1,59 @@ +/* + * + * Wireless daemon for Linux + * + * Copyright (C) 2017 Intel Corporation. All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + */ + +#ifdef HAVE_CONFIG_H +#include +#endif + +#include + +#include "dbus-proxy.h" +#include "display.h" +#include "network.h" + +bool network_is_connected(const char *path) +{ + return false; +} + +void network_connect(const char *path) +{ +} + +static struct proxy_interface_type network_interface_type = { + .interface = IWD_NETWORK_INTERFACE, +}; + +static int network_interface_init(void) +{ + proxy_interface_type_register(&network_interface_type); + + return 0; +} + +static void network_interface_exit(void) +{ + proxy_interface_type_register(&network_interface_type); +} + +INTERFACE_TYPE(device_interface_type, network_interface_init, + network_interface_exit) diff --git a/client/network.h b/client/network.h new file mode 100644 index 00000000..5265059d --- /dev/null +++ b/client/network.h @@ -0,0 +1,24 @@ +/* + * + * Wireless daemon for Linux + * + * Copyright (C) 2017 Intel Corporation. All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + */ + +bool network_is_connected(const char *path); +void network_connect(const char *path);