X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udevd.h;h=c1f0fd6a1263b55d7bf66b2f71695d70ff2eb06a;hb=aa9a49b4b39bfaa465ae9d0f6ac4621cd519b719;hp=1e9c70289637fd7fea02108ca7e328d6d038fa44;hpb=5005ca5991edb233d3a6bb41ba7d48d5f8a296ab;p=elogind.git diff --git a/udevd.h b/udevd.h index 1e9c70289..c1f0fd6a1 100644 --- a/udevd.h +++ b/udevd.h @@ -21,9 +21,6 @@ #include "list.h" -#define UDEV_MAGIC "udevd_" UDEV_VERSION -#define UDEVD_SOCK_PATH "/org/kernel/udev/udevd" - #define UDEVD_PRIORITY -4 #define UDEV_PRIORITY -2 @@ -32,33 +29,34 @@ #define EVENT_SEQNUM ".udev/uevent_seqnum" /* maximum limit of forked childs */ -#define UDEVD_MAX_CHILDS 64 +#define UDEVD_MAX_CHILDS 256 /* start to throttle forking if maximum number of running childs in our session is reached */ #define UDEVD_MAX_CHILDS_RUNNING 16 -/* environment buffer, should match the kernel's size in lib/kobject_uevent.h */ +/* linux/include/linux/kobject.h */ #define UEVENT_BUFFER_SIZE 2048 -#define UEVENT_NUM_ENVP 64 +#define UEVENT_NUM_ENVP 32 -enum udevd_msg_type { - UDEVD_UNKNOWN, - UDEVD_UEVENT_NETLINK, - UDEVD_STOP_EXEC_QUEUE, - UDEVD_START_EXEC_QUEUE, - UDEVD_SET_LOG_LEVEL, - UDEVD_SET_MAX_CHILDS, - UDEVD_RELOAD_RULES, -}; +#define UDEVD_CTRL_SOCK_PATH "/org/kernel/udev/udevd" +#define UDEVD_CTRL_MAGIC "udevd_" UDEV_VERSION +enum udevd_ctrl_msg_type { + UDEVD_CTRL_UNKNOWN, + UDEVD_CTRL_STOP_EXEC_QUEUE, + UDEVD_CTRL_START_EXEC_QUEUE, + UDEVD_CTRL_SET_LOG_LEVEL, + UDEVD_CTRL_SET_MAX_CHILDS, + UDEVD_CTRL_SET_MAX_CHILDS_RUNNING, + UDEVD_CTRL_RELOAD_RULES, +}; -struct udevd_msg { +struct udevd_ctrl_msg { char magic[32]; - enum udevd_msg_type type; - char envbuf[UEVENT_BUFFER_SIZE+512]; + enum udevd_ctrl_msg_type type; + char buf[256]; }; -struct uevent_msg { - enum udevd_msg_type type; +struct udevd_uevent_msg { struct list_head node; pid_t pid; int exitstatus; @@ -66,6 +64,7 @@ struct uevent_msg { char *action; char *devpath; char *subsystem; + char *driver; dev_t devt; unsigned long long seqnum; char *physdevpath;