X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev.h;h=5ecef4abbda3ae17778b0ac9f3f077e934555c6c;hb=282988c4f8a85c28468e6442e86efe51dc71cc93;hp=c056835f39b3a78e8fab182488ffa2ce856b2964;hpb=fb819f5554530dd136d50aa40438e9dbeeceac01;p=elogind.git diff --git a/udev.h b/udev.h index c056835f3..5ecef4abb 100644 --- a/udev.h +++ b/udev.h @@ -39,7 +39,7 @@ #define ALLOWED_CHARS_INPUT ALLOWED_CHARS_FILE " $%?," #define DEFAULT_PARTITIONS_COUNT 15 -#define UDEV_ALARM_TIMEOUT 180 +#define UDEV_EVENT_TIMEOUT 180 #define UDEV_MAX(a,b) ((a) > (b) ? (a) : (b)) @@ -47,8 +47,12 @@ #define READ_END 0 #define WRITE_END 1 +#define UDEV_ROOT "/dev" #define DB_DIR ".udev/db" #define DB_NAME_INDEX_DIR ".udev/names" +#define RULES_LIB_DIR "/lib/udev/rules.d" +#define RULES_DYN_DIR ".udev/rules.d" +#define RULES_ETC_DIR "/etc/udev/rules.d" struct udev_rules; @@ -68,6 +72,7 @@ struct udevice { struct sysfs_device dev_local; struct sysfs_device *dev_parent; /* current parent device used for matching */ char action[NAME_SIZE]; + char *devpath_old; /* node */ char name[PATH_SIZE]; @@ -91,6 +96,7 @@ struct udevice { int ignore_remove; char program_result[PATH_SIZE]; int link_priority; + int event_timeout; int test_run; }; @@ -130,6 +136,7 @@ extern int udev_node_remove(struct udevice *udev); /* udev_db.c */ extern int udev_db_add_device(struct udevice *dev); extern int udev_db_delete_device(struct udevice *dev); +extern int udev_db_rename(const char *devpath_old, const char *devpath); extern int udev_db_get_device(struct udevice *udev, const char *devpath); extern int udev_db_get_devices_by_name(const char *name, struct list_head *name_list); extern int udev_db_get_all_entries(struct list_head *name_list); @@ -166,9 +173,12 @@ extern void file_unmap(void *buf, size_t bufsize); extern int unlink_secure(const char *filename); extern size_t buf_get_line(const char *buf, size_t buflen, size_t cur); -/* udev_utils_run.c */ -extern int pass_env_to_socket(const char *name, const char *devpath, const char *action); -extern int run_program(const char *command, const char *subsystem, - char *result, size_t ressize, size_t *reslen); +/* udev commands */ +extern int udevmonitor(int argc, char *argv[], char *envp[]); +extern int udevinfo(int argc, char *argv[], char *envp[]); +extern int udevcontrol(int argc, char *argv[], char *envp[]); +extern int udevtrigger(int argc, char *argv[], char *envp[]); +extern int udevsettle(int argc, char *argv[], char *envp[]); +extern int udevtest(int argc, char *argv[], char *envp[]); #endif