X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev.h;h=46c961c2d55b9507fba001a3b87bb8ea2cbd64bb;hb=8f2f874ae8d5bfdc1eda9b1f9d77f6637f6940a5;hp=54269dfd31162437d38fbc44b3645c4c2c910f48;hpb=c81b35c08bbd7789883993ea280e0d3772cce440;p=elogind.git diff --git a/udev.h b/udev.h index 54269dfd3..46c961c2d 100644 --- a/udev.h +++ b/udev.h @@ -28,16 +28,22 @@ #define COMMENT_CHARACTER '#' -#define NAME_SIZE 100 +#define NAME_SIZE 256 #define OWNER_SIZE 30 #define GROUP_SIZE 30 #define MODE_SIZE 8 -#define ACTION_SIZE 30 -#define DEVPATH_SIZE 255 -#define SUBSYSTEM_SIZE 30 +#define ACTION_SIZE 32 +#define DEVPATH_SIZE 256 +#define SUBSYSTEM_SIZE 32 +#define SEQNUM_SIZE 32 -/* length of public data */ +#define LINE_SIZE 256 + +#define FAKE 1 +#define NOFAKE 0 + +/* length of public data to store in udevdb */ #define UDEVICE_LEN (offsetof(struct udevice, bus_id)) struct udevice { @@ -50,6 +56,9 @@ struct udevice { unsigned int mode; /* not mode_t due to conflicting definitions in different libcs */ char symlink[NAME_SIZE]; int partitions; + int config_line; + char config_file[NAME_SIZE]; + long config_uptime; /* private data that help us in building strings */ char bus_id[SYSFS_NAME_LEN]; @@ -58,10 +67,13 @@ struct udevice { char kernel_name[NAME_SIZE]; }; -extern int udev_add_device(char *path, char *subsystem, int fake); -extern int udev_remove_device(char *path, char *subsystem); +extern int udev_add_device(const char *path, const char *subsystem, int fake); +extern int udev_remove_device(const char *path, const char *subsystem); extern void udev_init_config(void); +extern int udev_start(void); extern int parse_get_pair(char **orig_string, char **left, char **right); +extern void dev_d_send(struct udevice *dev, const char *subsystem, + const char *devpath); extern char **main_argv; extern char **main_envp; @@ -76,5 +88,6 @@ extern char default_owner_str[OWNER_SIZE]; extern char default_group_str[GROUP_SIZE]; extern int udev_log; extern int udev_sleep; +extern int udev_dev_d; #endif