chiark / gitweb /
udevd: make sure a worker finishes event handling before exiting
[elogind.git] / libudev / libudev-private.h
index 21eb626dc1afb281fd20a2589657a4ede0561107..16f9f2e1c192fc0e4ab28a2eefb8981e5c2be9c6 100644 (file)
@@ -16,6 +16,8 @@
 #include "libudev.h"
 
 #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
+#define READ_END                               0
+#define WRITE_END                              1
 
 static inline void __attribute__((always_inline, format(printf, 2, 3)))
 udev_log_null(struct udev *udev, const char *format, ...) {}
@@ -26,8 +28,8 @@ udev_log_null(struct udev *udev, const char *format, ...) {}
       udev_log(udev, LOG_ERR, __FILE__, __LINE__, __FUNCTION__, ## arg); \
   } while (0)
 
-#ifdef USE_LOG
-#  ifdef DEBUG
+#ifdef ENABLE_LOGGING
+#  ifdef ENABLE_DEBUG
 #    define dbg(udev, arg...) udev_log_cond(udev, LOG_DEBUG, ## arg)
 #  else
 #    define dbg(udev, arg...) udev_log_null(udev, ## arg)
@@ -96,7 +98,7 @@ int udev_device_get_watch_handle(struct udev_device *udev_device);
 int udev_device_set_watch_handle(struct udev_device *udev_device, int handle);
 void udev_device_set_info_loaded(struct udev_device *device);
 
-/* libudev-device-db-write.c */
+/* libudev-device-private.c */
 int udev_device_update_db(struct udev_device *udev_device);
 int udev_device_delete_db(struct udev_device *udev_device);
 int udev_device_rename_db(struct udev_device *udev_device, const char *devpath);
@@ -174,7 +176,7 @@ int udev_queue_read_seqnum(FILE *queue_file, unsigned long long int *seqnum);
 ssize_t udev_queue_read_devpath(FILE *queue_file, char *devpath, size_t size);
 ssize_t udev_queue_skip_devpath(FILE *queue_file);
 
-/* libudev-queue-export.c */
+/* libudev-queue-private.c */
 struct udev_queue_export *udev_queue_export_new(struct udev *udev);
 void udev_queue_export_unref(struct udev_queue_export *udev_queue_export);
 void udev_queue_export_cleanup(struct udev_queue_export *udev_queue_export);
@@ -182,7 +184,7 @@ int udev_queue_export_device_queued(struct udev_queue_export *udev_queue_export,
 int udev_queue_export_device_finished(struct udev_queue_export *udev_queue_export, struct udev_device *udev_device);
 int udev_queue_export_device_failed(struct udev_queue_export *udev_queue_export, struct udev_device *udev_device);
 
-/* libudev-utils.c */
+/* libudev-util.c */
 #define UTIL_PATH_SIZE                         1024
 #define UTIL_LINE_SIZE                         2048
 #define UTIL_NAME_SIZE                         512
@@ -203,4 +205,30 @@ int udev_util_replace_chars(char *str, const char *white);
 int udev_util_encode_string(const char *str, char *str_enc, size_t len);
 void util_set_fd_cloexec(int fd);
 unsigned int util_string_hash32(const char *str);
+
+/* libudev-util-private.c */
+int util_create_path(struct udev *udev, const char *path);
+int util_delete_path(struct udev *udev, const char *path);
+int util_unlink_secure(struct udev *udev, const char *filename);
+uid_t util_lookup_user(struct udev *udev, const char *user);
+gid_t util_lookup_group(struct udev *udev, const char *group);
+int util_run_program(struct udev *udev, const char *command, char **envp,
+                    char *result, size_t ressize, size_t *reslen);
+int util_resolve_subsys_kernel(struct udev *udev, const char *string,
+                                     char *result, size_t maxsize, int read_value);
+
+/* libudev-selinux-private.c */
+#ifndef WITH_SELINUX
+static inline void udev_selinux_init(struct udev *udev) {}
+static inline void udev_selinux_exit(struct udev *udev) {}
+static inline void udev_selinux_lsetfilecon(struct udev *udev, const char *file, unsigned int mode) {}
+static inline void udev_selinux_setfscreatecon(struct udev *udev, const char *file, unsigned int mode) {}
+static inline void udev_selinux_resetfscreatecon(struct udev *udev) {}
+#else
+void udev_selinux_init(struct udev *udev);
+void udev_selinux_exit(struct udev *udev);
+void udev_selinux_lsetfilecon(struct udev *udev, const char *file, unsigned int mode);
+void udev_selinux_setfscreatecon(struct udev *udev, const char *file, unsigned int mode);
+void udev_selinux_resetfscreatecon(struct udev *udev);
+#endif
 #endif