X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fudev%2Fudev.h;h=aa2edbef6eaf755f827828a942d02b8316a11d66;hb=a50d7d4389217c0d3b527ee260eabf89e4a76caa;hp=a2c84f6aebe764dbe0baed5deb2af201a80d20a9;hpb=796b06c21b62d13c9021e2fbd9c58a5c6edb2764;p=elogind.git diff --git a/src/udev/udev.h b/src/udev/udev.h index a2c84f6ae..aa2edbef6 100644 --- a/src/udev/udev.h +++ b/src/udev/udev.h @@ -1,6 +1,6 @@ /* * Copyright (C) 2003 Greg Kroah-Hartman - * Copyright (C) 2003-2010 Kay Sievers + * Copyright (C) 2003-2010 Kay Sievers * * 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 @@ -41,15 +41,17 @@ struct udev_event { gid_t gid; struct udev_list run_list; int exec_delay; - unsigned long long birth_usec; - unsigned long long timeout_usec; + usec_t birth_usec; + usec_t timeout_usec; int fd_signal; unsigned int builtin_run; unsigned int builtin_ret; bool sigterm; bool inotify_watch; bool inotify_watch_final; + bool group_set; bool group_final; + bool owner_set; bool owner_final; bool mode_set; bool mode_final; @@ -93,7 +95,7 @@ void udev_watch_end(struct udev *udev, struct udev_device *dev); struct udev_device *udev_watch_lookup(struct udev *udev, int wd); /* udev-node.c */ -void udev_node_add(struct udev_device *dev, mode_t mode, uid_t uid, gid_t gid); +void udev_node_add(struct udev_device *dev, bool apply, mode_t mode, uid_t uid, gid_t gid); void udev_node_remove(struct udev_device *dev); void udev_node_update_old_links(struct udev_device *dev, struct udev_device *dev_old); @@ -134,12 +136,19 @@ int udev_ctrl_get_set_children_max(struct udev_ctrl_msg *ctrl_msg); /* built-in commands */ enum udev_builtin_cmd { +#ifdef HAVE_BLKID UDEV_BUILTIN_BLKID, +#endif UDEV_BUILTIN_BTRFS, +#ifdef ENABLE_FIRMWARE UDEV_BUILTIN_FIRMWARE, +#endif UDEV_BUILTIN_HWDB, UDEV_BUILTIN_INPUT_ID, +#ifdef HAVE_KMOD UDEV_BUILTIN_KMOD, +#endif + UDEV_BUILTIN_NET_ID, UDEV_BUILTIN_PATH_ID, UDEV_BUILTIN_USB_ID, #ifdef HAVE_ACL @@ -156,16 +165,23 @@ struct udev_builtin { bool (*validate)(struct udev *udev); bool run_once; }; +#ifdef HAVE_BLKID extern const struct udev_builtin udev_builtin_blkid; +#endif extern const struct udev_builtin udev_builtin_btrfs; +#ifdef ENABLE_FIRMWARE extern const struct udev_builtin udev_builtin_firmware; +#endif extern const struct udev_builtin udev_builtin_hwdb; extern const struct udev_builtin udev_builtin_input_id; +#ifdef HAVE_KMOD extern const struct udev_builtin udev_builtin_kmod; +#endif +extern const struct udev_builtin udev_builtin_net_id; extern const struct udev_builtin udev_builtin_path_id; extern const struct udev_builtin udev_builtin_usb_id; extern const struct udev_builtin udev_builtin_uaccess; -int udev_builtin_init(struct udev *udev); +void udev_builtin_init(struct udev *udev); void udev_builtin_exit(struct udev *udev); enum udev_builtin_cmd udev_builtin_lookup(const char *command); const char *udev_builtin_name(enum udev_builtin_cmd cmd); @@ -174,6 +190,7 @@ int udev_builtin_run(struct udev_device *dev, enum udev_builtin_cmd cmd, const c void udev_builtin_list(struct udev *udev); bool udev_builtin_validate(struct udev *udev); int udev_builtin_add_property(struct udev_device *dev, bool test, const char *key, const char *val); +int udev_builtin_hwdb_lookup(struct udev_device *dev, const char *modalias, bool test); /* udev logging */ void udev_main_log(struct udev *udev, int priority,