From 3c9ab768ec2a9f67ea21289bc6cb71ea753d167b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Tue, 6 Apr 2021 17:56:08 +0200 Subject: [PATCH] launcher: Remove now unused file management API The open/close helpers for (maybe) restricted files has been replaced with MetaDevicePool, so lets remove that functionality from here. Part-of: --- src/backends/native/meta-launcher.c | 62 ---------------------------- src/backends/native/meta-seat-impl.c | 29 ------------- src/backends/native/meta-seat-impl.h | 20 --------- 3 files changed, 111 deletions(-) diff --git a/src/backends/native/meta-launcher.c b/src/backends/native/meta-launcher.c index 251fa3eb2..013e71cf3 100644 --- a/src/backends/native/meta-launcher.c +++ b/src/backends/native/meta-launcher.c @@ -51,9 +51,6 @@ struct _MetaLauncher MetaDbusLogin1Seat *seat_proxy; char *seat_id; - struct { - GHashTable *sysfs_fds; - } impl; gboolean session_active; }; @@ -393,58 +390,6 @@ out: close (fd); } -static int -on_evdev_device_open_in_input_impl (const char *path, - int flags, - gpointer user_data, - GError **error) -{ - MetaLauncher *self = user_data; - - /* Allow readonly access to sysfs */ - if (g_str_has_prefix (path, "/sys/")) - { - int fd; - - do - { - fd = open (path, flags); - } - while (fd < 0 && errno == EINTR); - - if (fd < 0) - { - g_set_error (error, - G_FILE_ERROR, - g_file_error_from_errno (errno), - "Could not open /sys file: %s: %m", path); - return -1; - } - - g_hash_table_add (self->impl.sysfs_fds, GINT_TO_POINTER (fd)); - return fd; - } - - return meta_launcher_open_restricted (self, path, error); -} - -static void -on_evdev_device_close_in_input_impl (int fd, - gpointer user_data) -{ - MetaLauncher *self = user_data; - - if (g_hash_table_lookup (self->impl.sysfs_fds, GINT_TO_POINTER (fd))) - { - /* /sys/ paths just need close() here */ - g_hash_table_remove (self->impl.sysfs_fds, GINT_TO_POINTER (fd)); - close (fd); - return; - } - - meta_launcher_close_restricted (self, fd); -} - static void sync_active (MetaLauncher *self) { @@ -545,13 +490,8 @@ meta_launcher_new (GError **error) self->session_proxy = g_object_ref (session_proxy); self->seat_proxy = g_object_ref (seat_proxy); self->seat_id = g_steal_pointer (&seat_id); - self->impl.sysfs_fds = g_hash_table_new (NULL, NULL); self->session_active = TRUE; - meta_seat_impl_set_device_callbacks (on_evdev_device_open_in_input_impl, - on_evdev_device_close_in_input_impl, - self); - g_signal_connect (self->session_proxy, "notify::active", G_CALLBACK (on_active_changed), self); return self; @@ -568,11 +508,9 @@ meta_launcher_new (GError **error) void meta_launcher_free (MetaLauncher *self) { - meta_seat_impl_set_device_callbacks (NULL, NULL, NULL); g_free (self->seat_id); g_object_unref (self->seat_proxy); g_object_unref (self->session_proxy); - g_hash_table_destroy (self->impl.sysfs_fds); g_free (self); } diff --git a/src/backends/native/meta-seat-impl.c b/src/backends/native/meta-seat-impl.c index 4d1e7c2eb..3a8fb847f 100644 --- a/src/backends/native/meta-seat-impl.c +++ b/src/backends/native/meta-seat-impl.c @@ -75,10 +75,6 @@ struct _MetaEventSource GPollFD event_poll_fd; }; -static MetaOpenDeviceCallback device_open_callback; -static MetaCloseDeviceCallback device_close_callback; -static gpointer device_callback_data; - #ifdef CLUTTER_ENABLE_DEBUG static const char *device_type_str[] = { "pointer", /* CLUTTER_POINTER_DEVICE */ @@ -3166,31 +3162,6 @@ meta_seat_impl_init (MetaSeatImpl *seat_impl) seat_impl->barrier_manager = meta_barrier_manager_native_new (); } -/** - * meta_seat_impl_set_device_callbacks: (skip) - * @open_callback: the user replacement for open() - * @close_callback: the user replacement for close() - * @user_data: user data for @callback - * - * Through this function, the application can set a custom callback - * to be invoked when Clutter is about to open an evdev device. It can do - * so if special handling is needed, for example to circumvent permission - * problems. - * - * Setting @callback to %NULL will reset the default behavior. - * - * For reliable effects, this function must be called before clutter_init(). - */ -void -meta_seat_impl_set_device_callbacks (MetaOpenDeviceCallback open_callback, - MetaCloseDeviceCallback close_callback, - gpointer user_data) -{ - device_open_callback = open_callback; - device_close_callback = close_callback; - device_callback_data = user_data; -} - void meta_seat_impl_update_xkb_state_in_impl (MetaSeatImpl *seat_impl) { diff --git a/src/backends/native/meta-seat-impl.h b/src/backends/native/meta-seat-impl.h index eed122f6c..d3e2ab860 100644 --- a/src/backends/native/meta-seat-impl.h +++ b/src/backends/native/meta-seat-impl.h @@ -199,26 +199,6 @@ void meta_seat_impl_release_touch_state_in_impl (MetaSeatImpl *seat_impl, void meta_seat_impl_update_xkb_state_in_impl (MetaSeatImpl *seat_impl); -/** - * MetaOpenDeviceCallback: - * @path: the device path - * @flags: flags to be passed to open - * - * This callback will be called when Clutter needs to access an input - * device. It should return an open file descriptor for the file at @path, - * or -1 if opening failed. - */ -typedef int (* MetaOpenDeviceCallback) (const char *path, - int flags, - gpointer user_data, - GError **error); -typedef void (* MetaCloseDeviceCallback) (int fd, - gpointer user_data); - -void meta_seat_impl_set_device_callbacks (MetaOpenDeviceCallback open_callback, - MetaCloseDeviceCallback close_callback, - gpointer user_data); - void meta_seat_impl_release_devices (MetaSeatImpl *seat_impl); void meta_seat_impl_reclaim_devices (MetaSeatImpl *seat_impl);