summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--acinclude.m411
-rw-r--r--common/Makefile.am15
-rw-r--r--common/notify-dummy.c44
-rw-r--r--common/notify-inotify.c165
-rw-r--r--common/notify.h35
-rw-r--r--configure.in1
-rw-r--r--daemon/adapter.c1
-rw-r--r--daemon/main.c5
-rw-r--r--daemon/service.c22
-rw-r--r--hcid/dbus-service.c55
-rw-r--r--hcid/main.c6
11 files changed, 4 insertions, 356 deletions
diff --git a/acinclude.m4 b/acinclude.m4
index d9af20b78..1721e0e62 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -138,11 +138,6 @@ AC_DEFUN([AC_PATH_USB], [
AC_DEFINE(NEED_USB_INTERRUPT_READ, 1, [Define to 1 if you need the usb_interrupt_read() function.]))
])
-AC_DEFUN([AC_PATH_INOTIFY], [
- AC_CHECK_LIB(c ,inotify_init, inotify_found=yes, inotify_found=no)
- AC_CHECK_HEADERS(sys/inotify.h, dummy=yes, inotify_found=no)
-])
-
AC_DEFUN([AC_PATH_SNDFILE], [
PKG_CHECK_MODULES(SNDFILE, sndfile, sndfile_found=yes, sndfile_found=no)
AC_SUBST(SNDFILE_CFLAGS)
@@ -154,7 +149,6 @@ AC_DEFUN([AC_ARG_BLUEZ], [
debug_enable=no
pie_enable=no
sndfile_enable=${sndfile_found}
- inotify_enable=${inotify_found}
usb_enable=${usb_found}
alsa_enable=${alsa_found}
glib_enable=no
@@ -211,10 +205,6 @@ AC_DEFUN([AC_ARG_BLUEZ], [
dfubabel_enable=${enableval}
])
- AC_ARG_ENABLE(inotify, AC_HELP_STRING([--enable-inotify], [enable inotify support]), [
- inotify_enable=${enableval}
- ])
-
AC_ARG_ENABLE(usb, AC_HELP_STRING([--enable-usb], [enable USB support]), [
usb_enable=${enableval}
])
@@ -343,7 +333,6 @@ AC_DEFUN([AC_ARG_BLUEZ], [
AC_SUBST([SBC_LIBS], ['$(top_builddir)/sbc/libsbc.la'])
AM_CONDITIONAL(SNDFILE, test "${sndfile_enable}" = "yes" && test "${sndfile_found}" = "yes")
- AM_CONDITIONAL(INOTIFY, test "${inotify_enable}" = "yes" && test "${inotify_found}" = "yes")
AM_CONDITIONAL(USB, test "${usb_enable}" = "yes" && test "${usb_found}" = "yes")
AM_CONDITIONAL(SBC, test "${alsa_enable}" = "yes" || test "${gstreamer_enable}" = "yes")
AM_CONDITIONAL(ALSA, test "${alsa_enable}" = "yes" && test "${alsa_found}" = "yes")
diff --git a/common/Makefile.am b/common/Makefile.am
index 7dac6b6a3..a90df3247 100644
--- a/common/Makefile.am
+++ b/common/Makefile.am
@@ -1,16 +1,9 @@
-if INOTIFY
-notify_sources = notify-inotify.c
-else
-notify_sources = notify-dummy.c
-endif
-
noinst_LIBRARIES = libhelper.a
-libhelper_a_SOURCES = oui.h oui.c dbus.h dbus.c \
- textfile.h textfile.c logging.h logging.c \
- dbus-helper.h dbus-helper.c error.h error.c \
- glib-helper.h glib-helper.c notify.h $(notify_sources) \
+libhelper_a_SOURCES = oui.h oui.c textfile.h textfile.c \
+ logging.h logging.c error.h error.c dbus.h dbus.c \
+ dbus-helper.h dbus-helper.c glib-helper.h glib-helper.c \
sdp-xml.h sdp-xml.c sdp-glib.c
noinst_PROGRAMS = test_textfile
@@ -19,6 +12,6 @@ test_textfile_LDADD = libhelper.a
AM_CFLAGS = @DBUS_CFLAGS@ @GLIB_CFLAGS@
-EXTRA_DIST = ppoll.h uinput.h notify-dummy.c notify-inotify.c
+EXTRA_DIST = ppoll.h uinput.h
MAINTAINERCLEANFILES = Makefile.in
diff --git a/common/notify-dummy.c b/common/notify-dummy.c
deleted file mode 100644
index 98fdb6211..000000000
--- a/common/notify-dummy.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- *
- * BlueZ - Bluetooth protocol stack for Linux
- *
- * Copyright (C) 2006-2008 Marcel Holtmann <marcel@holtmann.org>
- *
- *
- * 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include "notify.h"
-
-void notify_init(void)
-{
-}
-
-void notify_close(void)
-{
-}
-
-void notify_add(const char *pathname, notify_func func, void *user_data)
-{
-}
-
-void notify_remove(const char *pathname)
-{
-}
diff --git a/common/notify-inotify.c b/common/notify-inotify.c
deleted file mode 100644
index a8a6b1934..000000000
--- a/common/notify-inotify.c
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- *
- * BlueZ - Bluetooth protocol stack for Linux
- *
- * Copyright (C) 2006-2008 Marcel Holtmann <marcel@holtmann.org>
- *
- *
- * 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <unistd.h>
-#include <stdlib.h>
-#include <string.h>
-#include <sys/inotify.h>
-
-#ifndef IN_ONLYDIR
-#define IN_ONLYDIR 0x01000000
-#endif
-
-#include <glib.h>
-
-#include "logging.h"
-#include "notify.h"
-
-static GIOChannel *io = NULL;
-
-static int fd = -1;
-static int wd = -1;
-
-static char *name = NULL;
-
-static notify_func callback = NULL;
-
-static gboolean io_event(GIOChannel *chan, GIOCondition cond, gpointer data)
-{
- unsigned char buf[129], *ptr = buf;
- gsize len;
- GIOError err;
-
- if (cond & (G_IO_HUP | G_IO_ERR))
- return FALSE;
-
- memset(buf, 0, sizeof(buf));
-
- err = g_io_channel_read(chan, (gchar *) buf, sizeof(buf) - 1, &len);
- if (err != G_IO_ERROR_NONE) {
- if (err == G_IO_ERROR_AGAIN)
- return TRUE;
- error("Reading from inotify channel failed");
- return FALSE;
- }
-
-
- while (len >= sizeof(struct inotify_event)) {
- struct inotify_event *evt = (struct inotify_event *) ptr;
-
- if (evt->wd == wd && callback) {
- if (evt->mask & (IN_CREATE | IN_MOVED_TO))
- callback(NOTIFY_CREATE, evt->name, NULL);
-
- if (evt->mask & (IN_DELETE | IN_MOVED_FROM))
- callback(NOTIFY_DELETE, evt->name, NULL);
-
- if (evt->mask & IN_MODIFY)
- callback(NOTIFY_MODIFY, evt->name, NULL);
- }
-
- len -= sizeof(struct inotify_event) + evt->len;
- ptr += sizeof(struct inotify_event) + evt->len;
- }
-
- return TRUE;
-}
-
-void notify_init(void)
-{
- if (fd != -1)
- return;
-
- fd = inotify_init();
- if (fd < 0) {
- error("Creation of inotify context failed");
- return;
- }
-
- io = g_io_channel_unix_new(fd);
- if (!io) {
- error("Creation of inotify channel failed");
- return;
- }
-
- g_io_add_watch(io, G_IO_IN | G_IO_ERR | G_IO_HUP, io_event, NULL);
-}
-
-void notify_close(void)
-{
- if (fd == -1)
- return;
-
- if (wd != -1) {
- inotify_rm_watch(fd, wd);
- wd = -1;
- }
-
- if (io) {
- g_io_channel_unref(io);
- io = NULL;
- }
-
- close(fd);
- fd = -1;
-
- if (name) {
- free(name);
- name = NULL;
- }
-}
-
-void notify_add(const char *pathname, notify_func func, void *user_data)
-{
- if (fd == -1 || wd != -1)
- return;
-
- if (name)
- free(name);
-
- name = strdup(pathname);
- if (!name)
- return;
-
- wd = inotify_add_watch(fd, pathname,
- IN_ONLYDIR | IN_CREATE | IN_DELETE | IN_MODIFY | IN_MOVE);
- if (wd < 0)
- error("Creation of watch for %s failed", pathname);
-
- callback = func;
-}
-
-void notify_remove(const char *pathname)
-{
- if (fd == -1 || wd == -1)
- return;
-
- inotify_rm_watch(fd, wd);
- wd = -1;
-
- callback = NULL;
-}
diff --git a/common/notify.h b/common/notify.h
deleted file mode 100644
index 50555dc15..000000000
--- a/common/notify.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- *
- * BlueZ - Bluetooth protocol stack for Linux
- *
- * Copyright (C) 2006-2008 Marcel Holtmann <marcel@holtmann.org>
- *
- *
- * 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- */
-
-typedef void (*notify_func)(int action, const char *name, void *user_data);
-
-enum {
- NOTIFY_CREATE,
- NOTIFY_DELETE,
- NOTIFY_MODIFY,
-};
-
-void notify_init(void);
-void notify_close(void);
-void notify_add(const char *pathname, notify_func func, void *user_data);
-void notify_remove(const char *pathname);
diff --git a/configure.in b/configure.in
index d5b5e542d..91a9a9df3 100644
--- a/configure.in
+++ b/configure.in
@@ -31,7 +31,6 @@ AC_PATH_DBUS
AC_PATH_ALSA
AC_PATH_GSTREAMER
AC_PATH_USB
-AC_PATH_INOTIFY
AC_PATH_SNDFILE
AC_ARG_BLUEZ
diff --git a/daemon/adapter.c b/daemon/adapter.c
index 557e20e25..d8e4c9d40 100644
--- a/daemon/adapter.c
+++ b/daemon/adapter.c
@@ -29,7 +29,6 @@
#include "dbus-helper.h"
#include "logging.h"
-#include "notify.h"
#include "system.h"
#include "adapter.h"
diff --git a/daemon/main.c b/daemon/main.c
index eedd4dd8c..94eba19a7 100644
--- a/daemon/main.c
+++ b/daemon/main.c
@@ -40,7 +40,6 @@
#include "dbus-helper.h"
#include "dbus.h"
-#include "notify.h"
#include "logging.h"
#include "sdpd.h"
@@ -205,8 +204,6 @@ int main(int argc, char *argv[])
main_loop = g_main_loop_new(NULL, FALSE);
- notify_init();
-
if (setup_dbus() < 0) {
g_main_loop_unref(main_loop);
exit(1);
@@ -224,8 +221,6 @@ int main(int argc, char *argv[])
cleanup_dbus();
- notify_close();
-
g_main_loop_unref(main_loop);
info("Exit");
diff --git a/daemon/service.c b/daemon/service.c
index 3cb5071ab..27ed2417b 100644
--- a/daemon/service.c
+++ b/daemon/service.c
@@ -35,7 +35,6 @@
#include "dbus-helper.h"
#include "logging.h"
-#include "notify.h"
#include "system.h"
#include "service.h"
@@ -271,31 +270,12 @@ static DBusMethodVTable service_table[] = {
{ }
};
-static void config_notify(int action, const char *name, void *data)
-{
- switch (action) {
- case NOTIFY_CREATE:
- debug("File %s/%s created", CONFIGDIR, name);
- break;
-
- case NOTIFY_DELETE:
- debug("File %s/%s deleted", CONFIGDIR, name);
- break;
-
- case NOTIFY_MODIFY:
- debug("File %s/%s modified", CONFIGDIR, name);
- break;
- }
-}
-
int service_init(DBusConnection *conn)
{
connection = dbus_connection_ref(conn);
info("Starting service framework");
- notify_add(CONFIGDIR, config_notify, NULL);
-
if (dbus_connection_create_object_path(connection,
"/org/bluez/service", NULL, NULL) == FALSE) {
error("Service path registration failed");
@@ -318,8 +298,6 @@ void service_exit(void)
{
info("Stopping service framework");
- notify_remove(CONFIGDIR);
-
dbus_connection_unregister_interface(connection,
"/org/bluez/service", SERVICE_INTERFACE);
diff --git a/hcid/dbus-service.c b/hcid/dbus-service.c
index 15419cd11..01f07b2f2 100644
--- a/hcid/dbus-service.c
+++ b/hcid/dbus-service.c
@@ -48,7 +48,6 @@
#include "dbus.h"
#include "dbus-helper.h"
#include "hcid.h"
-#include "notify.h"
#include "server.h"
#include "dbus-common.h"
#include "dbus-error.h"
@@ -957,58 +956,6 @@ static gint service_filename_cmp(struct service *service, const char *filename)
return strcmp(service->filename, filename);
}
-static void service_notify(int action, const char *name, void *user_data)
-{
- GSList *l;
- struct service *service;
- size_t len;
- char fullpath[PATH_MAX];
-
- debug("Received notify event %d for %s", action, name);
-
- len = strlen(name);
- if (len < (strlen(SERVICE_SUFFIX) + 1))
- return;
-
- if (strcmp(name + (len - strlen(SERVICE_SUFFIX)), SERVICE_SUFFIX))
- return;
-
- switch (action) {
- case NOTIFY_CREATE:
- debug("%s was created", name);
- snprintf(fullpath, sizeof(fullpath) - 1, "%s/%s", CONFIGDIR, name);
- service = create_service(fullpath);
- if (!service) {
- error("Unable to read %s", fullpath);
- break;
- }
-
- if (register_service(service) < 0) {
- error("Unable to register service");
- service_free(service);
- break;
- }
-
- if (service->autostart)
- service_start(service, get_dbus_connection());
-
- break;
- case NOTIFY_DELETE:
- debug("%s was deleted", name);
- l = g_slist_find_custom(services, name,
- (GCompareFunc) service_filename_cmp);
- if (l)
- unregister_service(l->data);
- break;
- case NOTIFY_MODIFY:
- debug("%s was modified", name);
- break;
- default:
- debug("Unknown notify action %d", action);
- break;
- }
-}
-
int init_services(const char *path)
{
DIR *d;
@@ -1052,8 +999,6 @@ int init_services(const char *path)
closedir(d);
- notify_add(path, service_notify, NULL);
-
return 0;
}
diff --git a/hcid/main.c b/hcid/main.c
index 0c9bd7ef1..9980cc4e9 100644
--- a/hcid/main.c
+++ b/hcid/main.c
@@ -48,8 +48,6 @@
#include <dbus/dbus.h>
-#include "notify.h"
-
#include "hcid.h"
#include "sdpd.h"
#include "adapter.h"
@@ -918,8 +916,6 @@ int main(int argc, char *argv[])
start_sdp_server(mtu, hcid.deviceid, SDP_SERVER_COMPAT);
set_service_classes_callback(update_service_classes);
- notify_init();
-
/* Loading plugins has to be done after D-Bus has been setup since
* the plugins might wanna expose some paths on the bus. However the
* best order of how to init various subsystems of the Bluetooth
@@ -941,8 +937,6 @@ int main(int argc, char *argv[])
hcid_dbus_exit();
- notify_close();
-
cleanup_sdp_session();
g_main_loop_unref(event_loop);