Lines Matching defs:event
639 static int import_program_into_properties(struct udev_event *event,
643 struct udev_device *dev = event->dev;
650 err = udev_event_spawn(event, timeout_usec, timeout_warn_usec, program, envp, sigmask, result, sizeof(result));
1843 static int match_attr(struct udev_rules *rules, struct udev_device *dev, struct udev_event *event, struct token *cur) {
1853 udev_event_apply_format(event, name, nbuf, sizeof(nbuf), false);
1862 if (util_resolve_subsys_kernel(event->udev, name, vbuf, sizeof(vbuf), 1) != 0)
1898 struct udev_event *event,
1911 can_set_name = ((!streq(udev_device_get_action(event->dev), "remove")) &&
1912 (major(udev_device_get_devnum(event->dev)) > 0 ||
1913 udev_device_get_ifindex(event->dev) > 0));
1930 if (match_key(rules, cur, udev_device_get_action(event->dev)) != 0)
1934 if (match_key(rules, cur, udev_device_get_devpath(event->dev)) != 0)
1938 if (match_key(rules, cur, udev_device_get_sysname(event->dev)) != 0)
1945 udev_list_entry_foreach(list_entry, udev_device_get_devlinks_list_entry(event->dev)) {
1959 if (match_key(rules, cur, event->name) != 0)
1966 value = udev_device_get_property_value(event->dev, key_name);
1988 udev_list_entry_foreach(list_entry, udev_device_get_tags_list_entry(event->dev)) {
1999 if (match_key(rules, cur, udev_device_get_subsystem(event->dev)) != 0)
2003 if (match_key(rules, cur, udev_device_get_driver(event->dev)) != 0)
2010 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), filename, sizeof(filename), false);
2011 found = (wait_for_file(event->dev, filename, 10) == 0);
2017 if (match_attr(rules, event->dev, event, cur) != 0)
2025 udev_event_apply_format(event, rules_str(rules, cur->key.attr_off), filename, sizeof(filename), false);
2050 event->dev_parent = event->dev;
2059 if (match_key(rules, key, udev_device_get_sysname(event->dev_parent)) != 0)
2063 if (match_key(rules, key, udev_device_get_subsystem(event->dev_parent)) != 0)
2067 if (match_key(rules, key, udev_device_get_driver(event->dev_parent)) != 0)
2071 if (match_attr(rules, event->dev_parent, event, key) != 0)
2075 bool match = udev_device_has_tag(event->dev_parent, rules_str(rules, cur->key.value_off));
2090 event->dev_parent = udev_device_get_parent(event->dev_parent);
2091 if (event->dev_parent == NULL)
2103 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), filename, sizeof(filename), false);
2104 if (util_resolve_subsys_kernel(event->udev, filename, filename, sizeof(filename), 0) != 0) {
2110 udev_device_get_syspath(event->dev), "/", tmp, NULL);
2129 free(event->program_result);
2130 event->program_result = NULL;
2131 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), program, sizeof(program), false);
2132 envp = udev_device_get_properties_envp(event->dev);
2138 if (udev_event_spawn(event, timeout_usec, timeout_warn_usec, program, envp, sigmask, result, sizeof(result)) < 0) {
2150 event->program_result = strdup(result);
2159 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), import, sizeof(import), false);
2160 if (import_file_into_properties(event->dev, import) != 0)
2168 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), import, sizeof(import), false);
2174 if (import_program_into_properties(event, timeout_usec, timeout_warn_usec, import, sigmask) != 0)
2184 if (event->builtin_run & (1 << cur->key.builtin_cmd)) {
2190 if (event->builtin_ret & (1 << cur->key.builtin_cmd))
2196 event->builtin_run |= (1 << cur->key.builtin_cmd);
2199 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), command, sizeof(command), false);
2205 if (udev_builtin_run(event->dev, cur->key.builtin_cmd, command, false) != 0) {
2209 event->builtin_ret |= (1 << cur->key.builtin_cmd);
2219 value = udev_device_get_property_value(event->dev_db, key);
2221 udev_device_add_property(event->dev, key, value);
2245 udev_device_add_property(event->dev, key, "1");
2255 udev_device_add_property(event->dev, key, value);
2269 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), import, sizeof(import), false);
2270 if (import_parent_into_properties(event->dev, import) != 0)
2276 if (match_key(rules, cur, event->program_result) != 0)
2286 udev_device_set_db_persist(event->dev);
2289 if (event->inotify_watch_final)
2292 event->inotify_watch_final = true;
2293 event->inotify_watch = cur->key.watch;
2296 udev_device_set_devlink_priority(event->dev, cur->key.devlink_prio);
2303 if (event->owner_final)
2306 event->owner_final = true;
2307 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), owner, sizeof(owner), false);
2308 event->owner_set = true;
2309 r = get_user_creds(&ow, &event->uid, NULL, NULL, NULL);
2316 event->uid = 0;
2319 event->uid,
2329 if (event->group_final)
2332 event->group_final = true;
2333 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), group, sizeof(group), false);
2334 event->group_set = true;
2335 r = get_group_creds(&gr, &event->gid);
2342 event->gid = 0;
2345 event->gid,
2355 if (event->mode_final)
2357 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), mode_str, sizeof(mode_str), false);
2364 event->mode_final = true;
2365 event->mode_set = true;
2366 event->mode = mode;
2368 event->mode,
2374 if (event->owner_final)
2377 event->owner_final = true;
2378 event->owner_set = true;
2379 event->uid = cur->key.uid;
2381 event->uid,
2386 if (event->group_final)
2389 event->group_final = true;
2390 event->group_set = true;
2391 event->gid = cur->key.gid;
2393 event->gid,
2398 if (event->mode_final)
2401 event->mode_final = true;
2402 event->mode_set = true;
2403 event->mode = cur->key.mode;
2405 event->mode,
2415 udev_list_cleanup(&event->seclabel_list);
2416 udev_list_entry_add(&event->seclabel_list, name, label);
2432 udev_device_add_property(event->dev, name, NULL);
2437 value_old = udev_device_get_property_value(event->dev, name);
2442 udev_event_apply_format(event, value, temp, sizeof(temp), false);
2445 udev_event_apply_format(event, value, value_new, sizeof(value_new), false);
2447 udev_device_add_property(event->dev, name, value_new);
2454 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), tag, sizeof(tag), false);
2456 udev_device_cleanup_tags_list(event->dev);
2467 udev_device_remove_tag(event->dev, tag);
2469 udev_device_add_tag(event->dev, tag);
2478 if (event->name_final)
2481 event->name_final = true;
2482 udev_event_apply_format(event, name, name_str, sizeof(name_str), false);
2488 if (major(udev_device_get_devnum(event->dev)) &&
2489 (!streq(name_str, udev_device_get_devnode(event->dev) + strlen("/dev/")))) {
2495 free(event->name);
2496 event->name = strdup(name_str);
2498 event->name,
2509 if (event->devlink_final)
2511 if (major(udev_device_get_devnum(event->dev)) == 0)
2514 event->devlink_final = true;
2516 udev_device_cleanup_devlinks_list(event->dev);
2519 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), temp, sizeof(temp), esc != ESCAPE_NONE);
2535 udev_device_add_devlink(event->dev, filename);
2545 udev_device_add_devlink(event->dev, filename);
2555 if (util_resolve_subsys_kernel(event->udev, key_name, attr, sizeof(attr), 0) != 0)
2556 strscpyl(attr, sizeof(attr), udev_device_get_syspath(event->dev), "/", key_name, NULL);
2559 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), value, sizeof(value), false);
2578 udev_event_apply_format(event, rules_str(rules, cur->key.attr_off), filename, sizeof(filename), false);
2580 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), value, sizeof(value), false);
2593 udev_list_cleanup(&event->run_list);
2598 entry = udev_list_entry_add(&event->run_list, rules_str(rules, cur->key.value_off), NULL);