struct udev_rules;
extern struct udev_event *udev_event_new(struct udev_device *dev);
extern void udev_event_unref(struct udev_event *event);
-extern int udev_event_run(struct udev_event *event, struct udev_rules *rules);
+extern int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules);
/* udev-rules.c */
-struct udev_rules {
- struct udev *udev;
- char *buf;
- size_t bufsize;
- int resolve_names;
-};
-extern int udev_rules_init(struct udev *udev, struct udev_rules *rules, int resolve_names);
-extern void udev_rules_cleanup(struct udev_rules *rules);
+extern struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names);
+extern void udev_rules_unref(struct udev_rules *rules);
extern int udev_rules_get_name(struct udev_rules *rules, struct udev_event *event);
extern int udev_rules_get_run(struct udev_rules *rules, struct udev_event *event);
extern int udev_rules_run(struct udev_event *event);
extern int unlink_secure(struct udev *udev, const char *filename);
extern uid_t lookup_user(struct udev *udev, const char *user);
extern gid_t lookup_group(struct udev *udev, const char *group);
+extern int run_program(struct udev *udev, const char *command, char **envp,
+ char *result, size_t ressize, size_t *reslen);
/* udev_utils_file.c */
extern int file_map(const char *filename, char **buf, size_t *bufsize);