X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev%2Flib%2Flibudev-private.h;h=5290bc80185c99862f83d21d121ae41b09b6fe9b;hb=aa8734ffcb8a895fc8d66ff383cbcf8f4b78f562;hp=1ba022031035d6545b50584e193cccd4cf75dcc8;hpb=8cd2e972e537a351f0948e7762d2d2e51ad358ef;p=elogind.git diff --git a/udev/lib/libudev-private.h b/udev/lib/libudev-private.h index 1ba022031..5290bc801 100644 --- a/udev/lib/libudev-private.h +++ b/udev/lib/libudev-private.h @@ -23,6 +23,8 @@ #include #include "libudev.h" +#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) + static inline void __attribute__ ((format(printf, 2, 3))) udev_log_null(struct udev *udev, const char *format, ...) {} @@ -48,14 +50,20 @@ void udev_log(struct udev *udev, extern struct udev_device *device_new(struct udev *udev); extern const char *udev_get_rules_path(struct udev *udev); extern int udev_get_run(struct udev *udev); +extern struct udev_list_entry *udev_add_property(struct udev *udev, const char *key, const char *value); +extern struct udev_list_entry *udev_get_properties_list_entry(struct udev *udev); /* libudev-device */ extern int udev_device_set_syspath(struct udev_device *udev_device, const char *syspath); extern int udev_device_set_subsystem(struct udev_device *udev_device, const char *subsystem); extern int udev_device_set_devnode(struct udev_device *udev_device, const char *devnode); extern int udev_device_add_devlink(struct udev_device *udev_device, const char *devlink); -extern int udev_device_add_property(struct udev_device *udev_device, const char *key, const char *value); -extern int udev_device_add_property_from_string(struct udev_device *udev_device, const char *property); +extern void udev_device_cleanup_devlinks_list(struct udev_device *udev_device); +extern struct udev_list_entry *udev_device_add_property(struct udev_device *udev_device, const char *key, const char *value); +extern struct udev_list_entry *udev_device_add_property_from_string(struct udev_device *udev_device, const char *property); +extern char **udev_device_get_properties_envp(struct udev_device *udev_device); +extern int udev_device_read_db(struct udev_device *udev_device); +extern int udev_device_read_uevent_file(struct udev_device *udev_device); extern int udev_device_set_action(struct udev_device *udev_device, const char *action); extern int udev_device_set_driver(struct udev_device *udev_device, const char *driver); extern const char *udev_device_get_devpath_old(struct udev_device *udev_device); @@ -76,6 +84,9 @@ extern int udev_device_get_ignore_remove(struct udev_device *udev_device); extern int udev_device_set_ignore_remove(struct udev_device *udev_device, int ignore); extern void udev_device_set_info_loaded(struct udev_device *device); +/* libudev-monitor - netlink/unix socket communication */ +extern int udev_monitor_send_device(struct udev_monitor *udev_monitor, struct udev_device *udev_device); + /* libudev-ctrl - daemon runtime setup */ struct udev_ctrl; extern struct udev_ctrl *udev_ctrl_new_from_socket(struct udev *udev, const char *socket_path); @@ -114,6 +125,8 @@ extern struct udev_list_entry *udev_list_entry_add(struct udev *udev, struct ude extern void udev_list_entry_remove(struct udev_list_entry *entry); extern struct udev_list_entry *udev_list_get_entry(struct udev_list_node *list); extern void udev_list_entry_move_to_end(struct udev_list_entry *list_entry); +extern int udev_list_entry_get_flag(struct udev_list_entry *list_entry); +extern void udev_list_entry_set_flag(struct udev_list_entry *list_entry, int flag); #define list_entry_foreach_safe(entry, tmp, first) \ for (entry = first, \ tmp = udev_list_entry_get_next(entry); \